Search

PythonReactSEOPDF
GitHub Skill

game-development

Game development orchestrator. Routes to platform-specific skills based on project needs.

whodaniel☆ 2 Repository stars0 Repository forks

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

View source ↗Guides

Skill instructions

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.

Examples

Read the usage examples in the source repository.

View source ↗

Source history

Indexed on
2026-01-20
Index updated
2026-01-26
Branch
main

Index and sync dates describe this directory. View the source repository for code history.

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!