How hard does it hit?
Dealing damage
About this page
Skill rows (damage %, Basic Attack, mastery, hit counts), weapon attack and monster defence and elements are the client’s own, read by this site’s extractor. The planner computes with the release versions of these formulas; this page shows the release first and Closed Online Test 2 beside it wherever they differ.
The formulas were reverse engineered from the Public Release client by the players credited on each section, and published on the OSMS data explorer. The numbers they run on here (skill levels, monster stats, map footholds) come out of the client’s own data files, read by this site’s extractor.
Where the release changed something Closed Online Test 2 did, both are shown. Older versions of the game worked differently again, so a number remembered from somewhere else may not apply.
Base damage
Reverse engineered by @Slash, @kirbypickr, @sublimerealist, @jimmybald and @ohmi on Discord
Every hit starts as a range. A weapon attack rolls two numbers and adds them up, a spell rolls one, and Heal, Meso Explosion and the burns each have a formula of their own. Everything after this (defence, element, level, crit) multiplies the range you get here.
1Physical damage
VerifiedChanged since CoT2The short form, which is right for every attack except Prone Stab and meleeing with a ranged weapon:
StatRoll = rand(PrimaryStat × MasteryMult, PrimaryStat) BaseRoll = rand(0.8, 1.0) Damage = SkillMult × (BaseRoll + (StatRoll × WepMult + SecondaryStat) / 100 + AttackPower / 50) × WeaponAttack
The full form, with the two divisors the client picks by weapon and action:
StatDiv = 300 if Prone Stab (any weapon)
300 if Bow / Crossbow / Claw and the action is Swing, Stab or Other
100 otherwise (incl. Bow / Crossbow / Claw on Shoot)
AtkDiv = 150 if Prone Stab (any weapon)
150 if Bow / Crossbow / Claw and the action is Swing or Other
50 otherwise (incl. their Stab, and Shoot)
StatRoll = rand(PrimaryStat × MasteryMult, PrimaryStat)
BaseRoll = rand(0.8, 1.0)
Damage = SkillMult × (BaseRoll + (StatRoll × WepMult + SecondaryStat) / StatDiv + AttackPower / AtkDiv) × WeaponAttack
Prone Stab replaces 0.8 and 1.0 with 0.2 and 0.3, and forces WepMult = 1
Lucky Seven forces WepMult = 3.0 in place of the Claw Shoot 2.5- StatRoll and BaseRoll are two separate rolls. One can land low while the other lands high, so most hits sit near the middle of the range and the very top and bottom are rare.
- MasteryMult is (0.1 + MasteryLevel / 10) × 0.7, off your weapon mastery. It only moves the low end: mastery 10 makes it 0.77.
- The action the attack lands on picks WepMult. The skill only matters if it is one of the few with a fixed action (below).
- A bow, crossbow or claw shoots on Shoot (StatDiv 100). The 300 rows are what you get hitting someone with it, like a claw with no stars left.
- Prone Stab is the poke you make lying down. It is weak on purpose.
- Lucky Seven uses its own mastery, z / 1000 off its row. The row says 500, so it is 0.5 whatever your Claw Mastery is.
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. In Closed Online Test 2
MasteryMult = (0.1 + MasteryLevel / 10) × 0.8
Mastery used 0.8, so mastery 10 was 0.88. The release’s low end is a little lower and the high end did not move: the example below is 244.51 – 301.83 now against 260.24 – 301.83 in CoT2.
Try itPhysical range, release and CoT2
Weapon and action
Your numbers
244.51 – 301.83
One hit, before defence
1H Sword on Swing
Public Release
244.51 – 301.83
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. Closed Online Test 2
260.24 – 301.83
- WepMult
- 1.8
- StatDiv / AtkDiv
- 100 / 50
- Mastery, release
- 0.77
- Mastery, CoT2
- 0.88
Starts on OSMS’s example: a Gladius at its own requirements (65 STR, 30 DEX, 47 attack) with Power Strike at 260%. Before defence and everything after it.
2Weapon multipliers
VerifiedWepMult multiplies your primary stat, so it is the biggest number in the formula. The weapon sets the row and the action sets the column. The last column is a basic attack’s average over the actions its weapon draws from (next table).
| Weapon | Swing | Stab | Shoot | Other | Basic attack |
|---|---|---|---|---|---|
| 1.8 | 1.8 | - | 1.8 | 1.8 | |
| 2.5 | 2.5 | - | 2.5 | 2.5 | |
| 2.4 | 1.2 | - | 1.8 | 1.92 | |
| 3 | 2 | - | 2.5 | 2.6 | |
| 2.4 | 1.2 | - | 1.8 | 1.92 | |
| 3 | 2 | - | 2.5 | 2.6 | |
| 1.5 | 3.5 | - | 2.5 | 2.3 | |
| 3.5 | 1.5 | - | 2.5 | 2.7 | |
| 1 | 1 | 2.5 | 1 | 2.5 | |
| 1 | 1 | 2.5 | 1 | 2.5 | |
| 1 | 1 | 2.5 | 1 | 2.5 | |
| 1 | 2 | - | 1.5 | 1.4 | |
| 1.8 | 1.8 | - | 1.8 | 1.8 | |
| 1.8 | 1.8 | - | 1.8 | 1.8 | |
| Barehanded | 1 | 1 | 1 | 1 | 1 |
- A spear stabs at 3.5 and swings at 1.5, and its basic attack stabs two times in five: that averages 2.3. A polearm is the other way round and averages 2.7. A spearman wants stab skills.
- A 1H axe or blunt weapon swings at 2.4 but stabs at 1.2, so a stab-only skill with one is a bad deal.
- Wands and staves only matter here when you whack something with them. Spells never read this table.
Table read out of the client by @kirbypickr, @Slash, @cptbattler and @ohmi on Discord.
3Swing or stab
VerifiedA normal attack picks its animation evenly from a list the weapon owns, so the odds are just what is in the list. Three swings and two stabs is 60/40. Bows, crossbows and claws fire from a second list, so a normal shot is always Shoot; the rows for them here are their melee attacks.
| Weapon | Swing | Stab |
|---|---|---|
| 60% | 40% | |
| 60% | 40% | |
| 60% | 40% | |
| 60% | 40% | |
| 50% | 50% | |
| 100% | - | |
| 100% | - | |
| - | 100% | |
| Barehanded | - | 100% |
4Skills with a fixed action
VerifiedThese skills never roll for swing or stab: the client’s action classifier pins them before it looks at the animation. Double Stab with a dagger stabs at 2.0 every time.
Stab
Double Stab
Savage Blow
Shoot
AvengerCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Other
Rush
AssaulterCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Meso ExplosionCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
ShoutCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Dragon FuryCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Dragon RoarCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Piercing CrusherCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Silver HawkCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Golden EagleCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
The weapon’s default
Threaten
Slow
Poison Breath
Arrow Bomb
Armor CrashCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Elemental CrashCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Power CrashCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
SealCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
DoomCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Poison MistCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Shadow WebCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
InfernoCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
BlizzardCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
- The weapon’s default group is mostly debuffs. Their label is the classifier’s; it puts no multiplier on damage.
- Everything marked CoT2 is a third-job skill. The release has the classifier but none of those skills.
5Magic damage
VerifiedChanged since CoT2MIN = (BasicAttack / 100) × (floor(TotalInt / 2) + MagicAttack) × (TotalInt × MasteryMult / 125 + 1) MAX = (BasicAttack / 100) × (floor(TotalInt / 2) + MagicAttack) × (TotalInt / 125 + 1)
- One roll between MIN and MAX per hit. No weapon multiplier, no swing or stab.
- floor(TotalInt / 2) + MagicAttack is the MAGIC number on your stat window. MagicAttack is gear, scrolls and buffs.
- Basic Attack and mastery both come off the spell’s own row. Magic Claw at 20 is Basic Attack 65 at mastery 10, twice a cast.
- Poison Mist is all burn, Poison Breath’s hit comes from a hidden second skill, and Heal has its own formula below.
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. In Closed Online Test 2
MIN = (BasicAttack / 100) × (floor(TotalInt / 2) + MagicAttack) × (TotalInt × MasteryMult / 100 + 1) MAX = (BasicAttack / 100) × (floor(TotalInt / 2) + MagicAttack) × (TotalInt / 100 + 1)
INT was divided by 100 and mastery used 0.8. A Mithril Wand mage at 60 INT hit Magic Claw for 84.42 – 88.4 there and hits 75.67 – 81.77 now. INT counts for less in the release at both ends, and more so the more INT you have.
Try itMagic range, release and CoT2
The spell and you
75.67 – 81.77
Magic Claw level 20, one hit before defence
It hits 2 times a cast: 151.34 – 163.54 in all.
Public Release
75.67 – 81.77
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. Closed Online Test 2
84.42 – 88.4
- Basic Attack
- 65
- Mastery level
- 10
- MAGIC
- 85
- Hits
- 2
Starts on OSMS’s example: a Mithril Wand at its requirement (60 INT, 55 Magic Attack) casting Magic Claw. CoT2 spells are in the list, marked. Before defence.
6Meso ExplosionCoT2: The skill behind this step is Closed Online Test 2’s; the release client still has the step.
VerifiedMAX = MasteryPercent × 5 × (1 + MesosPerPile / (MesosPerPile + 10)) MIN = MAX / 2
- MasteryPercent is the row’s x over 10: 90% at level 1 and 150% at 30. The tooltip says 146% and 148% at 28 and 29; the row says 144% and 146%, and the row is what the client reads.
- Every pile rolls its own damage and the piles add up, up to 10 at level 1 and 15 at 30.
- Pile size stops paying fast. 10 mesos is ×1.5, 100 is ×1.91, 1,000 is ×1.99, and nothing reaches ×2.
- A Chief Bandit skill, so only CoT2 had it. The release client still has the routine.
Try itMeso Explosion
The skill and the ground
Mastery 150%, up to 15 piles
715.91 – 1,431.82
Damage per pile, before defence
Each pile rolls on its own. 100 mesos drops as a bundle (100 to 999).
- 1 pile, in all
- 716 – 1,432
- Pile bonus
- ×1.909
- Ceiling at any size
- 1,500
The pile on the ground is the icon the client drops for that many mesos. Before defence and the rest.
7Heal
Partly verifiedChanged since CoT2HealBase = ((TotalInt × Roll + TotalLuk) / 1000 + 2.5) × (floor(TotalInt / 2) + MagicAttack) × (RecoveryRate / 100) × ((TargetsHit − 1) × 0.5 + 1) Roll = rand(0.1, 1.2) Damage = trunc(HealBase) / TargetsHit / 1.5
- This is the damage Heal does to undead, not the HP it gives back. How the HP is shared out is not settled yet, which is why this is partly verified.
- RecoveryRate is Heal’s own x: 40 at level 1 to 100 at 30.
- Players and undead share six slots, you included even at full HP. A full party of six leaves no slot for an undead, and Heal hits nothing.
- The roll runs from 0.1 to 1.2, so INT moves the top of the range much more than the bottom.
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. In Closed Online Test 2
HealBase = ((TotalInt × Roll + TotalLuk) / 200 + 3) × (floor(TotalInt / 2) + MagicAttack) × (RecoveryRate / 100) × (TargetsHit × 0.1 + 1) Roll = rand(0.8, 1.0) HealBase = HealBase × (HealBonus / 100 + 1) Damage = trunc(HealBase) / TargetsHit × 0.5
CoT2 counted up to 6 players and 15 undead, and Bless added 1% to 10% on top. High INT and LUK and a Bless did better there. Against a crowd of undead the release keeps more damage on each one.
Try itHeal against undead, release and CoT2
Heal and you
Recovery rate 100
Who it reaches
229.33 – 249
Release damage to each undead, before defence
2 targets in the split.
Public Release
229.33 – 249
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. Closed Online Test 2
213.25 – 224
- Release targets
- 2
- CoT2 targets
- 2
- Recovery rate
- 100
Starts on OSMS’s example: 200 INT, 30 LUK, 80 Magic Attack, you and one undead. Before defence.
8Damage over time
Partly verifiedTotalDamage = (DoTBasicAttack / 100) × (floor(TotalInt / 2) + MagicAttack) × (TotalInt / 125 + 1) EstimatedDamagePerTick = TotalDamage / DoTDurationSeconds
- Defence never touches a burn. The routine does not read either defence.
- The client works out the total and stops there. Splitting it per second comes from the skill text, so that line is the unverified part; every burn in the data ticks once a second.
- Fire Arrow’s burn is 20 Basic Attack over 3 s at level 1 and 50 at 30.
- It still takes the element, the linear level penalty and a crit roll (further down).
Try itA burn
The burn and you
50 Basic Attack over 3 s
234
The whole burn, before element, level and crit
About 78 a second for 3 seconds. Defence never touches it.
- Per second
- 78
- MAGIC
- 180
- INT bracket
- ×2.6
The burn alone, before element, level and crit.
9Bleed
Partly verifiedTotalDamage = (BleedPercent / 100) × ((2 × PrimaryStat + SecondaryStat) / 100 + 1 + AttackPower / 50) × WeaponAttack EstimatedDamagePerTick = TotalDamage / BleedDurationSeconds
- The bleed does not scale off the hit that started it: no skill %, no WepMult, no mastery, no defence.
- Axe Mastery’s row: a 5% chance to bleed for 40% over 3 s at level 1, up to 25% for 100% at 20.
- Like a burn it takes the linear level penalty and can crit.
Try itA bleed
Axe Mastery and you
25% chance, 100% over 3 s
195
The whole bleed, before element, level and crit
About 65 a second for 3 seconds.
- Per second
- 65
- Bleed %
- 100
- Proc chance
- 25%
Starts on OSMS’s example: 100 STR, 50 DEX, 20 attack power, 50 weapon attack.
Opening modifiers
Reverse engineered by @Slash on Discord
Two buffs raise the skill’s damage % before the base roll runs, and one debuff wipes out defence. The release client still has all three steps. The skills behind them are third job, so only CoT2 had them.
10Combo AttackCoT2: The skill behind this step is Closed Online Test 2’s; the release client still has the step.
VerifiedComboBonus = 5 × Orbs × (Orbs − 1) for Panic and Coma ComboBonus = ComboDamage for every other skill SkillMult = SkillMult × (ComboBonus / 100 + 1)
| Orbs | Panic, Coma bonus | Multiplier |
|---|---|---|
| 1 | 0% | ×1.0 |
| 2 | 10% | ×1.1 |
| 3 | 30% | ×1.3 |
| 4 | 60% | ×1.6 |
| 5 | 100% | ×2.0 |
- It needs Combo Attack on and at least one orb.
- Every other skill gets ComboDamage, Combo Attack’s own x: 5% at level 1 to 20% at 30. The orb cap is its y, 3 at level 1 and 5 from level 21.
- It multiplies the skill %, so it multiplies the whole hit. Panic at five orbs does double.
11Elemental ChargeCoT2: The skill behind this step is Closed Online Test 2’s; the release client still has the step.
VerifiedSkillMult = SkillMult × (ChargeDamage / 100 + 1)
- Only while a charge is up.
- ChargeDamage is the charge’s x: 2% at level 1 to 20% at 30. Fire, Ice and Lightning Charge share the numbers.
- The charge also gives the weapon its element, which the element step then reads.
12Armor CrashCoT2: The skill behind this step is Closed Online Test 2’s; the release client still has the step.
VerifiedIf the monster is flagged, WeaponDefense = 0 and the step below is skipped entirely.
- It sets weapon defence to 0 outright. It does not go through the percent and flat slots the next step reads.
- Physical only. Magic defence has no such branch, which matches the skill’s tooltip.
Defence and elements
Reverse engineered by @Slash on Discord
What the monster takes off, in the order the client does it: defence, then element, then the level gap.
13Weapon defence
VerifiedWeaponDefense = max(0, trunc(BaseWeaponDefense × (PercentEffects / 100 + 1)) + FlatEffects) Damage = Damage × 100 / (WeaponDefense + 100)
| Weapon defence | Hit keeps | For example |
|---|---|---|
| 0 | 100% | Snail (Lv 1) |
| 5 | 95.2% | Taurospear (Lv 75) |
| 10 | 90.9% | Slime (Lv 6) |
| 15 | 87% | Zombie Mushroom (Lv 24) |
| 20 | 83.3% | Bubbling (Lv 15) |
| 25 | 80% | Tauromacis (Lv 70) |
| 30 | 76.9% | Stump (Lv 5) |
| 50 | 66.7% | Jr. Boogie 1 (Lv 35) |
| 500 | 16.7% | Iron Hog (Lv 28) |
- Physical hits only. trunc rounds toward zero.
- Iron Hog’s 500 is the top of the release’s normal monsters: a hit keeps 16.7% of itself.
- PercentEffects and FlatEffects are two slots on the monster. Threaten fills the percent one (−2% to −10% by level); Disorder is the likely flat one.
- CoT2’s Blunt Weapon Mastery and Crossbow Mastery had a 1% to 20% chance to skip this step, rolled once per attack, so on a multi-hit skill every hit skipped it or none did. In the release both rows give Critical Damage +1% to +20% instead and carry no chance, so there is nothing to roll.
14Magic defence
VerifiedMagicDefense = max(0, trunc(BaseMagicDefense × (PercentEffects / 100 + 1)) + FlatEffects) Damage = Damage × 100 / (MagicDefense + 100)
- Spells only. The same shape as weapon defence, with its own two slots.
- Nothing in the game lowers magic defence, so this is the number on the monster.
- No proc skips it and Armor Crash does not reach it.
- Fairy 1’s 500 magic defence leaves a spell 16.7%.
15Element
VerifiedDamage = Damage × ElementalMult An attack with one element: 0.0 - immune 0.75 - resistant 1.0 - neutral 1.25 - weak against element An attack with two elements: ElementalMult = 0.25 × (Resistance(Element1) + Resistance(Element2)) Resistance = 0 immune, 1 resistant, 2 neutral, 3 weak
| One element | Multiplier | For example |
|---|---|---|
| Weak | 1.25 | Ice · weakFire Boar |
| Neutral | 1 | No entry |
| Resists | 0.75 | Fire · resistsFire Boar |
| Immune | 0 | Poison · immuneGreen Mushroom |
| Two elements | Immune | Resists | Neutral | Weak |
|---|---|---|---|---|
| Immune (0) | 0 | 0.25 | 0.5 | 0.75 |
| Resists (1) | 0.25 | 0.5 | 0.75 | 1 |
| Neutral (2) | 0.5 | 0.75 | 1 | 1.25 |
| Weak (3) | 0.75 | 1 | 1.25 | 1.5 |
- Only Element Composition carries two elements: Fire with Poison on the Fire/Poison line, Ice with Lightning on the Ice/Lightning line. Both are CoT2’s.
- Only the blend reaches 0.25, 0.5 or 1.5: 1.5 against a monster weak to both, 0 against one immune to both.
- A monster with no entry for the element takes it at 1.0.
| Release monsters | Weak | Resist | Immune |
|---|---|---|---|
| Fire | 17 | 9 | - |
| Ice | 8 | 12 | - |
| Lightning | 8 | 9 | - |
| Poison | 4 | 14 | 3 |
| Holy | 15 | 5 | - |
16Level penalty
VerifiedLevelDiff = EnemyLevel − PlayerLevel No penalty if LevelDiff ≤ 0 Direct hits: LevelDiff < 10: Damage = Damage / (LevelDiff² × 0.005 + 1) LevelDiff ≥ 10: Damage = Damage / (LevelDiff × 0.05 + 1) Damage over time and bleed, at any LevelDiff ≥ 1: Damage = Damage / (LevelDiff × 0.05 + 1)
- Only monsters above you cost you anything. Hitting down never gives a bonus.
- The two branches meet at 10 levels, where both divide by 1.5 and a third of the hit is gone.
- Burns and bleeds use the straight line at every gap, so under 10 levels they lose more than a direct hit: at 5 levels a hit keeps 89% and a burn 80%.
| Levels above | Direct keeps | DoT keeps |
|---|---|---|
| 1 | 99.5% | 95.2% |
| 2 | 98% | 90.9% |
| 3 | 95.7% | 87% |
| 4 | 92.6% | 83.3% |
| 5 | 88.9% | 80% |
| 6 | 84.7% | 76.9% |
| 7 | 80.3% | 74.1% |
| 8 | 75.8% | 71.4% |
| 9 | 71.2% | 69% |
| 10 | 66.7% | 66.7% |
| 11 | 64.5% | 64.5% |
| 12 | 62.5% | 62.5% |
| 13 | 60.6% | 60.6% |
| 14 | 58.8% | 58.8% |
| 15 | 57.1% | 57.1% |
Try itLevel penalty
The gap
888.89
A direct hit after the penalty
The monster is 5 levels above you.
- Direct hit keeps
- 88.89%
- DoT or bleed
- 800
- DoT keeps
- 80%
Starts on OSMS’s example: 1,000 damage, you at 30, the monster at 35. This step alone.
17Element AmplificationCoT2: The skill behind this step is Closed Online Test 2’s; the release client still has the step.
VerifiedDamage = Damage × (ElementAmpDamage / 100 + 1)
- A buff slot the client keeps for spells and burns. The same slot raises the MP cost.
- The skill is a third-job mage’s, so only CoT2 has it. Its row runs y 5% to 35% more magic damage and x 20% to 50% more MP.
- OSMS found the slot but nothing that fills it, so for now treat this step as idle.
Hit effects
Reverse engineered by @Slash on Discord
The rolls and multipliers that work on one hit at a time.
18Critical hit
VerifiedIsCrit = rand(0, 99) < CritRate Damage = Damage × (100 + CritDamage) / 100
- CritRate and CritDamage are the two numbers on your stat window.
- The roll is a whole number from 0 to 99, so a 5% rate crits on 0 to 4.
- Power Knockback always crits. The client checks it by id.
- Burns and bleeds roll for crits too.
19Iron Arrow falloff
VerifiedChanged since CoT2Damage = Damage × 0.8^ConsecutiveHits 1st mob: ×1.0, 2nd: ×0.8, 3rd: ×0.64, 4th: ×0.512
| Monster in the line | Release | CoT2 |
|---|---|---|
| 1 | ×1 | ×1 |
| 2 | ×0.8 | ×0.8 |
| 3 | ×0.64 | ×0.6 |
| 4 | ×0.512 | ×0.4 |
| 5 | ×0.41 | - |
| 6 | ×0.328 | - |
- No other skill has this step. The client checks for Iron Arrow by id.
- The release row hits up to 6 monsters; CoT2’s hit 4.
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. In Closed Online Test 2
Damage = Damage × clamp(1 − ConsecutiveHits × 0.2, 0, 1)
A flat 20% off per monster. The second monster is the same either way; from the third the release keeps more.
20Shadow PartnerCoT2: The skill behind this step is Closed Online Test 2’s; the release client still has the step.
VerifiedDamage = Damage × PartnerDamage / 100 applied only to hits in the second half of the hit list
- Only the second half of the hit list takes it, which is where the partner’s copies of your stars go.
- The skill’s x runs 10 at level 1 to 40 at 30; its tooltip calls that the extra damage.
- A Hermit skill, so only CoT2 had it.
Final damage
Reverse engineered by @Slash on Discord
21Clamp
VerifiedDamage = trunc(Damage) Damage = clamp(Damage, 1, 99,999)
- trunc drops the fraction: 325.9 shows as 325.
- No single hit shows more than 99,999, and any hit that connects shows at least 1.
One hit, start to finish
Every step above, in order, on a real attack. Pick a release skill and its level (the damage % and hits come off its row), your weapon and stats, and a monster (its level, defences and elements come off its row). The ladder shows the range after each step; the number over the monster is the average hit after the cap, in the client’s own digits.
Try itOne hit
The attack
You
The monster

Fire Boar Lv 30
| Step | × | Low | High |
|---|---|---|---|
| Base roll260% · WepMult 1.8 · mastery 0.42 | 275.8 | 453.4 | |
| Weapon defence ×0.909Fire Boar has 10 | ×0.909 | 250.8 | 412.1 |
| Element ×1No element | ×1 | 250.8 | 412.1 |
| Level ×1Not above you | ×1 | 250.8 | 412.1 |
| Clamptrunc, then 1 to 99,999 | 250 | 412 | |
| Crit ×1.25% chance | ×1.2 | 300 | 494 |
- Average hit
- 331
- Average crit
- 397.2
- With crits counted
- 334.3
- One hit an attack
- 334
250 – 412 normal, 300 – 494 on a crit. A hit that misses deals nothing; the accuracy chapter has that roll.
Release formulas throughout, before the accuracy roll: the same ones the planner runs.
Variables
- SkillMult
- The skill’s damage % as a decimal: 260% is 2.6, a basic attack 1.
- PrimaryStat
- STR for melee weapons (and wands and staves when you whack), DEX for bows and crossbows, LUK for daggers and claws.
- SecondaryStat
- DEX for melee, STR for bows and crossbows, STR + DEX for daggers and claws.
- AttackPower
- Attack from everything but the weapon and shield, plus buffs.
- WeaponAttack
- Attack from the weapon and shield (5 barehanded), plus the stars or arrows.
- WepMult
- The weapon multiplier for the action the attack lands on.
- StatDiv, AtkDiv
- 100 and 50 nearly always; 300 and 150 for Prone Stab and a ranged weapon in melee.
- MasteryMult
- (0.1 + MasteryLevel / 10) × 0.7 in the release, × 0.8 in CoT2. Level 0 if none is learned. Lucky Seven uses z / 1000.
- MasteryLevel
- The mastery number on the client’s 0 to 10 scale: the weapon mastery’s for a weapon, the spell’s own for magic.
- BasicAttack
- A spell’s Basic Attack, off its row.
- TotalInt, TotalLuk
- Your INT and LUK with gear and scrolls.
- MagicAttack
- Magic Attack from gear, scrolls and buffs, not counting INT.
- MasteryPercent
- Meso Explosion’s mastery, its row’s x over 10.
- MesosPerPile
- Mesos in one pile on the ground.
- RecoveryRate
- Heal’s recovery rate, its row’s x.
- TargetsHit
- Heal’s split: players (you included) and undead, six slots in all in the release.
- HealBonus
- CoT2 only: Bless’s bonus to Heal, 1% to 10%.
- DoTBasicAttack
- The Basic Attack a burn deals over its whole duration.
- BleedPercent
- The % a bleed deals over its whole duration, Axe Mastery’s dot.
- WeaponDefense, MagicDefense
- The monster’s defence after its percent and flat slots, never under 0.
- PercentEffects, FlatEffects
- The two slots a monster carries for each defence: Threaten fills the weapon percent one.
- ElementalMult
- The element step’s multiplier: 0, 0.75, 1 or 1.25 for one element, 0 to 1.5 for two.
- LevelDiff
- The monster’s level minus yours. Nothing happens at 0 or below.
- CritRate, CritDamage
- The two crit numbers on your stat window.
- ConsecutiveHits
- Iron Arrow: 0 for the first monster in the line, 1 for the second, and so on.
- Orbs, ComboDamage
- Combo Attack’s orbs when the skill goes off, and its own bonus %.
- ChargeDamage
- An elemental charge’s bonus %, its row’s x.
- PartnerDamage
- Shadow Partner’s %, carried on the attack.
- ElementAmpDamage
- Element Amplification’s bonus %, from whatever fills its slot.
