Inspiration

I wanted to build a strategy game inspired to a game i played when i was little, i chaged the mechanics ia a way to make both players commit at the same time, then watch their plans collide at the same time. This project was a way to test what i could do with AI code agents workflow, using codex to create a small game while i was away from keyboard, controlling it with my phone with remote desktop. I entered Build Week as a solo developer while working a full-time job. I already had an earlier playable battle prototype built with claude design, but not a complete product. Codex with GPT-5.6 gave me the engineering leverage to turn that prototype into a tested Android and React game within the week.

What it does

Clash of Beams uses seven lanes and a shared cube queue. Players spend moves to place, move, delete, or call in cells. Matching cells create shields and three tiers of attack formations; color advantages, simultaneous beams, clashes, bonus power, and core damage decide the match. The submitted build includes: Ten replayable mechanics drills using the real battle presentation. Offline Practice with ten gradually stronger AI levels. Name-only, installation-bound device accounts. Private two-player Series with codes, presets, and custom settings. Real automatic Ranked matchmaking with Standard, Endurance, and Fast rating pools. Reconnect, background/resume, forfeit, authoritative results, and rating settlement. Procedural menu and battle audio, haptics, and responsive phone-first presentation.

How we built it

I built the application with React, TypeScript, Vite, Capacitor, Convex, Better Auth, Web Audio, Vitest, and Playwright. Practice stays local. Online play uses Convex as the authoritative match server, scheduler, presence system, matchmaking service, and result store. Better Auth supplies random installation-bound anonymous sessions; the chosen player name is public identity, not a password. Codex with GPT-5.6 was my primary engineering collaborator. I used it to plan bounded implementation phases, preserve the prototype-authoritative battle, design typed client/server contracts, implement private and Ranked flows, diagnose a live reconnect incident from server evidence, construct deterministic and browser tests, and optimize complete matches below explicit Convex I/O and execution budgets. I made the product decisions, tested each phone candidate, rejected incorrect behavior, and directed every correction. Claude Code was also used and is disclosed as an additional development tool, including the procedural-audio handoff.

Challenges we ran into

The hardest problem was making Online feel like the approved offline Battle without running legacy prototype JavaScript on the server. The client needed viewer-relative boards, exact semantic event ordering, synchronized beams, deterministic resolution, and recovery after lost responses or a backgrounded device. The second major challenge was cost. Early complete matches used far too much database I/O. The final transport uses compact authoritative state, sequenced per-viewer deltas, batched planning, stable presence, bounded receipts, and terminal compaction without changing gameplay cadence or hiding opponent-visible actions.

Accomplishments that we're proud of

Shipped a coherent four-mode Android game rather than a technical mock-up. Reproduced the same battle identity across offline, Tutorial, Private, and Ranked paths. Fixed a real phase-seven host reconnect failure and added regression coverage. Passed 710 unit/integration tests and 48 numerical browser/accessibility checks. Reconciled five complete live matches against provider billing data. Kept the worst measured match below 2,000,000 database bytes and 160 executions. Preserved exact APK source, signature, hash, API, CSP, and packaged-asset provenance

What we learned

AI-assisted development works best when the human keeps product authority and the agent works against explicit invariants. The most useful Codex sessions did not simply generate code: they separated evidence from assumptions, reproduced failures, protected already-approved behavior, and converted vague performance goals into measurable gates.

What's next for Clash of Beams

Making the game better and optimize backend before publishing it

Built With

Share this project:

Updates