feat: make pantry crises visible in the world

This commit is contained in:
Rijad Zuzo
2026-07-14 23:54:22 +02:00
parent c722e32a88
commit c23f6887c8
21 changed files with 800 additions and 73 deletions
+6 -3
View File
@@ -18,9 +18,10 @@ SimulationClock
-> EventKnowledgeSystem records, ranks, transfers, and retains bounded knowledge
-> RelationshipSystem applies evidence-gated social consequences
-> FoodShortageOpportunitySystem projects one known unresolved need
-> WorldViewManager presents travel and NPC state
-> WorldViewManager presents travel, NPC state, and world-state cues
-> ActiveWorldAdapter supplies loaded-world positions/capacity
-> NpcVisual performs local navigation, animation, and transient reactions
-> PantryStockVisual derives physical stock arrangement from storage state
```
`SimulationManager` is the scene-tree façade for the simulation. It owns the
@@ -89,8 +90,10 @@ improving ownership.
opportunity, or reservation state.
- Inspector history is a read-only façade query over objective events and
retained knowledge. Opportunity presentation is likewise query-only.
Relationship cues consume state-change signals and are intentionally absent
from saves and checksums.
Relationship cues, interested-villager concern, physical pantry stock, and
refill feedback consume authoritative state or state-change signals and are
intentionally absent from saves and checksums. Stable visuals are rebuilt
from state after restore; transient reactions are not replayed.
- Resource changes go through `ResourceStateRecord`, NPC inventory, and
`VillageEconomy`; `village.food` and `village.wood` are synchronized views.
- New mutable features define serialization and deterministic continuation at