Commit graph

1277 commits

Author SHA1 Message Date
Natalie
629fd05c67 fix(macos): Fix GDExtension loading and class_name resolution for fresh macOS checkouts
- Add scripts/dev-setup/osx.sh for one-command macOS dev environment setup
- Add .godot/extension_list.cfg creation to enable GDExtension discovery
- Fix .gdextension to include macos.debug and macos.arm64 library entries
- Replace bare class_name self-references (e.g. BiomeModel.new()) with new()
  in static methods — fixes compilation on cold boots without import cache
- Replace bare class_name type annotations (GameMap, Unit) with RefCounted/Variant
  in pathfinder.gd, ai_turn_bridge.gd, simple_heuristic_ai.gd, rust_fauna_bridge.gd
- Add headless boot check (step 7) to ./run verify pipeline
- Add offscreen screenshot tool via SubViewport
- Wire ./run setup to dispatch to platform-specific scripts
- Source ~/.cargo/env in common.sh for Rust toolchain discovery
- Allow clippy::result_large_err in api-gdext (godot-rust macro generates large Results)
- Update .npmrc registry from Verdaccio to Forgejo and regenerate pnpm-lock.yaml

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 12:55:33 -07:00
autocommit
d87998f93f wip: travel backup — arena fixes, happiness system, items, spells 2026-04-12 11:24:17 -07:00
Claude Code
7672732e7d fix(world-map): 🐛 Fix overlapping world content in arena mode by adjusting SubViewportContainer z-index and positioning
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:54:52 -07:00
Claude Code
4527ca7737 fix(world-map): 🐛 Fix viewport sizing and scaling in arena mode to prevent layout race conditions and correct hex map rendering
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:49:11 -07:00
Claude Code
6cee670e77 fix(world-map): 🐛 Fix race condition in SubViewport layout by explicitly setting size to window dimensions to stabilize scaling and zoom behavior
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:43:23 -07:00
Claude Code
28e9994e39 fix(world-map): 🐛 Fix camera texture refresh to prevent stale rendering in offscreen matches by updating occlusion handling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:37:53 -07:00
Claude Code
921a68a7d9 feat(world-map): Implement dynamic camera scaling for arena mode viewport fitting to ensure full map visibility in constrained windows
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:32:20 -07:00
Claude Code
fd986357c4 fix(world-map): 🐛 Fix async rendering pipeline to ensure proper draw pass before texture capture in Wayland
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:26:50 -07:00
Claude Code
268c93951f feat(generation): Improve water terrain classification, placement, and start position logic by updating biome registry, map generator, and placer to handle legacy water terrains properly
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:21:28 -07:00
Claude Code
ede8a5b969 feat(combat): Implement D20-based combat resolution with roll generation, modifiers, and resolution logic
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:15:12 -07:00
Claude Code
8096ecaa35 refactor(generation): ♻️ Restructure and optimize map generation logic for improved maintainability and performance
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:15:11 -07:00
Claude Code
47c59b2a05 feat(game-engine): Add D20 attribute system and movement domain mechanics to Unit class
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:15:11 -07:00
Claude Code
035a07b069 feat(ai-arena): Add victory/draw result serialization and victory condition support for AI match tooling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:09:24 -07:00
Claude Code
f1d169e98d feat(generation): Add tiebreaker support to start position generation for fairer multiplayer start distribution
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:09:24 -07:00
Claude Code
2915bba1dc feat(world-map): Implement deterministic tiebreaker cascade (score, cities, population, units) for victory conditions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:09:23 -07:00
Claude Code
d5938ca7df feat(world-map): Add TurnNotification overlay to prevent screen dimming during AI turns in world map arena
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-11 06:03:24 -07:00
Claude Code
d2545e2694 feat(tools): Enhance screenshot compositing logic for AI matches with improved processing and performance optimizations
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:41:00 -07:00
Claude Code
802d11c34d feat(tools): Update ai-arena.sh to support new screenshot capture/processing requirements with CLI flags or environment variables for resolution, format, and metadata compliance
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:40:59 -07:00
Claude Code
33c66cbb35 feat(world-map): Add screenshot capture logic for AI match visualization in WorldMapArena
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:40:59 -07:00
Claude Code
52afaca4ec feat(grab-screen): Update capture logic to support X11 rendering mode in AI arena
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:35:18 -07:00
Claude Code
7db5447968 feat(ai-arena): Add X11 rendering flag for screen capture compatibility
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:35:17 -07:00
Claude Code
dca1a32a6f feat(tools): Add support for a new game mode in AI arena tooling for flexible AI competitions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:11:49 -07:00
Claude Code
aeeaf568fb feat(arena-ai): Update unit AI behavior to support arena mode with movement, decision-making, and difficulty adjustments
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:11:48 -07:00
Claude Code
6d1cfa725c feat(settings-manager): Add AI arena mode settings keys and validation logic for game engine compatibility
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:11:48 -07:00
Claude Code
662057c69d feat(arena): Add AI-controlled arena mode race selection and adjust world map arena scene behavior
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 21:11:47 -07:00
Claude Code
9b9ea5d3cc test(ai-arena): Add test environment directory for AI Arena testing
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:37:09 -07:00
Claude Code
d36d5fc4d5 feat(victory): Introduce grace period delay for victory checks in VictoryManager
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:31:44 -07:00
Claude Code
eb22568828 feat(ai): Enhance military unit detection logic in SimpleHeuristicAI for improved strategic accuracy
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:25:49 -07:00
Claude Code
85ae66b0a6 feat(victory): Add unit-capture victory condition logic to handle new win scenarios in VictoryManager.gd
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:20:14 -07:00
Claude Code
eaa8b98773 fix(ai-arena): 🐛 Implement persistent output caching for AI arena results by redirecting to a user cache directory to prevent data loss in sandboxed environments
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:14:38 -07:00
Claude Code
b0b9996363 fix(world-map): 🐛 Add missing return statement to prevent null reference errors in WorldMap scene processing
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:08:23 -07:00
Claude Code
7b45068213 feat(game-engine): Add environment-based conditional logic to disable screenshot capture in non-debug contexts
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:08:23 -07:00
Claude Code
67933937c9 feat(turn-processor): Implement vision integration into turn processing logic
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:02:45 -07:00
Claude Code
d14c08c46b refactor(ai): ♻️ Update AI decision-making constants for strategic behavior improvements
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:02:45 -07:00
Claude Code
34fef59b25 feat(game-engine): Add vision property to Unit entities for rendering and AI behavior
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 20:02:45 -07:00
Claude Code
9282d5f8cb feat(ai): Add debug logging for founder AI decision-making in heuristic AI
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:56:30 -07:00
Claude Code
bba3da7fd7 refactor(turn-manager): ♻️ Remove commented-out Diplomacy and Economy calls from turn manager and processor
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:50:51 -07:00
Claude Code
1602d63346 feat(turn-processor): Introduce turn skipping validation rules in TurnProcessor
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:45:18 -07:00
Claude Code
62fc555abf docs(claud-docs): 📝 Update AI architecture documentation in CLAUDE.md to clarify Rust/GDScript boundaries and implementation details
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:45:17 -07:00
Claude Code
e7e7b7caa6 refactor(ai): ♻️ Implement modular AI behavior pipeline by separating GDScript game logic from Rust scoring weights for cleaner architecture and performance gains
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:45:17 -07:00
Claude Code
6693035924 feat(ai-arena): Implement competitive AI model testing features in the arena script
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:32:53 -07:00
Claude Code
339fa42474 feat(world-map): Introduce arena mode with arena-specific world map logic and boundary handling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:26:54 -07:00
Claude Code
e3fd056a94 feat(game-engine): Implement AI arena session logic with session initialization and behavior rules for main scene gameplay
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:26:53 -07:00
Claude Code
5980926b84 feat(ai): Add AI turn bridge class to coordinate AI components and game state transitions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:20:20 -07:00
Claude Code
6c1847a210 feat(game-engine): Implement AI turn logic in TurnManager with turn order calculation and AI player handling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:20:20 -07:00
Claude Code
86eb0933d0 feat(loading-screen): Add AI arena mode UI and logic with player name customization and AI opponent handling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 19:20:19 -07:00
Claude Code
96a417dfa5 test(ecology-specific): Add golden vector tests for ecology simulation outputs to verify consistency over time
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 18:46:10 -07:00
Claude Code
1f1326fef2 chore(ecology): 🔧 Update biome trait weights configuration for ecology system prioritization
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 18:46:10 -07:00
Claude Code
928bc5b1fb test(guide): Update Vitest configuration for Age of Dwarves guide tests
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 18:46:09 -07:00
Claude Code
d25d2fe37e refactor(scripts): ♻️ Simplify and improve error handling in dev.sh by reorganizing log paths and updating success/failure conditions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 18:33:54 -07:00