Mechanics & Formulas

The exact formulas the game runs — how your stats combine into damage, defense, drops and more.

Resist cap
75%
Hit chance
5–100%
Coins / kill
level × 3
Substat roll
66.7–100%
Drop rolls
independent
Level cap
150

Damage

Each hit runs through this pipeline, in order:

  1. 1
    Element multiplier — multiply by the weakness-chart factor for your element vs the target's.
  2. 2
    Resists & element bonuses — see the formula below; combined resist is capped at 75%.
  3. 3
    Critical → subtract Def / MdefHit vs Flee → round.
totalResist = min(ElementResist + AllResist, 75)
value = (1 − totalResist/100)
      × (DamageElement% + 1)
      × (DamageToElement% + 1)
      × elementMultiplier × value

element-wheel bonus (by distance):
  near    → × (NearElementDmg% + 1)
  opposite→ × (OppositeElementDmg% + 1)
Healing uses the same path with a negative value: value × (Healing% + 1). Against a target with the heal-reversal status it becomes × −2 — healing turns into double damage.

Hit · Crit · Defense

HitChance      = clamp(Hit − Flee + 100, 5, 100)
CriticalDamage = base + Luk/5 + CritDamage
Def            = Def × Def%
ResistCap      = 75%  (element + all resist)

Hit chance can never drop below 5% or exceed 100%.

Monster Stats (by level)

Attack(lvl)    = round( (curveSum×0.25 + 15 + b
                 + ATK×(a/200 + 1)) × mult × 1.5 )
MaxHealth(lvl) = round( f(Vit, baseHp, HpMult)
                 × curveSum )

A monster's HP and attack scale off its level curve and innate stats.

Drops

Every drop rolls independently — no weighted slots, no “one drop per kill”, no pity.

drops if  random(0..1) < DropChance/100
Coins = level × 3
EXP   = ExpDrop[level]   (see EXP Table)

Expected drops per kill = sum of every item's DropChance ÷ 100.

→ EXP & drop table

Status Effects

  • Applying gates on the target being alive, then rolls its resist / chance.
  • Effects are queued, then merged each tick — capped by a per-effect max stack and per-effect cooldowns.
  • Stacking is capped accumulation, not a blind refresh.

Enchant / Substats

Substats are picked uniformly from each slot's pools — there are no per-stat weights to chase.

value = max × (roll/100 × 0.3333 + 0.6667)
roll 0..100  →  66.7% .. 100% of max

A perfect roll is 100% of max; the worst is 66.7%. The distribution is flat, averaging ~83%.