Phase 1: Identify Balance Domain
Determine the balance domain from $ARGUMENTS:
- Combat → weapon/ability DPS, time-to-kill, damage type interactions
- Economy → resource faucets/sinks, acquisition rates, item pricing
- Progression → XP/power curves, dead zones, power spikes
- Loot → rarity distribution, pity timers, inventory pressure
- File path given → load that file directly and infer domain from content
If no argument, use question:
- "Which system should I check for balance?"
- Options:
[A] Combat balance / [B] Economy balance / [C] Progression balance / [D] Loot balance
Phase 2: Gather Context
Run these in parallel using Glob/Grep:
Glob pattern="assets/data/**/*.json" → find all data files
Glob pattern="assets/data/**/*.tres" → find Godot resource data files
Grep pattern="balance" path="design/gdd/" → find relevant GDDs
Glob pattern="design/balance/**/*.md" → find previous balance reports
- Read the GDD for the identified domain from
design/gdd/
- Read all relevant data files from
assets/data/
- Extract intended design targets, tuning knobs, and expected value ranges from the GDD
Phase 3: Delegate Expert Analysis
Spawn specialist agents via Task in parallel for the identified domain. Pass the full GDD content and data file content to each agent.
Combat balance → spawn systems-designer
Ask them to:
- Calculate DPS for all weapons/abilities at each power tier
- Check time-to-kill at each tier
- Identify any options that dominate all others (strictly better)
- Check if defensive options can create unkillable states
- Verify damage type/resistance interactions are balanced
- Produce a table of outliers with expected vs actual values
Economy balance → spawn economy-designer
Ask them to:
- Map all resource faucets and sinks with flow rates
- Project resource accumulation over time
- Check for infinite resource loops
- Verify gold sinks scale with gold generation
- Check if any items are never worth purchasing
- Produce a resource flow diagram in table form
Progression balance → spawn systems-designer
Ask them to:
- Plot the XP curve and power curve
- Check for dead zones (no meaningful progression for too long)
- Check for power spikes (sudden jumps in capability)
- Verify content gates align with expected player power
- Check if skip/grind strategies break intended pacing
- Produce a progression curve health assessment
Loot balance → spawn economy-designer
Ask them to:
- Calculate expected time to acquire each rarity tier
- Check pity timer math
- Verify no loot is strictly useless at any stage
- Check inventory pressure vs acquisition rate
- Produce a drop table health assessment
Always also spawn economy-designer for a cross-domain check: pass all agent findings and ask for any cross-domain imbalance (e.g., combat rewards flooding the economy, progression gated by an unbalanced loot table).
Phase 4: Synthesize Findings
Collect all agent outputs. Identify:
- Outliers: values outside expected ranges, confirmed by agents
- Degenerate strategies: player behaviors that break intended balance
- Conflicts: disagreements between agents on what constitutes an issue
Surface any agent disagreements to the user via question before proceeding.
Phase 5: Output the Analysis
Present the synthesized report:
## Balance Check: [System Name]
### Data Sources Analyzed
- [List of files read]
### Agent Contributors
- systems-designer: [findings summary]
- economy-designer: [findings summary]
### Health Summary: [HEALTHY / CONCERNS / CRITICAL ISSUES]
### Outliers Detected
| Item/Value | Expected Range | Actual | Severity | Issue |
|-----------|---------------|--------|----------|-------|
### Degenerate Strategies Found
- [Strategy description and why it is problematic]
### Progression Analysis
[Graph description or table showing progression curve health]
### Cross-Domain Impact
[economy-designer findings on how this domain affects others]
### Recommendations
| Priority | Issue | Suggested Fix | Impact | Owner |
|----------|-------|--------------|--------|-------|
Ask: "May I write this balance report to design/balance/balance-check-[system]-[date].md?"
If yes, write the file (create design/balance/ directory if needed).
Phase 6: Fix & Verify Cycle
After writing the report, use question:
"Would you like to fix any of these balance issues now?"
- Options:
[A] Yes — fix the highest-priority issue / [B] Yes — let me pick which one / [C] No — save the report for later
If yes:
- Ask which issue to address first (refer to the Recommendations table by priority row)
- Guide the user to update the relevant data file in
assets/data/ or formula in design/balance/
- After each fix, offer to re-run the relevant balance checks to verify no new outliers were introduced
- If the fix changes a tuning knob defined in a GDD or referenced by an ADR, remind:
"This value is defined in a design document. Run /propagate-design-change [path] on the affected GDD to find downstream impacts before committing."
If no:
- Remind: "Re-run
/balance-check after fixes to verify. The report is saved at design/balance/balance-check-[system]-[date].md."
Recommended Next Steps
/propagate-design-change [gdd-file] — if fixes changed GDD-defined values
/consistency-check — verify fixed values don't conflict with other GDDs
/design-review [gdd-file] — if the balance changes require design re-validation
/architecture-decision — if a balance fix requires a new technical pattern