Repterra Web — full game: base building, power grid, taming & breeding, aquatic raiders, day/night, save/load
- 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
This commit is contained in:
+102
@@ -0,0 +1,102 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>REPTERRA WEB — Survive the Herds</title>
|
||||
<link rel="stylesheet" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<canvas id="game"></canvas>
|
||||
|
||||
<!-- ============ HUD ============ -->
|
||||
<div id="hud">
|
||||
|
||||
<div id="topbar">
|
||||
<div class="chip" id="res-gold"><span class="i">💰</span><span class="v">0</span><span class="r">+0/s</span></div>
|
||||
<div class="chip" id="res-wood"><span class="i">🪵</span><span class="v">0</span><span class="r">+0/s</span></div>
|
||||
<div class="chip" id="res-stone"><span class="i">🪨</span><span class="v">0</span><span class="r">+0/s</span></div>
|
||||
<div class="chip" id="res-food"><span class="i">🍖</span><span class="v">0</span><span class="r">+0/s</span></div>
|
||||
<div class="chip" id="res-energy"><span class="i">⚡</span><span class="v">0/0</span></div>
|
||||
<div class="chip" id="res-pop"><span class="i">👥</span><span class="v">0/0</span></div>
|
||||
<div class="spacer"></div>
|
||||
<div id="daylabel">Day 1</div>
|
||||
<div id="wavelabel"></div>
|
||||
<div id="topbtns"></div>
|
||||
</div>
|
||||
|
||||
<div id="wavebanner"><span id="wavebanner-text"></span></div>
|
||||
|
||||
<div id="selpanel" style="display:none"></div>
|
||||
|
||||
<div id="palette"></div>
|
||||
|
||||
<div id="mmwrap">
|
||||
<canvas id="minimap" width="176" height="176"></canvas>
|
||||
<div class="mmlabel">MAP</div>
|
||||
</div>
|
||||
|
||||
<div id="toasts"></div>
|
||||
<div id="tooltip" style="display:none"></div>
|
||||
</div>
|
||||
|
||||
<!-- ============ MAIN MENU ============ -->
|
||||
<div id="menu" class="overlay">
|
||||
<div class="card wide menucard">
|
||||
<h1 class="title">REP<span class="red">T</span>ERRA</h1>
|
||||
<p class="subtitle">— WEB SURVIVAL RTS — build the colony · wall it in · survive the herds · beware the sky —</p>
|
||||
<p class="fanline">A fan-made browser demake inspired by <a href="https://store.steampowered.com/app/2768380/Repterra/" target="_blank" rel="noopener">Repterra</a> (Chute Apps / MicroProse).</p>
|
||||
|
||||
<div class="diffrow">
|
||||
<button class="bigbtn diffbtn" data-diff="easy">
|
||||
<b>🌿 SCOUT</b><small>Smaller herds · longer runway<br>For learning the ropes</small>
|
||||
</button>
|
||||
<button class="bigbtn diffbtn recommended" data-diff="normal">
|
||||
<b>🏔️ SETTLER</b><small>The intended experience<br>15 days to the final wave</small>
|
||||
</button>
|
||||
<button class="bigbtn diffbtn" data-diff="hard">
|
||||
<b>☠ WARLORD</b><small>Relentless swarms · early pressure<br>You will not sleep</small>
|
||||
</button>
|
||||
</div>
|
||||
<button class="bigbtn" id="continueBtn" style="display:none;margin-top:10px">▶ Continue saved colony</button>
|
||||
|
||||
<button class="bigbtn subtle" id="btn-how">📖 How To Play</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ============ END SCREEN ============ -->
|
||||
<div id="endscreen" class="overlay" style="display:none">
|
||||
<div class="card wide">
|
||||
<h1 class="good">COLONY SAVED!</h1>
|
||||
<div class="stats"></div>
|
||||
<p class="flavor"></p>
|
||||
<div class="rowcenter">
|
||||
<button class="bigbtn" data-restart>🔁 Play Again</button>
|
||||
<button class="bigbtn subtle backtomenu">Main Menu</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ============ PAUSE ============ -->
|
||||
<div id="pauseoverlay" class="overlay" style="display:none">
|
||||
<div class="pausetxt">⏸ PAUSED<small>press SPACE to resume</small></div>
|
||||
<div class="pauserow">
|
||||
<button class="bigbtn" id="savebtn">💾 Save</button>
|
||||
<button class="bigbtn" id="loadbtn">📂 Load</button>
|
||||
<button class="bigbtn subtle backtomenu">Main Menu</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="js/config.js"></script>
|
||||
<script src="js/utils.js"></script>
|
||||
<script src="js/audio.js"></script>
|
||||
<script src="js/world.js"></script>
|
||||
<script src="js/entities.js"></script>
|
||||
<script src="js/sim.js"></script>
|
||||
<script src="js/render.js"></script>
|
||||
<script src="js/ui.js"></script>
|
||||
<script src="js/input.js"></script>
|
||||
<script src="js/main.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user