The Boomer Shooter — 1993 Doom in a Browser Tab
Sprite demons charging down corridors. A double-barrel shotgun bobbing at the bottom. Bloodier face portrait when you take damage. Synthwave-MIDI loop. Find three keycards. Reach the exit.
What this is
A full Doom-clone in a single HTML file. WASD + mouse, double-barrel shotgun and chaingun, three sprite enemy types (imp / demon / skull) with procedurally-drawn 4-frame walk cycles, three colored keycards, locked doors, ammo and health pickups, an exit. Full Doom status bar with the face portrait that bloodies as your health drops. Synthwave-MIDI loop in A-minor at 140 BPM via Web Audio.
Why this is mind-blowing
This is the engine that made id Software in 1993, in a browser tab, in 2119 lines of JavaScript, from one paragraph of prompt. Procedural level generation, sprite billboards, heat-up chaingun, blood face — all of it. Boot it and you're playing Doom.
Doom-style FPS in three.js with sprite-billboard enemies (4-frame walk
cycle), procedural maze with locked doors + keycards, hand-drawn weapon
sprites with recoil bob, synthwave-MIDI music via Web Audio. Imps throw
fireballs, demons charge, skulls float. Doom-style HUD with face portrait
that bloodies as health drops. Win by collecting all 3 keys and reaching
the exit door.
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- Linear filtering OFF + procedural canvas-drawn sprites + 4-frame walk cycles = the entire 1993 aesthetic. Pixel-perfect crispness is the look.
- Doom-style face portrait that visibly degrades through damage thresholds (75/50/25/0 HP) is one of those touches that separates 'shooter' from 'BOOMER shooter.'
- 20×20 grid carve-rooms-then-corridor level gen with pinch-point door placement gives you Doom levels in 50 lines. The model knows the recipe.