A neon voxel FPS where you're trapped in the pit, surviving endless waves of an alien horde across rotating jungle, cave, and hive arenas while bosses crash in every five waves and your only way out is to outgun them all.
AI Tools Used:

Claude Code (Opus 4.8)
Code + Game Design + Voxel Artwork
SWARM is a first-person, wave-survival shooter that runs entirely in the browser with **no build step, no installer, and no asset files** — everything (3D models, levels, sound effects, and music) is generated procedurally in code.
You drop into an alien pit, fight escalating waves across three rotating environments, beat bosses to unlock new weapons, and chase a high score until you're overrun.
Prove that the skill that ships a game isn't typing code it's creative direction applied to a machine.
Constraints: instantly playable from a link, intentional rather than a tech demo, and honestly shippable.
Menu, pause, high score, death screen, music. Everything lives in one self-contained HTML file.
Vibe-coding a real-time 3D game lives or dies on feedback loops.
The wins came from knowing what "good" felt like tighter movement, fairer telegraphs, more readable threats, and being able to articulate it.
The bottleneck was never syntax. It was judgment, art direction, and play testing this game over the course of 8 hours
Every system (the first-person controller, the swarm AI, the boss fights, the procedural worlds) came from describing what I wanted, playing the result, and steering the next pass.
My job was taste and decisions; Claude Code did the typing.
How It Was Built
EVERYTHING IS PROCEDURAL
Not a single image, model, or sound file in the project. Models are colored boxes assembled in code, levels are generated, sound effects are synthesized from oscillators, and the soundtrack is sequenced live. One style low-poly voxel made the "no assets" rule possible and unified the whole look for free.
THREE WORLDS, ONE PIT
The level tears down and rebuilds every five waves — jungle pit → crystal cave → alien hivemind — over one shared platform layout, so the gameplay stays consistent while the world transforms.
THE HARDEST BUG
At high waves the game hitched, but only when too many enemies died at once.
The cause was subtle: every pickup spawned a point light, and in Three.js adding a light forces a recompile of every material's shader, so a multi-kill triggered a storm of recompiles.
The fix made lighting static, emissive pickups and a fixed pool of lights recolored per area. Zero runtime recompiles. Found by profiling the symptom instead of guessing.
Enemies
Weapons
Final Assets
• Built with: Claude Code
• 0 lines of code written by hand
• 4 enemy archetypes + 3 bosses · 4 weapons · 3 worlds
• ~96 KB single HTML file · 0 asset files
• Three.js / WebGL · Web Audio API






