Riftbreach
Orcs Must Die by way of an incremental: lay traps down the approach lanes, then stand in them with a crossbow and fight alongside your own killbox. Waves are endless and enemy health compounds, so every run ends; what carries forward is essence, banked the moment a wave clears, and rift shards from collapsing the whole thing to start again harder. The interesting part sits behind the numbers. Four curves govern the game, enemy health, gold income, trap damage and trap cost, and they are not independent: keeping pace with health needs a trap level that cost more gold than the game was paying out, so the first version was not merely mistuned but mathematically unwinnable, flat on wave four forever, with a prestige gate roughly 475,000 runs away. It shipped once a harness that drives the real game loop with the rendering switched off could play ten sessions in a row and show them climbing.
TypeScript · Three.js · simulated economy · no art or audio assets
saves in your browser · essence banks the moment a wave clears · play full screen ↗
How to play
- wasd or the left thumbstick moves; the mouse or the right thumbstick aims
- auto-aim and auto-fire are on by default so a phone plays one-handed; turn them off in settings to aim every shot yourself
- pick a trap from the tray, then click a tile (or tap Place) to build; right-click or tap a placed trap to upgrade or sell it
- floor traps do nothing to wraiths: they fly over your walls straight for the rift, which is what arrow walls, flame vents, frost sigils and coils are for
- the build phase lists what the next wave is made of, so anti-air can be bought before it arrives rather than after
- space dashes through a crowd with a moment of invulnerability; 1-7 pick traps; enter starts the next wave early for bonus gold
- q/e or right-drag orbits the camera, scroll or pinch zooms, r recentres; movement stays camera-relative so orbiting never inverts your controls
- essence is spent between runs but applies immediately, so buying rift integrity mid-wave really does raise the pool you are defending
Changelog
- 2026-08-06·First build. Everything is generated at runtime: enemies are merged primitives, the arena is instanced boxes lit by a custom shader, and every sound is synthesised by WebAudio, so the game ships with no art or audio files at all. The economy went through a harness before it went to a player, which turned out to matter. The original curves were structurally broken rather than simply mistuned: tracking enemy health needed trap levels costing 1.236^wave against gold growing at 1.085^wave, a gap compounding to twelve times short by wave twenty, and the meta upgrades priced their sixtieth level past all the essence the game could ever produce. Ten simulated sessions all died on wave four with trap level stuck at one; after retuning, the same ten climb to wave twenty-three and first prestige lands around session eleven. Wraiths were then caught dealing double breach damage while immune to every trap a new player owns, and the wall-mounted arrow traps meant to counter them had both their left and right faces aiming into the wall instead of out of it.