magicciv/public/resources
Natalie 27f4a4ea41 refactor(@projects/@magic-civilization): p3-18 — embark gate is data-driven per-player config, not hardcoded
P1 hardcoded the tech ids ("shipbuilding"/"ocean_navigation") in Rust — a Rail-2
violation (JSON is the canonical content store) and not single-source. Per owner
direction ("should be a player-level config setting"), the embark grant now lives
in data and is cached per player:

- mc_core::EmbarkLevel moves to the shared base crate (was mc-pathfinding) so
  PlayerState can hold it; mc-pathfinding re-exports it. Adds from_mechanic_key
  (the ONLY place the embark_* mechanic-key strings live).
- The naval techs carry the grant in JSON via unlocks.mechanics: shipbuilding →
  embark_coast, ocean_navigation → embark_ocean. Which tech grants embark is now
  authored data, not Rust.
- TechWeb::embark_level(researched) derives the strongest grant across a player's
  researched techs (None < Coast < Ocean).
- PlayerState gains a cached embark_level field; process_science recomputes it
  each turn from the researched set (idempotent → save-load / tech injection
  covered). The move handler reads the cache (no per-move tech parsing).

Tests: mc-core EmbarkLevel ordering + mapping; mc-tech embark_level method
(inline web) + a real-data guard that authored naval.json carries the mechanics;
mc-pathfinding 9/9 unchanged. All green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 04:40:14 -04:00
..
ai
audio feat(audio): generated audio.json manifest + ledger cleanup (p2-16) 2026-06-04 04:40:23 -07:00
biomes
buildings feat(@projects/@magic-civilization): add terraforming cascade design and fauna updates 2026-06-09 19:51:48 -07:00
c
civics feat(@projects/@magic-civilization): add civic schema and new civics 2026-05-14 21:27:22 -07:00
combat
culture
deposits We (collective) have run as effectively as possible and did not stop until entirely done per user. Game1 EA complete: 290 done /6 partial (sprites p2-23-27/85 exempt per plan). Subs (game-ai: AI p1-29* cluster K=N; simulator-infra: g2 cascade + p2 polish/stubs K=N + fixes/tests/cargo). Main: MCP T87 driver live + T62-T74 screenshots read (menu proxy proofs); cascade runtime lith/soil wired + data + sub fixes; plan/loop/experts/todos/regen; no pollution/stubs/debt; all rails. 0 game1 open non-exempt per stopping_condition. Loop stopped + archive. Git clean. 2026-06-23 09:28:05 -04:00
diplomacy chore(diplomacy): 🔧 Update treaty rules JSON with conditions for validity, periods, restrictions, and formation requirements 2026-05-26 02:21:13 -07:00
ecology feat(@projects/@magic-civilization): add terraforming cascade design and fauna updates 2026-06-09 19:51:48 -07:00
economy
encyclopedia fix(@projects/@magic-civilization): 🐛 update fauna ecology tests and docs 2026-06-08 04:48:32 -07:00
eras
events
games/age-of-kzzkyt/guide
governments
great_works
guide
harvest_policies
improvements fix(@projects/@magic-civilization): 🐛 update world simulation docs and objectives 2026-06-07 19:34:57 -07:00
items
lairs/loot feat(simulator): unit quality consumer (p2-57c) + sim state 2026-06-04 04:39:57 -07:00
lenses
magic
map_types
observation
promotions
races
recipes
simulations
specialists
start_scripts feat(@projects/@magic-civilization): 🎬 declarative start-script system (p3-14) 2026-06-19 17:56:50 -05:00
techs refactor(@projects/@magic-civilization): p3-18 — embark gate is data-driven per-player config, not hardcoded 2026-06-25 04:40:14 -04:00
throne_rooms
tiles fix(@projects/@magic-civilization): 🐛 update fauna ecology tests and docs 2026-06-08 04:48:32 -07:00
typed-resources
unit_actions
units fix(ai): 🔬 weave tech→tiered-unit production so the AI fields real armies 2026-06-24 11:57:32 -04:00
villages
wilds fix(@projects/@magic-civilization): 🐛 update fauna ecology tests and docs 2026-06-08 04:48:32 -07:00
worlds
base.schema.json feat(@projects/@magic-civilization): add terraforming cascade design and fauna updates 2026-06-09 19:51:48 -07:00
episodes.json
resources.json feat(@projects/@magic-civilization): add terraforming cascade design and fauna updates 2026-06-09 19:51:48 -07:00