Rome Rise & Fall — fictional Volterra Empire 600 years across 12 emperors and 8 dynasties
A 3D EPOCH demo: 600 sim-years of the fictional Volterra Empire — founding huts → walls → forum → palace → coliseum → aqueduct → triumphal arch → THE CITY ENDURES — 12 emperors across 8 dynasties (House Volaen → House Aelryn), 60 instanced citizens with era-tinted clothing palette, marble polish lerps tan → white over 400 years.
Built with:
three.js r0.160 (single file)14 building groups rising incrementally + rubble decay overlaylocalStorage empire memory across reseeds
Prompt
Build a single-file HTML page that recreates "rise and fall of a fictional Roman-like empire" as a continuous 3D autoplay world. The empire is named VOLTERRA — completely fictional, NO real-world historical figures, NO real-world historical events. Cozy + Civilization VI ambient + History Channel reverence vibe.
Hard constraints:
- One HTML file, < 200KB.
- three.js r0.160.0 from unpkg, IIFE, strict mode, full disposable cleanup, reseed every ~10 min advancing into next empire (VOLTERRA → AURELIUM → KASTRA → MERIDIAN → OBSIDIA → SOLARIN → THENARA → ZENNIRA).
- First body line: <!-- ROUND16_EPOCH v1 -->
- localStorage memory under key `volterra_empire_memory_v1` — saves 8 named dynasty members (name/role/reign-years/state). On reseed empire chain advances, lineage extends.
- Generational aging — at least 5 emperors visibly age across the loop. Banner auto-recolors to current dynasty.
- Visible structural change — 14 building groups rise incrementally over 600 years: founding huts, walls, forum/senate, insula, palace, coliseum, aqueduct, port + ships, military camp, marketplace, fountain, triumphal arch, library, temple. Rubble overlay decays from year 580 onwards.
- Marble polish material lerps tan → white over years 1-400.
- Era stamps via 8 ERAS: FOUNDING → REPUBLIC → CONQUEST → IMPERIUM → ZENITH → DECADENCE → SCHISM → THE CITY ENDURES.
- Generation HUD: "EMPEROR N OF 12 · YEAR Y OF 600 · HOUSE [name]".
- 5+ sub-locations: Forum, Senate, Palace, Coliseum, Aqueduct, Port, Military Camp, Marketplace.
- Mini-map HUD with growing city outline + pulsing camera hotspot.
- 100+ named: 12 fictional emperors + 18 featured cast + 60 InstancedMesh citizens + name pool for chyron.
- 20+ director cameras: HILLTOP WIDE, IMPERIAL PROCESSION, FORUM ORATION, COLISEUM ARENA, PORT BUSTLE, AQUEDUCT MARCH, etc.
- Cross-system chyron: "Year 287 — Emperor Velven IV crowned in the forum. Across the harbor, the new fleet is christened."
- Sun arc + sky/fog color shift per sim-year.
- Procedural cypress + olive groves grow with the city.
Tone: reverent, cozy, hopeful. NO real-world historical figures (no Caesar, no Augustus, no Marcus Aurelius). NO real-world historical events. The empire is purely fictional. No graphic violence; conflict is gentle ("legions march" not "legions slaughter").
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- How to compress a 600-year empire arc into a 10-min loop with 14 building groups gated on year-progress and rubble decay overlay starting at year 580
- How to use localStorage to chain 8 fictional empires across reseeds (VOLTERRA → AURELIUM → … → ZENNIRA) so reseeds discover a new empire rather than restart
- How to lerp a marble polish material from tan to white over 400 years to communicate the rise of imperial wealth without expensive shaders