September 12, 2026 at 12:00:00 AM UTC
Liminalia city difficulty events
liminaliagodotcsharpgame
liminalia
3dd77f4 — difficulty transitions are now observable.
what changed
CityDifficultyChangedEvent(Core/Events/CityDifficultyChangedEvent.cs): raised at the end of each simulation tick whenSimulationWorld.CityDifficultychanges. Carries previous difficulty, new difficulty, and population.CityEventLogrecords difficulty changes asCityEventKind.DifficultyChangedentries.CityEventKind.DifficultyChangedadded to the event kind enum.SimulationWorld._previousDifficultynow nullable — no spurious event on the first tick (baseline is established silently).
difficulty milestones
| Population | Difficulty | Phase |
|---|---|---|
| ≤30 | 1.0 | Founding |
| ≤60 | 1.5 | Growth |
| ≤100 | 2.0 | Maturation |
| >100 | 3.0 | Flourishing |
Difficulty multiplies crime pressure, illness onset, and fire ignition. The big city is harder to maintain.
tests
358 passing. 9 ProgressionTests cover difficulty matching population, scaling, affecting crime pressure, stability when population stable, event raising on milestone crossing, event logging, event type, treasury changes, and citizen aging.
all entries