t1k:designer:rpg:core
| Field | Value |
|---|---|
| Module | rpg |
| Version | 1.7.2 |
| Effort | medium |
| Tools | — |
Keywords: character progression, design, role-playing, RPG
How to invoke
Section titled “How to invoke”/t1k:designer:rpg:coreRPG Game Design
Section titled “RPG Game Design”Handles RPG game design: stats, classes, progression, loot, combat formulas, enemy design.
Does NOT handle economy/currency (→ game-economy-design) or balance validation (→ game-balance-tools).
Stat System Design
Section titled “Stat System Design”Primary stats (direct inputs): STR, AGI, INT, VIT, DEX, LCK Derived stats (computed): ATK, DEF, HP, MANA, CRIT_RATE, CRIT_DMG, SPEED
Modifier types (apply in order):
- Flat additive (
+50 ATK) - Percent additive (
+20% ATK— sum all, apply once) - Percent multiplicative (
×1.15— each multiplied separately)
Scaling formula: derived = (base + flat) × (1 + sumPctAdd) × prod(pctMul)
Class / Role Design
Section titled “Class / Role Design”| Role | Primary Stat | Win Condition |
|---|---|---|
| Tank | VIT | Survive; hold aggro |
| DPS | STR/AGI/INT | Kill fast |
| Support | INT/LCK | Amplify allies |
| Hybrid | 2 primaries | Flexible; lower ceiling |
Design rule: each class must have a clear answer to “what does this do that others can’t?”
Progression Curves
Section titled “Progression Curves”XP to next level — exponential base:
xpRequired(L) = baseXP × growthRate^(L-1) — e.g., base=100, rate=1.15
Stat growth per level — linear + milestone spikes:
stat(L) = statBase + perLevel × L + bonus[L] where bonus fires at milestone levels (10, 20, 30…)
Power scaling check: level N enemy should be defeatable by level-N player in ~6–10 hits. Level-gated content: gate at 80% of content’s recommended level range.
Loot Tables
Section titled “Loot Tables”Rarity tiers: Common (60%) / Uncommon (25%) / Rare (10%) / Epic (4%) / Legendary (1%)
Weighted drop: roll 0–100, map ranges to tiers.
Pity system: after N drops without Legendary, bump rate by pityIncrease per subsequent drop.
pityRate(n) = baseRate + max(0, n - pityThreshold) × pityIncrease
Combat Formula Design
Section titled “Combat Formula Design”Base damage: DMG = ATK × multiplier - DEF × reduction
Clamp minimum: max(DMG, 1) — never zero damage.
Critical hit: DMG × (1 + CRIT_DMG) when roll < CRIT_RATE
Elemental modifier: multiply by elementTable[attacker][defender]
Avoid additive stacking hell — use diminishing returns for defense:
effectiveDEF = DEF / (DEF + defConstant) → asymptotes to 1 (100% reduction never reachable)
Enemy Design Patterns
Section titled “Enemy Design Patterns”Normal enemy: statScale(wave) = baseStats × (1 + waveMultiplier × wave)
Elite: ×1.5–2× normal stats + 1 unique mechanic
Boss: ×5–10× normal + phase transitions + immunity windows
Wave-scaling rule: player DPS should outpace HP gain by ~10% per wave to maintain pacing.
Reference Files
Section titled “Reference Files”| File | Content |
|---|---|
→ See game-balance-tools | DPS/EHP validation, spreadsheet tools |
→ See game-economy-design | Currency, gacha, monetization |
| → See engine implementation skills | Code implementation of these formulas |
Gotchas
Section titled “Gotchas”- DPS curves that feel exponential are usually exponential — cap the exponent.
- Class identity is communicated in the first 3 abilities, not the last — front-load the differentiation.
- Loot tables with >3 rarity tiers turn drops into Excel — keep tiers crisp and meaningful.