Eras, and the palimpsest
Every placed voxel stores the year and era it was placed in. Colour the city by that and six centuries are legible at once; cut the ground open and the old town is under the new one.
Every placed voxel carries the year and the era it was laid in. That is what makes the rest of the game possible: the era lens (press M in the viewer) paints each built voxel by its century and greys the untouched ground, and a cut through the city shows the medieval stone under the modern shop’s bottom course.
Advancement is earned from the city’s own numbers, never bought. Each era has gates, population, treasury, literacy, built voxels and a minimum stay, and what an age asks for eases off once the calendar is past the year that age nominally begins in, so a thriving city arrives early and a plodding one late rather than never. An era widens the material vocabulary (daub and thatch, then stone and tile, brick and glass, iron and slate, steel and concrete, curtain wall) and raises the storey ceiling; whether anything worth having gets built out of that is the crafts’ problem.
The city is written over, never erased. There is no bulldoze. Buildings are abandoned, burn or collapse, and what is left is rubble and footings. New buildings are founded on whatever is already there because it is cheaper than quarrying, so the modern city inherits the medieval city’s geometry whether it wants to or not: property lines follow the old lanes, the ring road follows the wall, and the cathedral’s undercroft has four-hundred-year-old piers in it.
The six eras, their gates and their palettes are in the rules reference; the eras tool runs a city across a gate with the city tab open.
In the code: crates/sim/src/era.rs crates/sim/src/voxel.rs crates/sim/src/palette.rs · playground: section