Progression Systems
Learning Objectives: By the end of this lesson, you will be able to:
- Design XP curves that create satisfying player growth
- Understand vertical, horizontal, and knowledge-based progression
- Create skill trees with meaningful choices
- Balance progression pacing for different game lengths
- Avoid common progression pitfalls like power creep and dead levels
1. Welcome and Introduction (5 minutes)
Icebreaker Activity
Think about a game where you felt genuinely excited to level up. What made those moments special? Now think of a game where leveling felt like a chore—just grinding numbers. What was different?
Progression is the promise that time invested will be rewarded. When done well, it’s incredibly motivating. When done poorly, it’s exhausting.
Lesson Overview
- Duration: 90-120 minutes
- Prerequisites: Lessons 1-4 (MDA, Loops, Feedback, Combat)
- Materials Needed: Spreadsheet software (Excel/Google Sheets)
2. Learning Objectives and Session Outline (5 minutes)
What We’ll Cover Today:
- Progression Types - Vertical, horizontal, and knowledge
- XP and Leveling - Curves and pacing
- Skill Trees - Meaningful choices and build diversity
- Unlock Systems - Gates and rewards
- Avoiding Pitfalls - Power creep, dead levels, overwhelming complexity
- Case Studies - Learning from successful progression systems
Success Criteria:
By the end of this session, you should be able to design an XP curve and skill tree for any game concept.
3. Foundation Knowledge (15-20 minutes)
Core Concepts
What is Progression?
Progression is any system that makes players more capable over time. It’s the answer to “Why should I keep playing?”
Real-World Analogy: Learning a musical instrument has natural progression. You start with basic scales, gradually learn songs, and eventually master complex pieces. Games formalize this journey with explicit systems.
Why This Matters:
- Progression provides goals and motivation
- It teaches game mechanics gradually
- It creates attachment through investment
- It paces content delivery
Types of Progression
| Type | Description | Example |
|---|---|---|
| Vertical | Direct power increase | Level 50 > Level 10 |
| Horizontal | More options, same power | Unlocking new classes |
| Knowledge | Player skill increases | Learning boss patterns |
Most games use combinations of all three.
Key Terminology
- XP (Experience Points): Currency that drives level advancement
- Level Curve: How much XP is needed per level
- Power Curve: How player power increases with level
- Skill Tree: Branching choices for ability unlocks
- Talent Point: Currency spent in skill trees
- Soft Cap: Point where progress slows significantly
- Hard Cap: Maximum achievable level/power
4. Detailed Explanation and Examples (25-30 minutes)
Vertical Progression
Vertical progression directly increases player power. Higher level = objectively stronger.
Components of Vertical Progression
- Stats Growth: HP, Damage, Speed, etc. increase
- Ability Unlocks: New skills become available
- Gear Scaling: Better equipment at higher levels
- Content Access: Higher level areas/challenges unlock
Vertical Progression Pros and Cons
Pros:
- Clear sense of growth
- Numbers going up feels good
- Creates power fantasy
- Natural content gating
Cons:
- Can trivialize old content
- Creates “level requirement” barriers
- Difficult to balance end-game
- Can cause “power creep”
Horizontal Progression
Horizontal progression adds options without directly increasing power.
Examples of Horizontal Progression
- New Classes/Characters: Different playstyles, similar power
- Weapons/Tools: Situationally useful, not strictly better
- Cosmetics: Visual progression without gameplay advantage
- Achievements: Recognition without power
Horizontal Progression Pros and Cons
Pros:
- Old content stays relevant
- Encourages experimentation
- Easier to balance
- Better for multiplayer
Cons:
- Less dramatic sense of growth
- Can feel like “sidegrades”
- May overwhelm with choices
- Harder to communicate value
Knowledge Progression
Knowledge progression happens in the player, not the character.
How Knowledge Progression Works
- Pattern Recognition: Learning enemy tells and timing
- System Mastery: Understanding game mechanics deeply
- Optimization: Finding efficient strategies
- Muscle Memory: Physical skill improvement
Design for Knowledge Progression
- Clear Tells: Enemies telegraph attacks
- Consistent Rules: Mechanics work the same way everywhere
- Room to Optimize: Depth to discover
- Skill Expression: Ways for mastery to show
XP Curve Design
The XP curve determines how quickly players level up.
Linear XP Curve
XP per level = Base × Level
Level 2: 100 × 2 = 200 XP
Level 5: 100 × 5 = 500 XP
Level 10: 100 × 10 = 1000 XP
Character: Consistent, predictable growth. Each level takes a bit longer.
Exponential XP Curve
XP per level = Base × (Exponent ^ Level)
Level 2: 100 × (1.5 ^ 2) = 225 XP
Level 5: 100 × (1.5 ^ 5) = 760 XP
Level 10: 100 × (1.5 ^ 10) = 5,767 XP
Character: Early levels are fast, later levels are very slow.
Square Root XP Curve (Diminishing)
XP per level = Base × Level^0.5
Level 2: 1000 × 2^0.5 = 1,414 XP
Level 5: 1000 × 5^0.5 = 2,236 XP
Level 10: 1000 × 10^0.5 = 3,162 XP
Character: Slower early game, levels get relatively easier later.
Choosing Your Curve
| Goal | Recommended Curve | Reasoning |
|---|---|---|
| Fast hook, slow endgame | Exponential | Players feel progress immediately |
| Consistent pacing | Linear | Predictable investment |
| Reward dedicated play | Diminishing | Veterans level faster |
| Short game | Flat | Similar time per level |
Skill Trees
Skill trees let players customize their progression path.
Skill Tree Structures
Linear Tree:
[Skill 1] → [Skill 2] → [Skill 3] → [Ultimate]
Simple, clear progression. No real choices.
Branching Tree:
[Ultimate A]
↗
[Start] → [Choice Point]
↘
[Ultimate B]
Clear fork, meaningful choice. Can feel limiting.
Web/Mesh Tree:
[A] ─── [B] ─── [C]
│ ╲ │ ╱ │
│ ╲ │ ╱ │
[D] ─── [E] ─── [F]
│ ╱ │ ╲ │
│ ╱ │ ╲ │
[G] ─── [H] ─── [I]
Maximum freedom, can be overwhelming. Path of Exile style.
Common Misconceptions
-
Misconception: “More levels = more content” Reality: Empty levels (with no meaningful unlock) feel bad. Quality over quantity.
-
Misconception: “Players want maximum power” Reality: Players want satisfying power. Growing from 100 to 200 damage feels better than 1000 to 1010.
-
Misconception: “Skill trees should be balanced” Reality: Some options can be situational. Not every path needs equal effectiveness in all situations.
5. Live Coding Demonstration (20-25 minutes)
Example 1: Designing an XP Curve
Scenario: Design leveling for a 40-hour RPG, levels 1-50
Step 1: Set Target Pace
total_play_time = 40 * 60 # 2400 minutes
total_levels = 49 # Reaching level 50 from level 1
# Early game: 1 level every 15 minutes (levels 1-10)
# Mid game: 1 level every 45 minutes (levels 11-35)
# Late game: 1 level every 90 minutes (levels 36-50)
early_time = 10 * 15 # 150 minutes
mid_time = 25 * 45 # 1125 minutes
late_time = 15 * 90 # 1350 minutes
total = 150 + 1125 + 1350 # 2625 minutes ≈ 44 hours (close enough)
Step 2: Calculate XP Per Level
def xp_for_level(level):
if level <= 10:
return 100 * level # Easy early game
elif level <= 35:
return 500 + (level - 10) * 200 # Steady mid game
else:
return 5500 + (level - 35) * 500 # Slow late game
# Test
for level in [1, 5, 10, 20, 35, 45, 50]:
print(f"Level {level}: {xp_for_level(level)} XP needed")
# Output:
# Level 1: 100 XP needed
# Level 5: 500 XP needed
# Level 10: 1000 XP needed
# Level 20: 2500 XP needed
# Level 35: 5500 XP needed
# Level 45: 10500 XP needed
# Level 50: 13000 XP needed
Step 3: Map to XP Sources
# If monsters give level-appropriate XP
def xp_per_monster(player_level):
return 10 + player_level * 5 # Scales with player
# At level 10, monsters give: 10 + 50 = 60 XP
# Need 1000 XP for level 11
# = ~17 monsters + quests/bonus XP
# At level 35, monsters give: 10 + 175 = 185 XP
# Need 5500 XP for level 36
# = ~30 monsters + quests/bonus XP
Example 2: Building a Skill Tree
Scenario: Design a mage skill tree with three specializations
Step 1: Define Philosophy
Fire Mage: Burst damage, risky
Ice Mage: Control, defensive
Lightning Mage: Consistent damage, mobility
Step 2: Create Structure
skill_tree = {
'core': {
'fireball': {'cost': 1, 'prereq': None, 'effect': 'Basic ranged attack'},
'frost_bolt': {'cost': 1, 'prereq': None, 'effect': 'Basic slow'},
'spark': {'cost': 1, 'prereq': None, 'effect': 'Basic chain attack'},
},
'fire': {
'pyroblast': {'cost': 2, 'prereq': 'fireball', 'effect': '+100% fireball damage'},
'ignite': {'cost': 2, 'prereq': 'pyroblast', 'effect': 'Fire attacks burn'},
'combustion': {'cost': 3, 'prereq': 'ignite', 'effect': 'Ultimate: Massive AoE'},
},
'ice': {
'blizzard': {'cost': 2, 'prereq': 'frost_bolt', 'effect': 'AoE slow'},
'freeze': {'cost': 2, 'prereq': 'blizzard', 'effect': 'Slowed enemies freeze'},
'ice_barrier': {'cost': 3, 'prereq': 'freeze', 'effect': 'Ultimate: Immunity'},
},
'lightning': {
'chain_lightning': {'cost': 2, 'prereq': 'spark', 'effect': 'Hits 3 targets'},
'static_field': {'cost': 2, 'prereq': 'chain_lightning', 'effect': '%HP damage'},
'thunderstorm': {'cost': 3, 'prereq': 'static_field', 'effect': 'Ultimate: Teleport + damage'},
}
}
# Total points available: 1 per level, 50 levels = 50 points
# Core: 3 points (mandatory foundation)
# Specialization: 6 points for one path
# Remaining: 41 points for secondary trees and utility
Step 3: Add Cross-Tree Synergies
hybrid_skills = {
'frostfire': {
'cost': 3,
'prereq': ['pyroblast', 'blizzard'],
'effect': 'Fire attacks apply slow'
},
'storm_surge': {
'cost': 3,
'prereq': ['chain_lightning', 'freeze'],
'effect': 'Lightning shatters frozen enemies'
},
'elemental_mastery': {
'cost': 5,
'prereq': ['combustion', 'ice_barrier', 'thunderstorm'],
'effect': 'Reduce all cooldowns by 30%'
}
}
Example 3: Preventing Dead Levels
Problem: Players hit levels with no meaningful unlock
Analysis:
# Every 5 levels, check what players unlock
level_unlocks = {
1: "Game start - Tutorial abilities",
2: "Unlock: Basic skill choice",
3: "Stat boost only", # DEAD LEVEL
4: "Stat boost only", # DEAD LEVEL
5: "Unlock: First talent point",
6: "Stat boost only", # DEAD LEVEL
7: "Stat boost only", # DEAD LEVEL
8: "Stat boost only", # DEAD LEVEL
9: "Stat boost only", # DEAD LEVEL
10: "Unlock: New ability",
}
# Problem: Levels 3-4 and 6-9 feel unrewarding
Solution:
improved_unlocks = {
1: "Tutorial abilities",
2: "Talent point + new ability slot",
3: "Gear slot: Helmet",
4: "Talent point",
5: "Unlock: Specialty choice",
6: "New ability",
7: "Talent point",
8: "Gear slot: Gloves",
9: "New ability",
10: "Milestone reward + Talent point",
}
# Every level has SOMETHING new
Design Principle: Every level should either:
- Unlock a new ability
- Grant meaningful stat boost (big enough to notice)
- Provide a talent/skill point
- Open new content
- Award cosmetic/achievement
6. Hands-On Practice (30-40 minutes)
Exercise 1: XP Curve Design (10 minutes)
Objective: Create a complete XP curve
Scenario: Design leveling for a mobile game with:
- 30 levels total
- 10 hours average playtime
- First 10 levels should take 1 hour total
- Levels 10-20 should take 3 hours
- Levels 20-30 should take 6 hours
Deliverables:
- XP requirements for all 30 levels
- XP per common action (killing monster, completing quest)
- Graph showing cumulative time to reach each level
- Identify any pacing problems
Template (spreadsheet):
| Level | XP Required | XP from Level 1 | Est. Time to Reach |
|-------|-------------|-----------------|-------------------|
| 1 | 0 | 0 | 0 min |
| 2 | ??? | ??? | ??? |
...
Exercise 2: Skill Tree Design (15 minutes)
Objective: Create a meaningful skill tree
Scenario: Design skills for a warrior class in an action RPG:
- 20 skill points total (one per level, 20 levels)
- Two specialization paths: Tank (defensive) and Berserker (offensive)
- Players should feel committed to a path but not locked out of the other
- Include 2-3 hybrid options
Deliverables:
- List of all skills with costs and prerequisites
- Visual diagram of the tree
- Example “build” for Tank specialist
- Example “build” for Berserker specialist
- Example “hybrid” build
Exercise 3: Progression Audit (15 minutes)
Objective: Analyze and fix a broken progression system
Scenario: A game has these problems:
- Players say levels 15-25 are “the grind”
- Most players quit at level 20
- End-game players say level 50 “doesn’t matter”
- New players feel overwhelmed by skill choices
Requirements:
- Hypothesize causes for each problem
- Propose specific fixes for each
- Explain how your fixes interact
- Identify any trade-offs in your solutions
7. Common Pitfalls and Troubleshooting (10 minutes)
Frequent Mistakes
-
Problem: Power creep (each expansion makes old content trivial) Cause: Only adding vertical progression Solution: Add horizontal progression, increase level cap slowly
-
Problem: Players skip content to grind optimal path Cause: Uneven XP rewards make some content inefficient Solution: Balance XP rates across content types
-
Problem: Skill tree has “trap” options that seem good but aren’t Cause: Poor internal testing, options that don’t scale Solution: Test all builds, ensure situational value
-
Problem: Returning players feel lost Cause: Too much new content/complexity since they left Solution: “Catch-up” mechanics, clear returning player experience
Debugging Tips
- Track player drop-off: At what level do players quit?
- Monitor build diversity: Are players all using the same skills?
- Watch new player experience: Where do they get stuck?
- Survey veterans: What feels unrewarding?
Warning Signs
| Symptom | Likely Problem | Check This |
|---|---|---|
| “Level X is the grind” | Pacing spike | XP curve at that point |
| Everyone uses same build | Imbalanced options | Skill effectiveness data |
| Players quit at cap | No endgame progression | Post-cap content |
| New players overwhelmed | Too much too fast | Tutorial and unlock pacing |
8. Best Practices and Professional Tips (5 minutes)
Industry Standards
- First hour: Players should level 3-5 times minimum
- Skill points: Award frequently (every level or every other)
- Respec: Always allow players to redo choices (maybe with cost)
- Visual feedback: Make level-ups feel celebratory
Advanced Techniques
Prestige Systems: Reset progress for permanent bonuses:
Prestige 0: Level 1-50
Prestige 1: Level 1-50 (+10% XP gain)
Prestige 2: Level 1-50 (+20% XP gain, new cosmetics)
Paragon/Infinite Leveling: Post-cap progression that continues forever:
Level 50: Cap
Paragon 1: +1% damage
Paragon 2: +1% health
... continues indefinitely
Seasonal Resets: Periodic fresh starts keep progression meaningful:
Season 1: Everyone starts at level 1
Season ends: Transfer rewards to permanent account
Season 2: Everyone starts at level 1 again
Next Steps in Your Learning Journey
- Study how MMOs handle expansion power creep
- Analyze skill tree diversity in Path of Exile
- Research mobile game progression monetization
- Prototype a progression system in a game engine
9. Summary and Review (5 minutes)
Key Takeaways
- Three types of progression - Vertical (power), Horizontal (options), Knowledge (skill)
- XP curves shape pacing - Choose based on your game’s goals
- Skill trees need meaningful choices - Avoid traps and must-picks
- Every level should reward something - No dead levels
- Horizontal progression helps longevity - Sidegrades keep content relevant
Quick Review Questions
- What’s the difference between vertical and horizontal progression?
- What’s a “dead level” and how do you prevent them?
- When would you use an exponential vs linear XP curve?
- How do you ensure skill tree choices are meaningful?
For Instructors
Teaching Tips
- Use spreadsheets live to show XP curve effects
- Compare progression in games students know
- Have students design skill trees on whiteboards
- Discuss the psychology of “numbers going up”
Assessment Ideas
- Complete XP curve design with spreadsheet analysis
- Skill tree design document with rationale
- Audit of an existing game’s progression system
- Presentation on a game’s handling of post-cap content
Adaptation Notes
- For beginners: Focus on basic XP curves and simple skill trees
- For advanced students: Discuss prestige systems, seasonal models
- For mobile focus: Emphasize monetization integration
- For RPG focus: Deep dive into stat systems and build diversity