Comprehensive game design theory covering MDA framework, player psychology, balance principles, and progression systems. Master why games are fun.
Analyzes game mechanics, player psychology, and reward systems to diagnose engagement issues and optimize core loops. Use when designing gameplay, troubleshooting boredom/frustration, or balancing difficulty curves.
/plugin marketplace add pluginagentmarketplace/custom-plugin-game-developer/plugin install custom-plugin-game-developer@pluginagentmarketplace-game-developerThis skill inherits all available tools. When active, it can use any tool Claude has access to.
assets/design_config.yamlreferences/DESIGN_GUIDE.mdscripts/design_analyzer.py┌─────────────────────────────────────────────────────────────┐
│ MDA FRAMEWORK │
├─────────────────────────────────────────────────────────────┤
│ MECHANICS (Rules): │
│ → Player actions, constraints, state changes │
│ → Example: Jump has height limit, costs stamina │
│ ↓ │
│ DYNAMICS (Behavior): │
│ → Emergent gameplay from mechanic interactions │
│ → Example: Wall-jump combos, speedrun routes │
│ ↓ │
│ AESTHETICS (Experience): │
│ → Emotional responses: Fun, tension, achievement │
│ → Example: Flow state, satisfaction, immersion │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ ENGAGEMENT LOOP │
├─────────────────────────────────────────────────────────────┤
│ 1. INPUT → Player takes action │
│ 2. PROCESS → Game calculates results │
│ 3. FEEDBACK → Immediate visual/audio response │
│ 4. REWARD → Progress, points, unlocks │
│ 5. REPEAT → Loop invites next iteration │
│ │
│ Loop Quality Criteria: │
│ ✓ Fast feedback (< 100ms) │
│ ✓ Clear causation │
│ ✓ Rewarding outcomes │
│ ✓ Compelling repetition │
└─────────────────────────────────────────────────────────────┘
Anxiety
↑
Hard │ ████
│ ██████ ← FLOW CHANNEL
Skill │ ████████ (Optimal Engagement)
Level │████████████
Easy │██████████████
└──────────────────→
Low Challenge High
TARGET: Match challenge to player skill
| Type | Motivation | Design For |
|---|---|---|
| Achiever | Goals, progression | Achievements, levels |
| Explorer | Discovery, secrets | Hidden content, lore |
| Socializer | Community | Chat, guilds, co-op |
| Killer | Competition | PvP, leaderboards |
SELF-DETERMINATION THEORY:
┌─────────────────────────────────────────────────────────────┐
│ AUTONOMY: Choice and control over actions │
│ COMPETENCE: Mastery and skill demonstration │
│ RELATEDNESS: Connection to characters/community │
└─────────────────────────────────────────────────────────────┘
REWARD TYPES:
┌─────────────────────────────────────────────────────────────┐
│ INTRINSIC (Internal): │
│ • Achievement satisfaction │
│ • Creative expression │
│ • Curiosity fulfillment │
│ • Skill mastery │
├─────────────────────────────────────────────────────────────┤
│ EXTRINSIC (External): │
│ • Points, scores │
│ • Unlocks, cosmetics │
│ • Leaderboard position │
│ • Currency rewards │
└─────────────────────────────────────────────────────────────┘
REWARD SCHEDULING:
• Fixed Ratio: Every N actions (predictable)
• Variable Ratio: Random timing (engaging but ethical concerns)
• Fixed Interval: Every N seconds
• Milestone: At progression checkpoints
| Aspect | Goal | Technique |
|---|---|---|
| Mechanical | All options viable | Counter-play, trade-offs |
| Economic | Meaningful scarcity | Sinks and faucets |
| Difficulty | Appropriate challenge | Dynamic scaling |
| Competitive | Fair play | Mirror balance, no dominance |
┌─────────────────────────────────────────────────────────────┐
│ PROBLEM: Players find game boring │
├─────────────────────────────────────────────────────────────┤
│ ROOT CAUSES: │
│ • Challenge too easy (below flow channel) │
│ • No clear goals or progression │
│ • Feedback loop too slow │
├─────────────────────────────────────────────────────────────┤
│ SOLUTIONS: │
│ → Increase challenge curve │
│ → Add clear milestones and rewards │
│ → Speed up core loop, add variety │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ PROBLEM: Players frustrated / quitting │
├─────────────────────────────────────────────────────────────┤
│ ROOT CAUSES: │
│ • Difficulty spike (above flow channel) │
│ • Unclear mechanics or feedback │
│ • Unfair or random feeling deaths │
├─────────────────────────────────────────────────────────────┤
│ SOLUTIONS: │
│ → Smooth difficulty curve │
│ → Improve tutorial and feedback │
│ → Make deaths feel fair and educational │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ PROBLEM: Dominant strategy / no variety │
├─────────────────────────────────────────────────────────────┤
│ SOLUTIONS: │
│ → Add counter-play to dominant options │
│ → Buff underused alternatives │
│ → Create situational advantages │
└─────────────────────────────────────────────────────────────┘
PRE-PRODUCTION:
□ Target audience defined
□ Core loop documented
□ Unique selling point clear
□ Reference games analyzed
PRODUCTION:
□ Mechanics serve aesthetics
□ Feedback loops verified
□ Balance spreadsheets maintained
□ Playtest schedule in place
POLISH:
□ First-time user experience tested
□ Difficulty curve validated
□ Reward timing optimized
□ Edge cases handled
Use this skill: When designing game systems, understanding player psychology, or balancing gameplay.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.