merge game/design; wire; readme

This commit is contained in:
alex 2026-09-07 22:10:35 -04:00
parent 6ea3b5f433
commit ba9ec951d2
2 changed files with 3 additions and 1 deletions

View file

@ -25,6 +25,7 @@ add_subdirectory(src/mars/vfs) # .gob ZIP reader + native override (lib mars
add_subdirectory(src/mars/stream) # Streamable save format + gzip (lib mars_stream)
add_subdirectory(src/mars/rng) # MT19937 (lib mars_rng)
add_subdirectory(src/game/data) # typed catalogs on mars/parse+text (lib game_data)
add_subdirectory(src/game/design) # ship-design rules + derived stats (lib game_design)
# ---- shim trace/compare infrastructure (host-testable; linked into binkw32) ----
add_library(shim_trace STATIC
@ -60,7 +61,7 @@ else()
add_executable(addr_smoke tests/addr_smoke.cpp)
target_link_libraries(addr_smoke PRIVATE sots_addresses)
add_test(NAME addr_smoke COMMAND addr_smoke)
foreach(_t mars_parse mars_text game_sim mars_vfs mars_stream shim_trace game_data)
foreach(_t mars_parse mars_text game_sim mars_vfs mars_stream shim_trace game_data game_design)
if(EXISTS ${CMAKE_SOURCE_DIR}/tests/${_t}/CMakeLists.txt)
add_subdirectory(tests/${_t})
endif()

View file

@ -19,6 +19,7 @@ loads) builds, deploys, hooks, and logs from a real game launch. Engine code acc
- `mars/stream` — the game's self-describing save/serialization format (reader, writer, typed shapes) + gzip; three real saves round-trip byte-identical
- `mars/rng` — MT19937 with save-state load/store; layout confirmed against real saves
- `game/data` — typed catalogs (weapons, ship sections, turrets, id registries, tech tree, strings) with cross-reference checks; 229k values agree with the reference
- `game/design` — ship-design assembly/fit/tech-gating rules and derived stats; validates all 127 stock designs from real saves
Build: `cmake --preset host && cmake --build --preset host && ctest --preset host` (Linux);
`tools/sync-build.sh` cross-builds the shim on the lab box and stages it for deployment.