Commit graph

3436 commits

Author SHA1 Message Date
Natalie
db30279c60 feat(@projects/@magic-civilization): expose drive_ai_slot for benchmarking
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-08 01:20:42 -07:00
Natalie
9e7566a628 fix(@projects/@magic-civilization): 🐛 fix panic in turn processor
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-08 00:56:57 -07:00
Natalie
3765dc8b9f feat(@projects/@magic-civilization): debug pvp combat logic gaps
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-08 00:35:20 -07:00
Natalie
f7e70c1844 feat(@projects/@magic-civilization): add env var for tunable worldgen ticks
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-08 00:02:02 -07:00
Natalie
35a0a2c17f feat(@projects/@magic-civilization): document bullet2 port feasibility
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 23:49:06 -07:00
Natalie
b6f8c83d71 feat(@projects/@magic-civilization): update worldsim integration objective
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 23:37:25 -07:00
Natalie
acfe9cbb55 feat(@projects/@magic-civilization): add ecology save persistence integration
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 23:15:30 -07:00
Natalie
e912d67388 feat(@projects/@magic-civilization): add fog-regression test for lens overlays
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 22:49:57 -07:00
Natalie
74e8117f88 fix(@projects/@magic-civilization): 🐛 update timestamp and clarify fauna overlay render gap
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 21:58:39 -07:00
Natalie
482baf301d feat(@projects/@magic-civilization): add fauna overlay proof test suite
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 21:37:16 -07:00
Natalie
7dd4f6c894 fix(@projects/@magic-civilization): 🐛 fix fauna rendering and cold-start bug
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 21:25:42 -07:00
Natalie
5582c5f90d fix(@projects/@magic-civilization): 🐛 update timestamp and render hook status
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 21:10:14 -07:00
Natalie
c297a7fc13 feat(@projects/@magic-civilization): add fauna tile count tracking
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 21:04:21 -07:00
Natalie
4bf1d054a9 feat(@projects/@magic-civilization): improve fauna seeding logic
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 20:54:35 -07:00
Natalie
3f866545aa feat(@projects/@magic-civilization): add live fauna emergence test suite
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 20:42:56 -07:00
Natalie
fba776c936 fix(@projects/@magic-civilization): 🐛 update render hook fauna overlay timing
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 20:33:18 -07:00
Natalie
207dbec853 feat(@projects/@magic-civilization): add fauna population overlay rendering
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 20:19:46 -07:00
Natalie
21257ea4bc test(engine): add fauna overlay integration test suite
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 20:06:09 -07:00
Natalie
27ade4cd43 feat(@projects/@magic-civilization): add per-tile fauna density updates
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 19:58:36 -07:00
Natalie
d0a74e5122 fix(@projects/@magic-civilization): 🐛 update world simulation docs and objectives
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 19:34:57 -07:00
Natalie
c2668c8789 feat(@projects/@magic-civilization): add lithology and terrain evolution integration docs
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 19:07:45 -07:00
autocommit
e8d151f950 refactor(management): ♻️ Replace city garrison healing calculation with internal helper to decouple from BuildingScript dependency
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-07 00:12:46 -07:00
autocommit
5e3624eb29 fix(climate): 🐛 Prevent crashes in ecological event spawning by adding null/absent checks for resource configurations
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 23:56:40 -07:00
autocommit
0c734578e0 refactor(api-gdext): ♻️ Move item JSON parsing logic to a shared module in lib.rs and city_slot.rs for DRY compliance
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 23:40:27 -07:00
autocommit
ed76612ad2 feat(simulator): Implement parallel city state tracking for Path 2 in the simulator API
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 22:35:31 -07:00
autocommit
8a7c26ff12 chore(tooling-specific): 🔧 Update bridge-cse_01UCbE4p6FXAuiDrQ5WSWyTh submodule state for toolchain integration
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 22:19:32 -07:00
autocommit
b56ae0612c feat(api-gdext): Add new simulation endpoints and Rust bindings for Godot Engine integration
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 17:46:38 -07:00
autocommit
8977f8f138 chore(game): 🔧 Update export templates, default scene, and engine compatibility settings in project.godot
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 17:46:38 -07:00
autocommit
a29572bfdf feat(save-manager): Add incremental save/load support with versioned state handling for world simulation
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 17:46:38 -07:00
autocommit
e9b76ecdd6 feat(engine): Implement TurnManager and WorldSimState for core turn-based simulation and world state management
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 17:46:38 -07:00
autocommit
5a6f9ffb67 perf(game-engine): Optimize world simulation parameters for better ecology visualization and stability
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 17:46:38 -07:00
autocommit
529bad2b1f test(engine): Add integration test for playable world simulation path in game engine
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 17:24:49 -07:00
autocommit
f5cf076f15 feat(scenes): Add ecological simulation test scene with GDScript logic, unique identifier, and TSCN structure
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 17:24:49 -07:00
autocommit
b0069856f8 fix(simulator): 🐛 Replace HashMap with BTreeMap in EcologyEngine’s continuation state to ensure deterministic serialization order for species registry
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:42:17 -07:00
Natalie
2de6051c5f chore(objectives): fix Game-1 owner integrity + flesh out underground (g2-12) cluster
Game-1 dashboard fix: reassign 5 objectives off specialist-agent names
onto valid team-leads so objectives-report.py regenerates (it aborts on
any owner lacking a .project/team-leads/<owner>.md identity):
  p1-61 game-data->terraformer, p1-57 game-systems->envoy,
  p2-73/p2-60/p2-74 godot-engine|godot-ui->wireguard.

Underground (Game 2, stays OOS): decompose g2-12 umbrella into 8 ordered
phase objectives g2-12a..h (data model+save, worldgen, excavation, cross-
layer movement+pathfinding, per-layer fog, collapse, layer UI, AI
awareness); g2-11 blocked_by tightened to [g2-12a, g2-12c].

Dashboard regenerated: 319 objectives, README.md + objectives.json.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 16:24:32 -07:00
autocommit
3aef7775a7 test(engine): Add unit tests for award computation and theme color validation in the game engine
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:21:16 -07:00
autocommit
0cec651fd3 test(game-engine): Add integration tests for end-game footer actions and worldsim playable path interactions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:21:16 -07:00
autocommit
be7c824275 refactor(ecology): ♻️ Improve ecology state serialization to enable full continuation state persistence for save functionality
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:21:16 -07:00
autocommit
061b6f0f7b feat(api-gdext): Introduce worldsim dynamics traits, structs, and functions for Godot engine extension API
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
8bc770d8a0 feat(worldsim): Add core event dispatch and simulation loop for Minecraft-like world simulator
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
1d9e77be52 feat(chronicle): Add support for recording and processing turn-based world simulation steps in the Chronicle system
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
e8e4d5c7f7 feat(simulator): Introduce dynamic world simulation tracking in GameState with state transitions and interaction methods
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
4008e56643 feat(simulator): Introduce EventDispatcher infrastructure for dynamic world state updates with event types in event_dispatch.rs
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
36893f5e45 feat(mc-save): Add worldsim dynamics serialization and round-trip validation for new save format
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
77316f105d feat(simulator): Implement carrying capacity migration logic for ecology simulation engine
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
a8aa0847ad feat(mc-core): Introduce deterministic ecology simulation logic with a new Seed domain and seed generation system
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
autocommit
715c73243e deps-upgrade(simulator): ⬆️ Update simulator dependencies to latest stable versions in Cargo.toml and regenerate Cargo.lock
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-06 16:03:19 -07:00
Natalie
30bcde26d5 feat(fog): dwarven cartographer's-fog for unexplored tiles
Replace flat-black unexplored fog with an antique-cartography treatment
(Civ-VI style), themed as dwarven 'unmapped vellum/slate' — reveals no
real terrain, only a stylized stone surface.

- fog_renderer.gd: unexplored tiles painted with a procedurally generated
  opaque vellum texture (FastNoiseLite domain-warped FBM → warm dark
  slate→parchment gradient), generated synchronously at init so there is
  no reveal-before-ready leak. No binary art asset required. Visible/seen
  paths unchanged; frontier stays a clean opaque edge.
- design-tokens.json -> ui_theme.tres: fog.unexplored 000000ff -> 1a160fff
  (warm 'unmapped vellum' tone) so the minimap unexplored cover matches.

Render-verified on apricot (iter_7q proof, fog enabled): undiscovered
renders as warm stone/vellum on map + minimap, no terrain bleed, clean
frontier, lit tiles unaffected. gdlint clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 06:35:04 -07:00
Natalie
c22b497a27 fix(fog): fully hide undiscovered tiles on map + minimap
Undiscovered (never-seen) terrain was leaking through fog on both the
main map and minimap; only the lit(visible) vs unlit(seen) distinction
worked. Root cause: unexplored overlay was sub-opaque + undersized.

- fog_renderer.gd: UNEXPLORED_COLOR alpha 0.85 -> 1.0 (opaque); edge-fade
  softening now gated to the FOGGED state only — unexplored tiles stay
  fully opaque even at vertices bordering a visible tile (was revealing
  undiscovered terrain along the exploration frontier).
- design-tokens.json -> regenerated ui_theme.tres: fog.unexplored
  alpha 0.90 -> 1.0 (fixed at token source, not hand-edited).
- minimap.gd: unexplored now drawn as a full tile-pitch opaque cover
  instead of a 3x3px dot (the dot left ~5px gaps at minimap scale,
  leaking terrain). fog.explored (seen dimming) left unchanged.

Verified on apricot via iter_7q_worldmap_visual_proof with fog ENABLED:
undiscovered renders solid black on map + minimap, clean hard frontier,
lit tiles unaffected. (GUT cannot prove this — render-verified.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 03:30:58 -07:00
Natalie
26bf44f077 feat(designs): sprite showcase /sprites route + standalone scoped gallery
Lands remaining bridge-cse worktree WIP onto main:
- SpriteShowcase.tsx React page + wired /sprites route (App.tsx) + Index nav link
- standalone scoped sprite-gallery.html (160 units / 165 buildings, 0 missing)
- p2-74 cluster-3 HUD/minimap proof screenshot

SpriteShowcase typechecks clean (@game-assets glob + theme, no WASM dep).
Excluded tsconfig.tsbuildinfo (build cache); tile_info_panel.gd kept main's
global-theme version. User-authorized override of autocommit (daemon idle).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 02:11:21 -07:00