feat: add missing wood opportunities
This commit is contained in:
@@ -45,15 +45,20 @@ unknown profession or executable action.
|
||||
|
||||
## Opportunity vocabulary
|
||||
|
||||
`SimulationIds` also defines the first proven opportunity type,
|
||||
`restock_empty_pantry`, and its `open`/`resolved` statuses. These are stable
|
||||
serialized vocabulary, not editor-authored quest definitions. Dynamic trigger,
|
||||
interested NPC, pantry/food goal, progress, and exact resolution-event identity
|
||||
belong to `OpportunityStateRecord` and the focused opportunity system.
|
||||
`SimulationIds` defines the two proven opportunity types,
|
||||
`restock_empty_pantry` and `supply_missing_wood`, plus the stable `open`,
|
||||
`resolved`, and `invalidated` statuses. Invalidation reasons currently
|
||||
distinguish `interested_died` from `evidence_stale`. These are serialized
|
||||
vocabulary, not editor-authored quest definitions. Dynamic trigger, interested
|
||||
NPC, storage/resource goal, progress, exact resolution-event identity, and
|
||||
close reason belong to `OpportunityStateRecord` and
|
||||
`VillageOpportunitySystem`.
|
||||
|
||||
Do not extract a generic quest-definition registry until another real
|
||||
unresolved-condition consumer proves which lifecycle fields and rules are
|
||||
actually shared.
|
||||
The shared record and lifecycle collaborator were extracted only after the
|
||||
food and wood consumers proved those fields. Their evidence, care, resolution,
|
||||
and invalidation rules remain explicit branches. Do not add a generic quest-
|
||||
definition registry until real acceptance, assignment, reward, or dialogue
|
||||
consumers establish a second shared contract.
|
||||
|
||||
## Validation
|
||||
|
||||
|
||||
Reference in New Issue
Block a user