docs: mark jajce runtime integration complete
This commit is contained in:
@@ -253,7 +253,7 @@ This becomes both a regression reference and excellent before/after material.
|
|||||||
There is a reproducible baseline showing the existing flat prototype and its
|
There is a reproducible baseline showing the existing flat prototype and its
|
||||||
working behaviors.
|
working behaviors.
|
||||||
|
|
||||||
`tests/flat_map_baseline_test.gd` and
|
`tests/jajce_runtime_integration_test.gd` and
|
||||||
`docs/baselines/FLAT_MAP_BASELINE.md` establish the executable behavior
|
`docs/baselines/FLAT_MAP_BASELINE.md` establish the executable behavior
|
||||||
baseline. A visual before-clip and frame-time capture remain useful content work
|
baseline. A visual before-clip and frame-time capture remain useful content work
|
||||||
but do not block the architecture gate.
|
but do not block the architecture gate.
|
||||||
@@ -423,6 +423,14 @@ Once the world composition is stable:
|
|||||||
|
|
||||||
Do not move simulation ownership into `JajceWorld` to make wiring convenient.
|
Do not move simulation ownership into `JajceWorld` to make wiring convenient.
|
||||||
|
|
||||||
|
**Status: runtime integration complete.** `main.tscn` now instances the reusable
|
||||||
|
world and points player/simulation adapters at its stable-ID resources and
|
||||||
|
remaining activity markers. The duplicate flat world objects were removed.
|
||||||
|
The runtime regression checks Terrain3D presence, 24 navigation routes, core
|
||||||
|
task execution, starvation/death, player extraction parity, reservations, and
|
||||||
|
NPC visual lifecycle. Terrain sculpting and presentation polish remain
|
||||||
|
separate work, not blockers for this wiring milestone.
|
||||||
|
|
||||||
### Exit condition
|
### Exit condition
|
||||||
|
|
||||||
The current three NPCs and player can perform all existing prototype behaviors
|
The current three NPCs and player can perform all existing prototype behaviors
|
||||||
@@ -593,17 +601,16 @@ Completed:
|
|||||||
3. `JajceWorld`, dedicated 512 m Terrain3D seed, and lookdev camera.
|
3. `JajceWorld`, dedicated 512 m Terrain3D seed, and lookdev camera.
|
||||||
4. Initial landmark greybox, stable-ID resources, activity markers, and
|
4. Initial landmark greybox, stable-ID resources, activity markers, and
|
||||||
navigation spike.
|
navigation spike.
|
||||||
|
5. Architecture gate, food transactions/events, and validated quicksave.
|
||||||
|
6. `JajceWorld` runtime integration with bindings and regression coverage.
|
||||||
|
|
||||||
Next:
|
Next:
|
||||||
|
|
||||||
1. Pass the mandatory architecture gate before beauty production.
|
1. Sculpt the Terrain3D ridge, river valley, terraces, and waterfall drop.
|
||||||
2. Sculpt the Terrain3D ridge, river valley, terraces, and waterfall drop.
|
2. Establish terrain materials, lighting, water, mist, and foliage.
|
||||||
3. Establish terrain materials, lighting, water, mist, and foliage.
|
3. Capture “Jajce Lookdev 01.”
|
||||||
4. Capture “Jajce Lookdev 01.”
|
4. Add profession/readability presentation and the reason inspector.
|
||||||
5. Instance `JajceWorld` into `main.tscn`.
|
5. Capture “Simulation Garden 01.”
|
||||||
6. Reconnect activity markers, rebake navigation, and run regression scenarios.
|
|
||||||
7. Add profession/readability presentation and the reason inspector.
|
|
||||||
8. Capture “Simulation Garden 01.”
|
|
||||||
|
|
||||||
Do not start with GIS data, a full city, a large asset pack, or more NPC
|
Do not start with GIS data, a full city, a large asset pack, or more NPC
|
||||||
mechanics. The next proof is a beautiful stage for the systems that already
|
mechanics. The next proof is a beautiful stage for the systems that already
|
||||||
|
|||||||
@@ -647,8 +647,8 @@ Completed after the architecture gate:
|
|||||||
|
|
||||||
The practical next sequence is:
|
The practical next sequence is:
|
||||||
|
|
||||||
1. Resume Terrain3D sculpting, runtime integration, and the simulation-garden
|
1. Sculpt and texture the integrated Terrain3D world as a bounded
|
||||||
beauty pass.
|
simulation-garden beauty pass.
|
||||||
2. Add stylized character and profession readability plus the reason
|
2. Add stylized character and profession readability plus the reason
|
||||||
inspector.
|
inspector.
|
||||||
3. Expand persistence only when schedules, player state, or a real save menu
|
3. Expand persistence only when schedules, player state, or a real save menu
|
||||||
|
|||||||
+11
-10
@@ -192,8 +192,8 @@ migration is documented in
|
|||||||
- **Language:** GDScript (`odig` analysis with warnings treated as errors)
|
- **Language:** GDScript (`odig` analysis with warnings treated as errors)
|
||||||
- **Main scene:** `res://main.tscn`
|
- **Main scene:** `res://main.tscn`
|
||||||
- **Terrain:** Terrain3D 1.0.2 is installed and enabled
|
- **Terrain:** Terrain3D 1.0.2 is installed and enabled
|
||||||
- **Jajce scaffold:** separate 512 m Terrain3D seed, greybox landmarks, stable
|
- **Jajce runtime:** reusable 512 m Terrain3D seed, greybox landmarks, stable
|
||||||
ResourceNode placement, lookdev camera, and temporary navigation spike
|
ResourceNode placement, lookdev camera, and tested runtime navigation
|
||||||
- **Terrain compatibility floor:** Godot 4.4 according to the bundled extension
|
- **Terrain compatibility floor:** Godot 4.4 according to the bundled extension
|
||||||
- **Version control:** Git
|
- **Version control:** Git
|
||||||
- **Primary branch:** `main`
|
- **Primary branch:** `main`
|
||||||
@@ -315,8 +315,8 @@ resource source.
|
|||||||
|
|
||||||
### Jajce scaffold
|
### Jajce scaffold
|
||||||
|
|
||||||
`world/jajce/JajceWorld.tscn` now provides a reusable environment scaffold
|
`world/jajce/JajceWorld.tscn` provides the reusable environment instanced by
|
||||||
separate from `main.tscn`:
|
`main.tscn`:
|
||||||
|
|
||||||
- a centered 512 m flat Terrain3D seed split across four regions;
|
- a centered 512 m flat Terrain3D seed split across four regions;
|
||||||
- dedicated terrain data and assets;
|
- dedicated terrain data and assets;
|
||||||
@@ -326,10 +326,10 @@ separate from `main.tscn`:
|
|||||||
- a temporary baked navigation loop with 24 tested routes;
|
- a temporary baked navigation loop with 24 tested routes;
|
||||||
- a look-development scene and camera.
|
- a look-development scene and camera.
|
||||||
|
|
||||||
This is a placement and integration proof, not the final terrain composition.
|
This is a runtime integration proof, not the final terrain composition.
|
||||||
`main.tscn` still runs the flat prototype. Terrain3D startup requires several
|
Terrain3D startup requires several physics frames before reliable
|
||||||
physics frames before reliable NavigationServer path queries; the scaffold test
|
NavigationServer path queries; the scaffold and runtime tests capture that
|
||||||
captures that synchronization requirement.
|
synchronization requirement.
|
||||||
|
|
||||||
### Current UI
|
### Current UI
|
||||||
|
|
||||||
@@ -467,9 +467,9 @@ NpcVisual navigates through the active world
|
|||||||
├── tests/
|
├── tests/
|
||||||
│ ├── action_system_boundaries_test.gd
|
│ ├── action_system_boundaries_test.gd
|
||||||
│ ├── deterministic_simulation_test.gd
|
│ ├── deterministic_simulation_test.gd
|
||||||
│ ├── flat_map_baseline_test.gd
|
|
||||||
│ ├── food_storage_loop_test.gd
|
│ ├── food_storage_loop_test.gd
|
||||||
│ ├── jajce_world_scaffold_test.gd
|
│ ├── jajce_world_scaffold_test.gd
|
||||||
|
│ ├── jajce_runtime_integration_test.gd
|
||||||
│ ├── npc_visual_lifecycle_test.gd
|
│ ├── npc_visual_lifecycle_test.gd
|
||||||
│ ├── resource_node_player_parity_test.gd
|
│ ├── resource_node_player_parity_test.gd
|
||||||
│ ├── simulation_definitions_test.gd
|
│ ├── simulation_definitions_test.gd
|
||||||
@@ -526,7 +526,8 @@ These are expected prototype constraints, not necessarily isolated bugs:
|
|||||||
mutation APIs, but selection, execution, target resolution, and active-world
|
mutation APIs, but selection, execution, target resolution, and active-world
|
||||||
queries now have focused collaborators.
|
queries now have focused collaborators.
|
||||||
- Path failure and interruption emit a `navigation_failed` signal and send the NPC to wander; this is functional but not yet polished.
|
- Path failure and interruption emit a `navigation_failed` signal and send the NPC to wander; this is functional but not yet polished.
|
||||||
- Terrain3D is enabled but not yet used by the main game scene.
|
- Terrain3D and the Jajce scaffold now run in the main game scene; terrain
|
||||||
|
sculpting and final presentation are still pending.
|
||||||
- Combat, companions, factions, politics, trade, rumours, quests, persistence,
|
- Combat, companions, factions, politics, trade, rumours, quests, persistence,
|
||||||
and regional travel do not yet exist.
|
and regional travel do not yet exist.
|
||||||
- Placeholder geometry is sufficient for debugging but not for build-in-public
|
- Placeholder geometry is sufficient for debugging but not for build-in-public
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
| **3** | Authoritative extraction on completion | ✅ Complete |
|
| **3** | Authoritative extraction on completion | ✅ Complete |
|
||||||
| **4a** | Wood target selection (NPC) | ✅ Complete |
|
| **4a** | Wood target selection (NPC) | ✅ Complete |
|
||||||
| **4b** | Player parity (extraction contract) | ✅ Complete |
|
| **4b** | Player parity (extraction contract) | ✅ Complete |
|
||||||
| **5** | Jajce world placement | 🔶 Scaffold/navigation proof complete |
|
| **5** | Jajce world placement and runtime integration | ✅ Complete |
|
||||||
| **6** | Replace remaining activity markers | 🔶 Resource zones removed; activity targets pending |
|
| **6** | Replace remaining activity markers | 🔶 Resource zones removed; activity targets pending |
|
||||||
|
|
||||||
### Key divergences from the original plan
|
### Key divergences from the original plan
|
||||||
@@ -493,10 +493,11 @@ baseline.
|
|||||||
- use the old task zones only for rest, eat, patrol, and study;
|
- use the old task zones only for rest, eat, patrol, and study;
|
||||||
- verify target discovery does not rely on parent scene paths.
|
- verify target discovery does not rely on parent scene paths.
|
||||||
|
|
||||||
**Progress:** `556d0fd` adds the standalone Jajce scaffold, four stable-ID
|
**Status: complete.** `556d0fd` added the standalone scaffold and the runtime
|
||||||
resources, dedicated Terrain3D seed data, remaining activity markers, and 24
|
now instances it from `main.tscn`. Four stable-ID resources, the remaining
|
||||||
headless navigation-route checks. Runtime `main.tscn` migration is intentionally
|
activity markers, player bindings, active-world targeting, and all 24
|
||||||
deferred until after the architecture gate, so this phase is not yet complete.
|
navigation routes run through `JajceWorld`; duplicate flat-map objects were
|
||||||
|
removed.
|
||||||
|
|
||||||
**Exit:** the existing food and wood loops work after moving from the flat map
|
**Exit:** the existing food and wood loops work after moving from the flat map
|
||||||
to Terrain3D.
|
to Terrain3D.
|
||||||
@@ -584,7 +585,7 @@ resource conservation through debug presentation.
|
|||||||
| 10 | Add navigation failure handling (replaces regression scenarios) | ✅ Done | `b8752f8` |
|
| 10 | Add navigation failure handling (replaces regression scenarios) | ✅ Done | `b8752f8` |
|
||||||
| 11 | Migrate wood | ✅ Done | `c6033b6`, `8049c52` |
|
| 11 | Migrate wood | ✅ Done | `c6033b6`, `8049c52` |
|
||||||
| 12 | Give the player the same extraction path | ✅ Done | `326df51` |
|
| 12 | Give the player the same extraction path | ✅ Done | `326df51` |
|
||||||
| 13 | Continue with the Jajce world scaffold | 🔶 Placement proof done; runtime migration pending | `556d0fd` |
|
| 13 | Integrate the Jajce world scaffold into runtime | ✅ Done | `556d0fd`, current phase |
|
||||||
|
|
||||||
## Definition of done for the first migration
|
## Definition of done for the first migration
|
||||||
|
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
- **Captured:** 2026-07-04
|
- **Captured:** 2026-07-04
|
||||||
- **Scene:** `res://main.tscn`
|
- **Scene:** `res://main.tscn`
|
||||||
- **Automated check:** `res://tests/flat_map_baseline_test.gd`
|
- **Current contract check:** `res://tests/jajce_runtime_integration_test.gd`
|
||||||
- **Companion resource test:** `res://tests/resource_node_player_parity_test.gd`
|
- **Companion resource test:** `res://tests/resource_node_player_parity_test.gd`
|
||||||
|
|
||||||
## Contract
|
## Contract
|
||||||
|
|
||||||
The flat prototype remains the regression reference while `JajceWorld` is
|
The captured flat prototype remains the historical behavior reference. The
|
||||||
developed separately.
|
same contract now runs against the integrated `JajceWorld` runtime.
|
||||||
|
|
||||||
The automated baseline verifies:
|
The automated baseline verifies:
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@ The companion player-parity scenario verifies:
|
|||||||
|
|
||||||
```powershell
|
```powershell
|
||||||
& "C:\Program Files (x86)\Godot\Godot_v4.5.1-stable_win64_console.exe" `
|
& "C:\Program Files (x86)\Godot\Godot_v4.5.1-stable_win64_console.exe" `
|
||||||
--headless --path . --script res://tests/flat_map_baseline_test.gd
|
--headless --path . --script res://tests/jajce_runtime_integration_test.gd
|
||||||
|
|
||||||
& "C:\Program Files (x86)\Godot\Godot_v4.5.1-stable_win64_console.exe" `
|
& "C:\Program Files (x86)\Godot\Godot_v4.5.1-stable_win64_console.exe" `
|
||||||
--headless --path . --script res://tests/resource_node_player_parity_test.gd
|
--headless --path . --script res://tests/resource_node_player_parity_test.gd
|
||||||
|
|||||||
Reference in New Issue
Block a user