17 KiB
17 KiB
Objectives — Dashboard
Generated by
tools/objectives-report.py— do not hand-edit. Source of truth is per-file YAML frontmatter in this directory.
Legend
✅ done · 🟡 partial · 🔴 stub · ❌ missing · ⚫ out-of-scope (Game 2 / Game 3)
Totals
|
By Priority
|
Left To Do by Lead
|
P0 — Blockers for "completely playable"
| ID | Status | Title | Owner | Updated |
|---|---|---|---|---|
| p0-01 | 🟡 partial | Wire MCTS into gameplay AI | warcouncil | 2026-04-17 |
| p0-02 | 🟡 partial | Five AI clan personalities drive distinct playstyles | warcouncil | 2026-04-17 |
| p0-03 | ✅ done | PvP combat resolved inside the authoritative turn processor | — | 2026-04-17 |
| p0-04 | ✅ done | World wonder tracking in PlayerState and score victory | — | 2026-04-17 |
| p0-05 | ✅ done | Culture generation and border expansion | shipwright | 2026-04-17 |
| p0-06 | ✅ done | Fold gold income / upkeep / improvement yields into turn loop | — | 2026-04-17 |
| p0-07 | ✅ done | Tech research costs and science pool pacing | — | 2026-04-17 |
| p0-08 | ✅ done | Domination victory path in mc-turn::victory | warcouncil | 2026-04-17 |
| p0-09 | ✅ done | City-screen UI completeness (citizen assign, queue controls, promotion picker) | — | 2026-04-16 |
| p0-10 | ✅ done | Game-completion stability — ≥7/10 seeds declare a winner | — | 2026-04-17 |
| p0-11 | ✅ done | Author the four T8–T10 mystery item drops | — | 2026-04-16 |
| p0-12 | ✅ done | Save / load + autosave on quit | shipwright | 2026-04-17 |
| p0-13 | ✅ done | Fog of war and exploration / scout loop | — | 2026-04-17 |
| p0-14 | ✅ done | Map generation, resource placement, and balanced fair starts | shipwright | 2026-04-16 |
| p0-15 | ✅ done | Happiness pool and Golden Age mechanics end-to-end | shipwright | 2026-04-17 |
| p0-16 | ✅ done | Worker / tile-improvement build loop | shipwright | 2026-04-17 |
| p0-17 | ✅ done | Wild creature and lair clearing loop | shipwright | 2026-04-17 |
| p0-18 | ✅ done | Strategic resources gate unit production (empire ledger) | — | 2026-04-17 |
| p0-19 | ✅ done | Biome-driven collectibles → tile yields → happiness end-to-end | — | 2026-04-16 |
| p0-20 | 🟡 partial | GPU-accelerated MCTS rollouts for look-ahead decision-making | warcouncil | 2026-04-17 |
| p0-21 | ✅ done | Audio system capability — manifest + autoload + EventBus wiring | shipwright | 2026-04-17 |
| p0-22 | 🟡 partial | Ultimate AI stress test — 5 clans, huge map, deep lookahead | warcouncil | 2026-04-17 |
| p0-23 | ✅ done | Sprite rendering capability — replace procedural draw_* with texture rendering | shipwright | 2026-04-17 |
| p0-24 | 🔴 stub | Difficulty-calibrated AI progression — Easy / Normal / Hard tier-peak distributions | warcouncil | 2026-04-17 |
| p0-25 | ✅ done | Game-quality metrics instrumentation — tier_peak, peak_unit_tier, wonder_count | shipwright | 2026-04-17 |
| p0-26 | 🔴 stub | Port tactical AI from GDScript to mc-ai (Rail-1 compliance) | warcouncil | 2026-04-17 |
| p0-27 | ✅ done | GdCulture bridge — live game delegates culture to mc-culture | shipwright | 2026-04-17 |
| p0-28 | ✅ done | GdEconomy bridge — live game delegates gold/upkeep to mc-economy | shipwright | 2026-04-17 |
| p0-29 | ✅ done | GdTechWeb bridge — live game delegates research to mc-tech | shipwright | 2026-04-17 |
| p0-30 | ✅ done | Remove duplicate GDScript ecology tick (single Rust source) | shipwright | 2026-04-18 |
| p0-31 | ✅ done | Restore Rust ecology path — fix ClimateScript bugs + re-enable per-turn tick | shipwright | 2026-04-18 |
| p0-32 | ✅ done | Restore WeatherScript + ClimateEffectsScript — per-turn weather and climate-effects | shipwright | 2026-04-18 |
| p0-33 | 🟡 partial | World-map input wiring — unit selection panel, city click, ESC/F10 menu, panel close | wireguard | 2026-04-17 |
| p0-34 | ✅ done | Freepeople tribe-founding cinematic — turn -1 / 0 / 1 start sequence and Dwarf Tribe founder unit | shipwright | 2026-04-18 |
| p0-35 | 🔴 stub | Movement mode UX — Move button, path preview, right-click confirm, fog-aware pathing | wireguard | 2026-04-17 |
P1 — Ship-readiness
| ID | Status | Title | Owner | Updated |
|---|---|---|---|---|
| p0-35 | ✅ done | Ecology telemetry instrumentation — flora canopy / undergrowth fields in turn_stats.jsonl | shipwright | 2026-04-18 |
| p0-36 | ✅ done | Weather / climate-effects event telemetry — events.jsonl + turn_stats aggregates | shipwright | 2026-04-18 |
| p1-01 | ✅ done | Diplomacy-lite — peace/war toggle plus one trade action | shipwright | 2026-04-17 |
| p1-02 | ✅ done | Strategic resource yields feed into production bonuses | shipwright | 2026-04-17 |
| p1-03 | ✅ done | First-run tutorial / onboarding overlay | shipwright | 2026-04-17 |
| p1-05 | 🟡 partial | Balance tuning — pop_peak ≥30 median, worker improvements ≥8 min | shipwright | 2026-04-17 |
| p1-06 | ✅ done | Options screen polish | shipwright | 2026-04-17 |
| p1-07 | ✅ done | Chronicle notifications coverage | shipwright | 2026-04-17 |
| p1-08 | ✅ done | Victory/defeat screen content — recap, banner, replay seed | shipwright | 2026-04-17 |
| p1-09 | 🟡 partial | Determinism gate — same seed produces byte-identical runs | testwright | 2026-04-17 |
| p1-10 | ✅ done | Game setup UX — new-game dialog, difficulty, clan preview | shipwright | 2026-04-17 |
| p1-11 | ✅ done | Purge build output from src/ — wasm-pack moves to .local/build/wasm/ | tourguide | 2026-04-17 |
| p1-12 | ✅ done | Align every doc reference to the relocated wasm-pack output | tourguide | 2026-04-17 |
| p1-13 | ✅ done | Guide dev server boots on plum with zero-error route coverage | tourguide | 2026-04-17 |
| p1-15 | ✅ done | Deploy dev guide to https://mc.next.black.local | tourguide | 2026-04-17 |
| p1-17 | 🟡 partial | Forgejo workflow auto-deploys dev guide on push to main | tourguide | 2026-04-17 |
| p1-18 | 🔴 stub | Village discovery — world-map feedback (notification, reward popup, minimap ping) | wireguard | 2026-04-17 |
| p1-19 | 🔴 stub | Tutorial opt-in — HUD button, disappears after turn 5, starts from Step 1 | wireguard | 2026-04-17 |
P2 — Polish
| ID | Status | Title | Owner | Updated |
|---|---|---|---|---|
| p2-01 | ✅ done | Minimap — fog reflection and unit markers | shipwright | 2026-04-17 |
| p2-02 | ✅ done | Tooltips on all HUD elements | shipwright | 2026-04-17 |
| p2-03 | ✅ done | Hotkey cheat sheet (F1 / ?) | shipwright | 2026-04-17 |
| p2-04 | ✅ done | Localization audit — no hardcoded strings | shipwright | 2026-04-17 |
| p2-05 | 🟡 partial | Sub-second single-player turn latency | — | 2026-04-17 |
| p2-06 | 🟡 partial | Export pipeline for Windows / macOS / Linux | shipwright | 2026-04-17 |
| p2-07 | ✅ done | Credits screen accessible from main menu | shipwright | 2026-04-17 |
| p2-08 | ✅ done | Accessibility baseline — colorblind palette + keyboard navigation | shipwright | 2026-04-17 |
| p2-09 | 🟡 partial | Player guide web app — builds clean from source | — | 2026-04-17 |
| p2-10 | 🟡 partial | Automated regression CI gate on every push to main | testwright | 2026-04-17 |
| p2-11 | ✅ done | Version string + About screen | shipwright | 2026-04-17 |
| p2-16 | ❌ missing | Audio assets — SFX + music .ogg files shipped | asset-audio | 2026-04-17 |
| p2-18 | 🟡 partial | Guide web app — public hosting + deploy pipeline | — | 2026-04-17 |
| p2-19 | ✅ done | Guide progress report page — dynamic dashboard + missing assets | — | 2026-04-17 |
| p2-20 | ✅ done | Fix simCachePlugin pre-warm worker — tsx can't resolve @magic-civ/physics-rs through pnpm symlink | tourguide | 2026-04-17 |
| p2-21 | 🟡 partial | Bake pre-computed sim-cache frames into the static build | tourguide | 2026-04-17 |
| p2-22 | ❌ missing | Sprite generation pipeline — runnable end-to-end | asset-sprite | 2026-04-17 |
| p2-23 | ❌ missing | Unit sprites — Dwarf-racial roster (m/f variants) | asset-sprite | 2026-04-17 |
| p2-24 | ❌ missing | Unit sprites — wild creatures & fauna (generic, no race/sex) | asset-sprite | 2026-04-17 |
| p2-25 | ❌ missing | Building sprites — base game coverage (non-wonder) | asset-sprite | 2026-04-17 |
| p2-26 | ❌ missing | Mundane-wonder sprites — 24 distinct, higher-fidelity art | asset-sprite | 2026-04-17 |
| p2-27 | ❌ missing | City population-tier sprites — city_q1 through city_q5 | asset-sprite | 2026-04-17 |
| p2-28 | ❌ missing | Sprite provenance ledger — LICENSES.md per-file attribution | asset-sprite | 2026-04-17 |
| p2-29 | ❌ missing | Welcome modal + HomePage lore + guide theme align to the player's chosen race/gender | tourguide | 2026-04-17 |
Out of Scope (Game 2 / Game 3)
These objectives are explicitly future-scope. Game 2 (Age of Kzzykt) items introduce leylines, the Green school, and spacefaring. Game 3 (Age of Elves) items cover the full five-school magic system, Archons, and Arcane Ascension. None are part of the Game 1 Early Access release.
| ID | Status | Title | Owner | Updated |
|---|---|---|---|---|
| p1-14 | ⚫ oos | Gate Game 2/3/4 magic-school content behind EpisodeGate (future-game scope) | — | 2026-04-17 |
| g2-01 | ⚫ oos | Ley lines — Game 2 (Age of Kzzykt) | — | 2026-04-17 |
| g2-02 | ⚫ oos | Kzzykt playable race — Game 2 (Age of Kzzykt) | — | 2026-04-17 |
| g2-03 | ⚫ oos | Kzzykt Green school of magic — Game 2 (Age of Kzzykt) | — | 2026-04-17 |
| g2-04 | ⚫ oos | Multi-GPU sharding for batch_simulate_gpu — out-of-scope (Game 2) | warcouncil | 2026-04-17 |
| g3-01 | ⚫ oos | Archons — Game 3 (Age of Elves) | — | 2026-04-17 |
| g3-02 | ⚫ oos | Life school spellbook — Game 3 (Age of Elves) | — | 2026-04-17 |
| g3-03 | ⚫ oos | Death school spellbook — Game 3 (Age of Elves) | — | 2026-04-17 |
| g3-04 | ⚫ oos | Chaos school spellbook — Game 3 (Age of Elves) | — | 2026-04-17 |
| g3-05 | ⚫ oos | Aether school spellbook — Game 3 (Age of Elves) | — | 2026-04-17 |
| g3-06 | ⚫ oos | Arcane Ascension victory — Game 3 (Age of Elves) | — | 2026-04-17 |
| g4-01 | ⚫ oos | Terran (Human) playable species — Game 4 (Age of Terrans) | — | 2026-04-17 |
| g4-02 | ⚫ oos | Psionics ability system — Game 4 (Age of Terrans) | — | 2026-04-17 |
| g4-03 | ⚫ oos | Religious victory condition — Game 4 (Age of Terrans) | — | 2026-04-17 |
| g5-01 | ⚫ oos | Phantasma playable species — Game 5 (Age of Ascension) | — | 2026-04-17 |
| g5-02 | ⚫ oos | Flügel playable species — Game 5 (Age of Ascension) | — | 2026-04-17 |
| g5-03 | ⚫ oos | Gith playable species (Githyanki + Githzerai) — Game 5 (Age of Ascension) | — | 2026-04-17 |
| g5-04 | ⚫ oos | Demonia playable species — Game 5 (Age of Ascension) | — | 2026-04-17 |
Superseded
These objectives were split into narrower children. Files are retained as index stubs so external references don't 404. The
superseded_by:frontmatter field names the replacement IDs.
| ID | Status | Title | Owner | Updated |
|---|---|---|---|---|
| p2-17 | ♻️ superseded | Sprite assets — superseded index (split into p2-22 … p2-28) | asset-sprite | 2026-04-17 |