Game Developer: Design & Architecture Skill
Shared Knowledge: This skill builds on brain/knowledge/general-problem-solving.md and brain/knowledge/coding-gamedev.md. Always apply those principles alongside the design guidance below.
Plan, design, and reason about games before a single line of code is written. This skill thinks about what makes games enjoyable, how systems interact, and what technical approach will deliver the best player experience.
When to Use This Skill
- Designing a new game or game feature from scratch
- Planning game mechanics, loops, and progression systems
- Evaluating whether a game idea is feasible and fun
- Architecting game systems (inventory, combat, AI, physics, UI)
- Balancing difficulty curves, economy, and player incentives
- Writing a Game Design Document (GDD) or technical design doc
- Choosing the right engine, toolchain, or architecture for a project
- Reviewing an existing game design for quality, coherence, or missing pieces
- Planning multiplayer, networking, or live-service architecture
- Prototyping decisions: deciding what to prototype first and why
Do Not Use This Skill When
- Writing engine-specific implementation code; use
unity, godot, or unreal-engine instead
- Debugging a runtime crash or compiler error in a specific engine
- Performing non-game software engineering (web apps, APIs, CLI tools)
Instructions
- Understand the vision: ask what kind of experience the player should have.
- Identify the core loop: the repeating cycle of actions the player performs.
- Design systems that serve the core loop, not the other way around.
- Validate feasibility against scope, team size, and target platform.
- Produce concrete deliverables (GDD sections, system diagrams, data schemas).
- When the user is ready to implement, recommend the appropriate engine skill.
1. The Core Loop
Every great game has a tight core loop. Identify it first; everything else is built around it.
Core loop template: identify the action → challenge → reward → progression cycle (defined in coding-gamedev.md §1).
Examples by genre:
| Genre |
Action |
Challenge |
Reward |
Progression |
| Platformer |
Run & jump |
Obstacles/enemies |
Coins, checkpoints |
New levels, abilities |
| RPG |
Explore & fight |
Enemy encounters |
XP, loot |
Level up, new areas |
| Puzzle |
Manipulate |
Logic constraint |
Solution, score |
Harder puzzles |
| Survival |
Gather & craft |
Environment/hunger |
Better gear |
Base building |
| Roguelike |
Clear rooms |
Permadeath runs |
Meta-currency |
Unlocks for next run |
Evaluating a Core Loop
Ask these questions:
- Is the action inherently satisfying? (Does the button press feel good?)
- Does the challenge scale? (Can difficulty grow without becoming unfair?)
- Are rewards meaningful? (Do they change how the player plays, not just a number?)
- Does progression create anticipation? (Does the player look forward to what's next?)
If any answer is "no", redesign that part before building anything.
2. Game Systems Design
System Interaction Map
Before coding, map how systems talk to each other:
[Input System] → [Player Controller]
↓
[Combat System] ←→ [AI System]
↓
[Health / Damage]
↓
[Inventory / Loot] ←→ [Economy]
↓
[Progression / XP] → [UI / HUD]
↓
[Save / Load]
3. Player Experience & Feel
Game Feel Checklist
- Input responsiveness: < 100ms from button press to visible reaction
- Visual feedback: Every action has a visual confirmation (particles, screen shake, animation)
- Audio feedback: Hits land with impact sounds; UI clicks confirm interaction
- Camera behavior: Smooth follow, screen shake on impact, no disorienting motion
- Juice: Squash-and-stretch, easing curves, trails, hit-pause (freeze frames)
Difficulty & Flow
Target the flow channel: the sweet spot between anxiety and boredom.
Anxiety (too hard)
\
[FLOW ZONE] ← keep the player here
/
Boredom (too easy)
Techniques:
- Dynamic difficulty adjustment (DDA): adapt behind the scenes
- Player-chosen difficulty with meaningful trade-offs
- Skill-based progression: teach, then test
- Rubber-banding in competitive games: keep races close
4. Economy & Balance
Economy Types
| Type |
Description |
Example |
| Closed |
Fixed resources, no generation or sinks |
Chess, Settlers of Catan |
| Open |
Resources generated and destroyed |
Most RPGs, MMOs |
| Hybrid |
Some fixed, some generated |
Roguelikes with meta-currency |
Balancing Framework
- Define sources (where currency/items come from)
- Define sinks (where they go: shops, upgrades, consumables)
- Model the flow rate: how fast does a player earn vs. spend?
- Simulate or spreadsheet the first 10 hours of play
- Playtest and adjust; math alone never catches feel problems
Loot & Reward Distribution
- Fixed drops: Predictable, good for story items
- Weighted random: Common/rare/epic/legendary tiers
- Pity system: Guarantee a rare drop after N attempts
- Contextual drops: Drop what the player needs (subtly)
5. Technical Architecture Patterns
Entity-Component-System (ECS)
Best for data-heavy games with many similar entities (bullets, enemies, particles).
Entity: just an ID (uint)
Component: pure data (Position, Velocity, Health)
System: logic that operates on components (MovementSystem, DamageSystem)
When to use ECS: High entity counts, performance-critical, data-oriented design.
When NOT to use ECS: Small games, heavily OOP engines, narrative-driven games with few entities.
Component-Based Architecture
Most engines default to this. GameObjects/Nodes have attached components/scripts.
Best practices:
- Favor composition over inheritance
- Keep components small and focused
- Communicate via events, not GetComponent chains
- Avoid deep inheritance hierarchies for game entities
State Machines
State machines for player states, AI, and UI flow (see coding-gamedev.md §3). A concrete transition example:
[Idle] --input--> [Running] --jump--> [Airborne] --land--> [Idle]
|
--hit--> [Stunned] --timer--> [Idle]
6. Multiplayer & Networking Considerations
Architecture Models
| Model |
Latency |
Security |
Complexity |
Best For |
| Peer-to-peer |
Low |
Low |
Medium |
Fighting games, co-op |
| Client-server |
Medium |
High |
High |
Shooters, MMOs |
| Rollback |
Lowest |
Medium |
Very High |
Fighting games, platformers |
| Lockstep |
Variable |
Medium |
Medium |
RTS, turn-based |
Key Decisions
The authority and latency rules live in coding-gamedev.md §7. Game-planning specifics:
- Tick rate: 20-64 Hz typical; higher = more bandwidth, smoother feel.
- State synchronization: Full-state snapshots vs. delta compression vs. event-based.
- Lag compensation: Interpolation for visual smoothness, extrapolation for prediction.
7. Game Design Document (GDD) Template
When asked to produce a GDD, use this structure:
# [Game Title]: Game Design Document
## 1. Vision Statement
One paragraph: what is this game and why will players love it?
## 2. Core Loop
Diagram and description of the primary gameplay cycle.
## 3. Mechanics
Detailed breakdown of every interactive system.
## 4. Progression
How the player advances: XP, unlocks, story gates, skill trees.
## 5. Content Plan
Levels, enemies, items, abilities: scope and quantity.
## 6. Art & Audio Direction
Visual style, color palette, sound design pillars.
## 7. Technical Requirements
Target platforms, performance targets, engine choice, networking model.
## 8. Scope & Milestones
Prototype → Vertical Slice → Alpha → Beta → Release timeline.
## 9. Risks & Mitigations
What could go wrong and how to handle it.
8. Prototyping Strategy
What to Prototype First
- The core mechanic: If this isn't fun in a grey-box, the game won't be fun with art.
- The riskiest technical feature: Networking, procedural generation, physics interactions.
- The most uncertain design question: "Is this fun?" can only be answered by playing it.
Prototyping Rules
Follow the scope discipline in coding-gamedev.md §8 (time-box prototypes, kill what doesn't work). Additionally:
- Use placeholder art (colored shapes, free assets). Art is NOT what you're testing.
- Record playtests. Watch players, don't explain. If they're confused, the design is wrong.
9. Platform & Performance Targets
Performance Budgets
| Platform |
Target FPS |
Frame Budget |
RAM Budget |
| Mobile |
30-60 |
16-33 ms |
1-2 GB |
| Console |
60 (120) |
8-16 ms |
4-12 GB |
| PC (mid) |
60-144 |
7-16 ms |
8-16 GB |
| VR |
72-120 |
8-14 ms |
4-8 GB |
Common Performance Pitfalls
Beyond the engine-agnostic pitfalls in coding-gamedev.md §4, watch for:
- Too many draw calls (batch your geometry)
- Expensive physics with too many colliders
- Uncompressed textures on mobile
- No LOD (Level of Detail) system for 3D games
10. Handoff to Engine Skills
Once design is validated, hand off to the appropriate engine skill:
| Decision Factor |
Unity (unity) |
Godot (godot) |
Unreal (unreal-engine) |
| Language |
C# |
GDScript, C#, C++ |
C++, Blueprints |
| 2D games |
Good |
Excellent |
Capable but heavy |
| 3D AAA |
Good |
Improving |
Industry standard |
| Mobile |
Strong |
Good |
Heavy but capable |
| Open source |
No |
Yes (MIT) |
Source available |
| Team size |
Indie to mid |
Solo to mid |
Mid to AAA |
| Learning curve |
Moderate |
Gentle |
Steep |
Recommend the engine that fits the project's scope, team, and goals, not personal preference.
Limitations
- This skill does not write engine-specific code. Use
unity, godot, or unreal-engine for implementation.
- Game design advice is general; genre-specific nuances may require domain expertise (e.g., competitive FPS netcode, MMO world design).
- Economy balancing and difficulty tuning ultimately require playtesting; no amount of theory replaces real player data.
1---2name: game-developer3description: Game design and development architect. Plans game mechanics, systems, progression loops, player experience, and technical architecture. Use PROACTIVELY before writing any game code to design, plan, and validate game concepts, features, and system interactions.4---56# Game Developer: Design & Architecture Skill78> **Shared Knowledge**: This skill builds on `brain/knowledge/general-problem-solving.md` and `brain/knowledge/coding-gamedev.md`. Always apply those principles alongside the design guidance below.910Plan, design, and reason about games before a single line of code is written. This skill thinks about what makes games enjoyable, how systems interact, and what technical approach will deliver the best player experience.1112## When to Use This Skill1314- Designing a new game or game feature from scratch15- Planning game mechanics, loops, and progression systems16- Evaluating whether a game idea is feasible and fun17- Architecting game systems (inventory, combat, AI, physics, UI)18- Balancing difficulty curves, economy, and player incentives19- Writing a Game Design Document (GDD) or technical design doc20- Choosing the right engine, toolchain, or architecture for a project21- Reviewing an existing game design for quality, coherence, or missing pieces22- Planning multiplayer, networking, or live-service architecture23- Prototyping decisions: deciding what to prototype first and why2425## Do Not Use This Skill When2627- Writing engine-specific implementation code; use `unity`, `godot`, or `unreal-engine` instead28- Debugging a runtime crash or compiler error in a specific engine29- Performing non-game software engineering (web apps, APIs, CLI tools)3031## Instructions32331. Understand the vision: ask what kind of experience the player should have.342. Identify the core loop: the repeating cycle of actions the player performs.353. Design systems that serve the core loop, not the other way around.364. Validate feasibility against scope, team size, and target platform.375. Produce concrete deliverables (GDD sections, system diagrams, data schemas).386. When the user is ready to implement, recommend the appropriate engine skill.3940---4142## 1. The Core Loop4344Every great game has a tight core loop. Identify it first; everything else is built around it.4546**Core loop template:** identify the action → challenge → reward → progression cycle (defined in `coding-gamedev.md` §1).4748**Examples by genre:**4950| Genre | Action | Challenge | Reward | Progression |51| ----------- | --------------- | ----------------- | ------------------ | -------------------- |52| Platformer | Run & jump | Obstacles/enemies | Coins, checkpoints | New levels, abilities |53| RPG | Explore & fight | Enemy encounters | XP, loot | Level up, new areas |54| Puzzle | Manipulate | Logic constraint | Solution, score | Harder puzzles |55| Survival | Gather & craft | Environment/hunger | Better gear | Base building |56| Roguelike | Clear rooms | Permadeath runs | Meta-currency | Unlocks for next run |5758### Evaluating a Core Loop5960Ask these questions:6162- **Is the action inherently satisfying?** (Does the button press feel good?)63- **Does the challenge scale?** (Can difficulty grow without becoming unfair?)64- **Are rewards meaningful?** (Do they change how the player plays, not just a number?)65- **Does progression create anticipation?** (Does the player look forward to what's next?)6667If any answer is "no", redesign that part before building anything.6869---7071## 2. Game Systems Design7273### System Interaction Map7475Before coding, map how systems talk to each other:7677```78[Input System] → [Player Controller]79 ↓80 [Combat System] ←→ [AI System]81 ↓82 [Health / Damage]83 ↓84 [Inventory / Loot] ←→ [Economy]85 ↓86 [Progression / XP] → [UI / HUD]87 ↓88 [Save / Load]89```9091---9293## 3. Player Experience & Feel9495### Game Feel Checklist9697- **Input responsiveness**: < 100ms from button press to visible reaction98- **Visual feedback**: Every action has a visual confirmation (particles, screen shake, animation)99- **Audio feedback**: Hits land with impact sounds; UI clicks confirm interaction100- **Camera behavior**: Smooth follow, screen shake on impact, no disorienting motion101- **Juice**: Squash-and-stretch, easing curves, trails, hit-pause (freeze frames)102103### Difficulty & Flow104105Target the **flow channel**: the sweet spot between anxiety and boredom.106107```108Anxiety (too hard)109 \110 [FLOW ZONE] ← keep the player here111 /112Boredom (too easy)113```114115**Techniques:**116- Dynamic difficulty adjustment (DDA): adapt behind the scenes117- Player-chosen difficulty with meaningful trade-offs118- Skill-based progression: teach, then test119- Rubber-banding in competitive games: keep races close120121---122123## 4. Economy & Balance124125### Economy Types126127| Type | Description | Example |128| ---------- | ---------------------------------------- | ------------------------------ |129| **Closed** | Fixed resources, no generation or sinks | Chess, Settlers of Catan |130| **Open** | Resources generated and destroyed | Most RPGs, MMOs |131| **Hybrid** | Some fixed, some generated | Roguelikes with meta-currency |132133### Balancing Framework1341351. Define **sources** (where currency/items come from)1362. Define **sinks** (where they go: shops, upgrades, consumables)1373. Model the **flow rate**: how fast does a player earn vs. spend?1384. Simulate or spreadsheet the first 10 hours of play1395. Playtest and adjust; math alone never catches feel problems140141### Loot & Reward Distribution142143- **Fixed drops**: Predictable, good for story items144- **Weighted random**: Common/rare/epic/legendary tiers145- **Pity system**: Guarantee a rare drop after N attempts146- **Contextual drops**: Drop what the player needs (subtly)147148---149150## 5. Technical Architecture Patterns151152### Entity-Component-System (ECS)153154Best for data-heavy games with many similar entities (bullets, enemies, particles).155156```157Entity: just an ID (uint)158Component: pure data (Position, Velocity, Health)159System: logic that operates on components (MovementSystem, DamageSystem)160```161162**When to use ECS:** High entity counts, performance-critical, data-oriented design.163**When NOT to use ECS:** Small games, heavily OOP engines, narrative-driven games with few entities.164165### Component-Based Architecture166167Most engines default to this. GameObjects/Nodes have attached components/scripts.168169**Best practices:**170- Favor composition over inheritance171- Keep components small and focused172- Communicate via events, not GetComponent chains173- Avoid deep inheritance hierarchies for game entities174175### State Machines176177State machines for player states, AI, and UI flow (see `coding-gamedev.md` §3). A concrete transition example:178179```180[Idle] --input--> [Running] --jump--> [Airborne] --land--> [Idle]181 |182 --hit--> [Stunned] --timer--> [Idle]183```184185---186187## 6. Multiplayer & Networking Considerations188189### Architecture Models190191| Model | Latency | Security | Complexity | Best For |192| ------------------ | ------- | -------- | ---------- | ------------------------ |193| **Peer-to-peer** | Low | Low | Medium | Fighting games, co-op |194| **Client-server** | Medium | High | High | Shooters, MMOs |195| **Rollback** | Lowest | Medium | Very High | Fighting games, platformers |196| **Lockstep** | Variable| Medium | Medium | RTS, turn-based |197198### Key Decisions199200The authority and latency rules live in `coding-gamedev.md` §7. Game-planning specifics:201202- **Tick rate**: 20-64 Hz typical; higher = more bandwidth, smoother feel.203- **State synchronization**: Full-state snapshots vs. delta compression vs. event-based.204- **Lag compensation**: Interpolation for visual smoothness, extrapolation for prediction.205206---207208## 7. Game Design Document (GDD) Template209210When asked to produce a GDD, use this structure:211212```markdown213# [Game Title]: Game Design Document214215## 1. Vision Statement216One paragraph: what is this game and why will players love it?217218## 2. Core Loop219Diagram and description of the primary gameplay cycle.220221## 3. Mechanics222Detailed breakdown of every interactive system.223224## 4. Progression225How the player advances: XP, unlocks, story gates, skill trees.226227## 5. Content Plan228Levels, enemies, items, abilities: scope and quantity.229230## 6. Art & Audio Direction231Visual style, color palette, sound design pillars.232233## 7. Technical Requirements234Target platforms, performance targets, engine choice, networking model.235236## 8. Scope & Milestones237Prototype → Vertical Slice → Alpha → Beta → Release timeline.238239## 9. Risks & Mitigations240What could go wrong and how to handle it.241```242243---244245## 8. Prototyping Strategy246247### What to Prototype First2482491. **The core mechanic**: If this isn't fun in a grey-box, the game won't be fun with art.2502. **The riskiest technical feature**: Networking, procedural generation, physics interactions.2513. **The most uncertain design question**: "Is this fun?" can only be answered by playing it.252253### Prototyping Rules254255Follow the scope discipline in `coding-gamedev.md` §8 (time-box prototypes, kill what doesn't work). Additionally:256257- Use placeholder art (colored shapes, free assets). Art is NOT what you're testing.258- Record playtests. Watch players, don't explain. If they're confused, the design is wrong.259260---261262## 9. Platform & Performance Targets263264### Performance Budgets265266| Platform | Target FPS | Frame Budget | RAM Budget |267| ------------ | ---------- | ------------ | ---------- |268| Mobile | 30-60 | 16-33 ms | 1-2 GB |269| Console | 60 (120) | 8-16 ms | 4-12 GB |270| PC (mid) | 60-144 | 7-16 ms | 8-16 GB |271| VR | 72-120 | 8-14 ms | 4-8 GB |272273### Common Performance Pitfalls274275Beyond the engine-agnostic pitfalls in `coding-gamedev.md` §4, watch for:276277- Too many draw calls (batch your geometry)278- Expensive physics with too many colliders279- Uncompressed textures on mobile280- No LOD (Level of Detail) system for 3D games281282---283284## 10. Handoff to Engine Skills285286Once design is validated, hand off to the appropriate engine skill:287288| Decision Factor | Unity (`unity`) | Godot (`godot`) | Unreal (`unreal-engine`) |289| ------------------ | ---------------------- | ------------------------- | ------------------------ |290| **Language** | C# | GDScript, C#, C++ | C++, Blueprints |291| **2D games** | Good | Excellent | Capable but heavy |292| **3D AAA** | Good | Improving | Industry standard |293| **Mobile** | Strong | Good | Heavy but capable |294| **Open source** | No | Yes (MIT) | Source available |295| **Team size** | Indie to mid | Solo to mid | Mid to AAA |296| **Learning curve** | Moderate | Gentle | Steep |297298Recommend the engine that fits the project's scope, team, and goals, not personal preference.299300---301302## Limitations303304- This skill does not write engine-specific code. Use `unity`, `godot`, or `unreal-engine` for implementation.305- Game design advice is general; genre-specific nuances may require domain expertise (e.g., competitive FPS netcode, MMO world design).306- Economy balancing and difficulty tuning ultimately require playtesting; no amount of theory replaces real player data.