--- name: godot-architecture description: Use for architecture, refactors, or new gameplay systems in this Godot 4.6 survivor project. Enforces data-driven design, composition over inheritance, and separation between gameplay systems, resources, and UI. --- # Godot Architecture Skill Use this skill when: - creating new gameplay systems - refactoring player/enemy/weapon architecture - introducing resources for enemies, weapons, upgrades, or statuses - changing scene/script boundaries ## Principles - Keep scenes thin. - Prefer data/resources over hard-coded branches. - Use composition before inheritance. - Route upgrades through generic modifiers/effects. - Avoid content identity living inside Player or Enemy scripts. ## Required checks before coding 1. Which existing system should own this responsibility? 2. Can this be represented as data instead of code branching? 3. Will this make future enemies/weapons/statuses easier to add? 4. Does this accidentally couple UI and gameplay?