Balancing an endless mode
A practical method for balancing an endless roguelite mode with pressure curves, weighted pools, checkpoints, soft limits, deterministic runs, simulations, and useful playtest logs.
ยท MEKAI Games
Define what should end the run
An endless mode still needs a clear failure model. Decide whether runs end because rewards stop keeping pace, mistakes accumulate, boss rules stack, resources expire or decisions become harder. Raising every number forever is not a design; it is only a timer.
For a decision-driven game, pressure should create harder trade-offs while keeping choices readable. The player should usually understand why the run ended.
Use several curves, not one multiplier
Separate pressure into axes: opponent difficulty, economy, card quality, boss frequency and recovery opportunities. Each curve can grow at a different rate and pause at checkpoints.
Use soft limits before hard limits. For example, reduce the frequency of powerful recovery cards instead of suddenly removing every recovery option. This preserves variety while making long runs progressively less forgiving.
- Early: teach the pool and let builds form.
- Mid: demand synergy and resource planning.
- Late: introduce rule combinations and scarce recovery.
- Extreme: score mastery without promising permanent fairness.
Control pools with weights and gates
Build opponent and reward pools for ranges of progression. Filter impossible combinations first, then use weighted selection. Keep the run seed so a suspicious sequence can be replayed exactly.
A pity rule can prevent several empty shops or repeated counters in a row. Pity should protect the quality of decisions, not guarantee victory. Log when it activates so it can be balanced instead of remaining invisible.

Simulate before asking for playtests
A lightweight simulation can run thousands of seeded offer sequences without animation. It will not tell you whether the mode feels good, but it can find impossible economies, dead reward pools and progression ranges where one rarity disappears.
Use bots with simple policies rather than one perfect player. Compare cautious, greedy and random policies. Large differences reveal which systems reward skill and which are dominated by raw luck.
- Median and 90th-percentile run length.
- Cash earned and spent per checkpoint.
- Pick rate and win correlation for each card.
- Reason for failure and last three decisions.
- Number of repeated opponents or unusable offers.
Balance from decisions, not only survival time
A long run is not automatically a good run. Review whether players faced meaningful alternatives, changed plans and understood the cause of failure. Ask what they considered before each major purchase, not only whether they won.
Make one change per test batch where possible. Keep the seed and balance version in every log so results from different builds are never mixed.