Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Throne Adoption & Sync Points

Throne (the C# colony-sim at aram-devdocs/throne_ge) is the flagship consumer and the forcing function for the v2 perf targets. Because the engine breaks its API where necessary (no legacy code kept), Throne adopts each breaking change at defined sync points. Adoption work lives in throne_ge under the goudengine-v2-adoption milestone (label goudengine-adoption), not in this repo.

Every GoudEngine breaking-change issue names its Throne follow-up before it closes. This is the reverse of throne_ge/docs/runbook/engine-dependencies.md.

Sync points

SyncAfterThrone issuesWhat Throne does
Sync 0Phase 0THR-S0-01Bump GoudEngine; delete the CopyGoudEngineNativeLib workaround; re-profile GameWorld with the fixed phase counters (this becomes Phase 2’s “before” evidence).
Sync APhase 4 gateTHR-A-01 … THR-A-04Bump to the v2 FFI surface; adopt batch spawn + bulk transform upload + command-buffer submission (delete per-entity SetModelPosition/SetModelRotation loops); replace the 80×80 terrain window with the engine chunked tilemap-grid primitive (full 200×200 map); re-enable shadows.
Sync BPhase 5 gateTHR-B-01Replace the Parallel.For/job stubs with the engine job system; wire goud_world_state_hash into DeterminismTests; re-run Throne Phase 1 scale gates against engine primitives.
Sync CPhase 8 gateTHR-C-01Evaluate engine A*/flow-field, event bus, and RNG/noise against Throne’s C# implementations; adopt where they beat the stubs.

Sync A acceptance (the prime-directive validation)

Posted on both repos’ tracking issues: Throne GameWorld, full 200×200 map, no terrain window, shadows ON≥ 120 FPS on Apple M-series, BeginFrame+EndFrame ≤ 4 ms, and a grep gate showing zero per-entity transform-push loops.

Provenance

THR-A-01 supersedes GoudEngine #596 and carries the content of the migrated GoudEngine issues #590–#593 (V2-P07…P11). Those were closed on the engine side with migration links. The engine-side prerequisites for Sync A are ENG2 Phase 2 (render core) + Phase 4 (FFI v2).