docs: mark resource node phase 4 complete

This commit is contained in:
2026-07-04 19:48:15 +02:00
parent 326df51cbe
commit 0900022558
2 changed files with 36 additions and 21 deletions
+13 -5
View File
@@ -208,8 +208,9 @@ plugin content, not game architecture.
- WASD movement is camera-relative.
- The elevated third-person camera rotates with the mouse and uses smoothed
follow/focus behavior.
- Pressing `E` near a task zone directly contributes food, wood, safety, or
knowledge, or consumes village food.
- Pressing `E` near a berry bush or tree extracts its configured yield into the
village through the same `ResourceNode` contract used by NPCs.
- Guard, study, and food interactions still use their temporary task zones.
- `Escape` releases captured mouse input.
### Village simulation
@@ -300,9 +301,12 @@ primitive geometry and a few tree assets.
**Migration status:** NPC `gather_food` and `gather_wood` no longer use the
farm and forest zones. They target `ResourceNode` instances (berry bushes and
trees) instead. The zone markers remain for:
- Player interaction (pressing E near farm/forest zones adds resources)
- Non-resource NPC tasks (patrol → guard_zone, study → study_zone, rest → rest_zone, eat → food_zone)
The player also harvests food and wood directly from nearby `ResourceNode`
instances. Extraction returns the actual amount removed, updates the village by
that amount, and releases an NPC reservation if the source is depleted.
Storage, rest, study, and guard behavior should later migrate to target types
that match their actual semantics rather than treating every usable object as a
resource source.
@@ -437,6 +441,8 @@ NpcVisual navigates through the active world
│ ├── SimNPC.gd
│ ├── SimVillage.gd
│ └── SimulationManager.gd
├── tests/
│ └── resource_node_player_parity_test.gd
├── world/
│ ├── resource_nodes/
│ │ ├── ResourceNode.gd
@@ -453,11 +459,13 @@ NpcVisual navigates through the active world
These are expected prototype constraints, not necessarily isolated bugs:
- Task names and task-to-zone mappings are duplicated strings.
- Task zones remain for non-resource tasks and player interaction; gather food/wood NPCs use ResourceNode instances instead.
- Task zones remain for non-resource activities; NPC and player food/wood
gathering use `ResourceNode` instances.
- Mutable simulation state is not serializable through a defined save schema.
- Randomness is not seeded for deterministic replay.
- Simulation time depends on `_process` and a scene-tree node.
- There is no automated test or headless simulation harness.
- Automated coverage currently contains one headless player-parity and
resource-contention scenario; broader simulation coverage is still missing.
- Resources are global floating-point counters rather than items in locations
and inventories.
- NPCs do not have homes, schedules, possessions, memories, relationships,