- Isometric canvas RTS vs dinosaur waves (fan demake of Repterra) - Economy: houses/taxes, farms, foresters, quarries; colonist staffing - Power grid: generators extend build range; brownout + recovery - Defense: walls/gates, watchtowers (AA), cannon towers (ground-only) - Taming: Primal Pen + Tamers collar weakened dinos; pets obey commands - Breeding: tamed pairs incubate eggs at the pen; hatchlings grow up - 7 dino species incl. flying Pteranodons and lake-raiding Suchomimus - Telegraphed waves with direction arrows; day-15 final horde; 3 difficulties - Day/night cycle, fog of war, minimap, synth audio, 1x-3x speeds - Save/Load/Continue + dawn autosave (full JSON state snapshots) - Tests: 80-assertion headless suite, browser boot + E2E, balance harness
4.3 KiB
REPRTERRA WEB 🦖
A fan-made browser demake of Repterra (Chute Apps / MicroProse) — the base-building survival RTS best described as "They Are Billions, but the horde can fly."
Everything is hand-drawn on canvas at runtime — no image assets, no build step, no dependencies. Plain JS + HTML + CSS.
Play
npm start # serves http://127.0.0.1:8933
…or just open index.html directly in a browser (works from file:// too).
The loop
- Grow — Houses raise population cap and pay taxes; colonists arrive at your Command Center and staff Farms, Forester Huts and Quarries.
- Expand — Generators produce energy and extend your power grid; you can only build touching your grid. Overload it and newest buildings go dark.
- Fortify — Walls and Gates block ground dinos. Towers shred them.
- Survive — telegraphed waves attack every couple of days (a warning arrow shows where they'll hit). Roaming packs prowl the map — kill them before day 15, because…
- ☠ THE FINAL WAVE — every surviving dino on the map charges your Command Center. Lose the HQ and the colony falls.
⚠ The sky is NOT safe
Pteranodons fly over walls, straight for your soft economy buildings. Cannon towers can't shoot up — keep Watchtowers and Rangers covering the air.
⚠ Neither is the water
From day 8 (normal), Suchomimus raids emerge from the lakes — a fully walled base with no waterfront watch is still on the menu.
🦴 Turn the horde into your army
Build a Primal Pen, train a Tamer, weaken any dino below 32% HP and the Tamer slips a capture collar on it. Tamed dinos fight for the colony — right-click to give them a new guard post or order an attack. The Pen heals your pets and each Pen adds +2 tame slots. (A T-Rex is too powerful to tame.)
🥚 Breed them
Park 2+ tamed dinos beside a powered Pen and they'll incubate eggs (60 food each, max 2 per Pen). Hatchlings start small and grow into full-size fighting adults — a self-sufficient dino economy.
💾 Your colony persists
Save from the pause menu, autosave at every dawn, and hit ▶ Continue saved colony on the main menu. Saves are plain JSON snapshots of the whole simulation — world depletion included.
Dinosaur roster
| Dino | Threat |
|---|---|
| Compsognathus | fast swarm fodder |
| Velociraptor | quick flanker |
| Dilophosaurus | ranged spitter |
| Triceratops | wall-crusher (×2.5 building dmg) |
| Pteranodon | ☠ flying, ignores walls |
| Suchomimus | 🌊 amphibious — raids from lakes |
| Tyrannosaurus Rex | boss, smashes anything, untameable |
Plus roaming packs of all of the above from minute one. Day turns to night over the colony (powered buildings glow warm after dark).
Controls
| Input | Action |
|---|---|
| WASD / arrows / screen edge | pan camera |
| Mouse wheel | zoom to cursor |
| Middle-drag | grab-and-drag pan |
| Left click | select / place |
| Left drag | box-select Rangers |
| Right click | move order · focus-fire a dino · rally point (barracks/pen selected) · pet move/attack (tamed dino selected) · capture priority (tamer selected) |
1–9 |
build hotkeys |
| Shift-click | multi-build · hold to keep placing walls |
Space / P |
pause |
F |
jump to HQ |
Del |
demolish selected building (+50% refund) |
M |
mute |
+ / - / 0 |
game speed 1×/2×/3× |
Tech notes
- ~5k lines of dependency-free vanilla JS (
js/*.js, plain script tags). - Isometric canvas renderer with depth sorting, fog of war, particles, animated procedural sprites (every dino/building drawn in code).
- Sim core is DOM-free → fully headless-testable:
npm test— smoke suite (~70 assertions: placement rules, economy, pathfinding, waves, power-grid chains, taming & pet combat, breeding, save/load fidelity, victory & defeat paths).npm run balance— scripted auto-player runs full games at every difficulty and reports survival curves (relative difficulty signal).node test/browser.js/test/e2e.js— real-Chromium boot + interaction tests, including a save → reload → continue lifecycle (needsnpx playwright-core install chromium-headless-shell).
Fan project for personal enjoyment; not affiliated with Chute Apps or MicroProse.