⬅ Wiki Home 🧭 Progression 🧱 Items 👾 Enemies

📐 Core Formulas (v0.23.0)

These formulas mirror live gameplay logic and are the reference for balancing changes through the level 60 path.

Tier and Level Gating

tier(floor) = floor((max(1, floor) - 1) / 5)
required_level(floor) = 1 + 4 * tier(floor)
checkpoint floors = multiples of 5
level 60 path target = floors 71-75
stretch tier = floors 76-80

Item and Rarity Scaling

RarityPower multiplierValue multiplier
Common1.001.00
Magic1.121.85
Rare1.384.20
Epic2.5514.00
item_score = ATK*1.45 + DEF*1.2 + HP*0.18 + HEAL*0.22 + MOVE_SPEED*180

Base Rarity Probability by Floor

Floor rangeMagicRareEpic
1-45.0%0.6%0.015%
5-97.0%1.1%0.060%
10-149.0%1.8%0.120%
15-2011.0%2.8%0.240%
21-3013.0%4.2%0.500%
31-4016.0%6.0%1.000%
41+18.0%8.2%1.800%
elite loot quality bonus examples:
dragon   = drop 28.0% + rarity boost
archon   = drop 30.0% + stronger rarity boost
sentinel = drop 34.0% + precision-caster bonus
hydra    = drop 39.0% + apex-caster bonus
titan    = drop 42.0% + strongest rarity boost

Enemy Population / Scaling

desired_enemy_count = min(14 + floor*2 + tier*3, cap)
cap = 52 (floors < 41), 64 (floors >= 41)

base_hp = floor((18 + floor*5) * (1 + tier*0.55))
base_atk = floor((3 + floor) * (1 + tier*0.4))
base_xp = floor((8 + floor*2) * (1 + tier*0.3))
base_gold = floor((2 + rand(5+floor)) * (1 + tier*0.22))

enemy_move_speed = base_enemy_speed * (1 + 0.02 * floor)

special ranged archetypes:
  dragon   = 1 projectile
  archon   = 1 stronger projectile
  sentinel = 1 fast laser shot
  hydra    = 3-way projectile spread

Loot / Economy / Death

loot_roll_on_kill = 12.5% baseline
elite_drop_bonus:
  brute  = 16.0%
  ogre   = 20.0%
  dragon = 28.0% + rarity bonus
  archon = 30.0% + stronger rarity bonus
  titan  = 42.0% + strongest rarity bonus

shop_buy_multiplier(consumable) = x10
shop_buy_multiplier(equipment) = x25

death_penalty = floor(0.10 * xp_need_for_current_level)
if xp_after_penalty <= 0:
  no death, hp set to max(1, floor(35% of hpMax))