davila7 / game-development
Install for your project team
Run this command in your project directory to install the skill for your entire team:
mkdir -p .claude/skills/game-development && curl -L -o skill.zip "https://fastmcp.me/Skills/Download/790" && unzip -o skill.zip -d .claude/skills/game-development && rm skill.zip
Project Skills
This skill will be saved in .claude/skills/game-development/ and checked into git. All team members will have access to it automatically.
Important: Please verify the skill by reviewing its instructions before using it.
Game development orchestrator. Routes to platform-specific skills based on project needs.
8 views
0 installs
Skill Content
--- name: game-development description: Game development orchestrator. Routes to platform-specific skills based on project needs. allowed-tools: Read, Write, Edit, Glob, Grep, Bash --- # Game Development > **Orchestrator skill** that provides core principles and routes to specialized sub-skills. --- ## When to Use This Skill You are working on a game development project. This skill teaches the PRINCIPLES of game development and directs you to the right sub-skill based on context. --- ## Sub-Skill Routing ### Platform Selection | If the game targets... | Use Sub-Skill | |------------------------|---------------| | Web browsers (HTML5, WebGL) | `game-development/web-games` | | Mobile (iOS, Android) | `game-development/mobile-games` | | PC (Steam, Desktop) | `game-development/pc-games` | | VR/AR headsets | `game-development/vr-ar` | ### Dimension Selection | If the game is... | Use Sub-Skill | |-------------------|---------------| | 2D (sprites, tilemaps) | `game-development/2d-games` | | 3D (meshes, shaders) | `game-development/3d-games` | ### Specialty Areas | If you need... | Use Sub-Skill | |----------------|---------------| | GDD, balancing, player psychology | `game-development/game-design` | | Multiplayer, networking | `game-development/multiplayer` | | Visual style, asset pipeline, animation | `game-development/game-art` | | Sound design, music, adaptive audio | `game-development/game-audio` | --- ## Core Principles (All Platforms) ### 1. The Game Loop Every game, regardless of platform, follows this pattern: ``` INPUT → Read player actions UPDATE → Process game logic (fixed timestep) RENDER → Draw the frame (interpolated) ``` **Fixed Timestep Rule:** - Physics/logic: Fixed rate (e.g., 50Hz) - Rendering: As fast as possible - Interpolate between states for smooth visuals --- ### 2. Pattern Selection Matrix | Pattern | Use When | Example | |---------|----------|---------| | **State Machine** | 3-5 discrete states | Player: Idle→Walk→Jump | | **Object Pooling** | Frequent spawn/destroy | Bullets, particles | | **Observer/Events** | Cross-system communication | Health→UI updates | | **ECS** | Thousands of similar entities | RTS units, particles | | **Command** | Undo, replay, networking | Input recording | | **Behavior Tree** | Complex AI decisions | Enemy AI | **Decision Rule:** Start with State Machine. Add ECS only when performance demands. --- ### 3. Input Abstraction Abstract input into ACTIONS, not raw keys: ``` "jump" → Space, Gamepad A, Touch tap "move" → WASD, Left stick, Virtual joystick ``` **Why:** Enables multi-platform, rebindable controls. --- ### 4. Performance Budget (60 FPS = 16.67ms) | System | Budget | |--------|--------| | Input | 1ms | | Physics | 3ms | | AI | 2ms | | Game Logic | 4ms | | Rendering | 5ms | | Buffer | 1.67ms | **Optimization Priority:** 1. Algorithm (O(n²) → O(n log n)) 2. Batching (reduce draw calls) 3. Pooling (avoid GC spikes) 4. LOD (detail by distance) 5. Culling (skip invisible) --- ### 5. AI Selection by Complexity | AI Type | Complexity | Use When | |---------|------------|----------| | **FSM** | Simple | 3-5 states, predictable behavior | | **Behavior Tree** | Medium | Modular, designer-friendly | | **GOAP** | High | Emergent, planning-based | | **Utility AI** | High | Scoring-based decisions | --- ### 6. Collision Strategy | Type | Best For | |------|----------| | **AABB** | Rectangles, fast checks | | **Circle** | Round objects, cheap | | **Spatial Hash** | Many similar-sized objects | | **Quadtree** | Large worlds, varying sizes | --- ## Anti-Patterns (Universal) | Don't | Do | |-------|-----| | Update everything every frame | Use events, dirty flags | | Create objects in hot loops | Object pooling | | Cache nothing | Cache references | | Optimize without profiling | Profile first | | Mix input with logic | Abstract input layer | --- ## Routing Examples ### Example 1: "I want to make a browser-based 2D platformer" → Start with `game-development/web-games` for framework selection → Then `game-development/2d-games` for sprite/tilemap patterns → Reference `game-development/game-design` for level design ### Example 2: "Mobile puzzle game for iOS and Android" → Start with `game-development/mobile-games` for touch input and stores → Use `game-development/game-design` for puzzle balancing ### Example 3: "Multiplayer VR shooter" → `game-development/vr-ar` for comfort and immersion → `game-development/3d-games` for rendering → `game-development/multiplayer` for networking --- > **Remember:** Great games come from iteration, not perfection. Prototype fast, then polish.