mirror of
https://github.com/Earth-Genesis-Games/Ajedrez_Purgatorio.git
synced 2026-09-11 09:47:35 +00:00
- Install CCGS agent/skill/hook framework (.claude/, docs templates, GitHub issue/PR templates) - Configure CLAUDE.md and technical-preferences.md for Unity 6000.3.3f1 (C#, URP, collider-based mouse picking) - Point engine reference import at docs/engine-reference/unity/ and remove unused Godot/Unreal reference docs - Add Version Awareness section to unity-specialist agent - Set production/review-mode.txt to lean - Add design/gdd/combat-mode.md: reverse-documented GDD for the vs-AI Combat mode, confirming it as the foundation for the guion.md narrative campaign (separate from Classic mode) - Add docs/architecture/ADR-0001: documents the existing board-state/singleton/per-mode architecture and the decision to keep Classic and Combat modes permanently separate - Add docs/architecture/control-manifest.md: programmer rules sheet sourced from ADR-0001 and Unity 6 engine reference docs - Continue in-progress Mono/Classic and Mono/Combat refactor (ScoreManager, scene/prefab updates) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1.0 KiB
1.0 KiB
paths
| paths | |
|---|---|
|
Gameplay Code Rules
- ALL gameplay values MUST come from external config/data files, NEVER hardcoded
- Use delta time for ALL time-dependent calculations (frame-rate independence)
- NO direct references to UI code — use events/signals for cross-system communication
- Every gameplay system must implement a clear interface
- State machines must have explicit transition tables with documented states
- Write unit tests for all gameplay logic — separate logic from presentation
- Document which design doc each feature implements in code comments
- No static singletons for game state — use dependency injection
Examples
Correct (data-driven):
var damage: float = config.get_value("combat", "base_damage", 10.0)
var speed: float = stats_resource.movement_speed * delta
Incorrect (hardcoded):
var damage: float = 25.0 # VIOLATION: hardcoded gameplay value
var speed: float = 5.0 # VIOLATION: not from config, not using delta