Will the attack connect?
Accuracy
About this page
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.
Your accuracy and avoid
Reverse engineered by @Slash and @ohmi on Discord
Each class turns DEX, LUK and level into accuracy its own way. Avoid is the same sum for everyone.
1Base accuracy and avoid
VerifiedChanged since CoT2Common = Dex × 1.2 + Level × 2 + Luk × 0.6 Beginner: Acc = trunc(Common / 2.5 + 5) Warrior: Acc = trunc(Common / 2.5 + 10) Magician: Acc = trunc((Int × 1.2 + Level × 2 + Luk × 0.6) / 5.1 + 20) Bowman: Acc = trunc(Common / 4.8 + 20) Thief: Acc = trunc(Common / 4 + 15) Avoid = trunc(Luk / 3) + trunc(Dex / 6) + 5
- DEX, INT and LUK are your totals, gear and buffs included. Accuracy and avoid printed on gear go on top.
- Magicians read INT in place of DEX and divide by 5.1, so each point does the least for them.
- A level 30 thief with 40 DEX and 120 LUK: (48 + 60 + 72) / 4 + 15 = 60 accuracy, and 40 + 6 + 5 = 51 avoid.
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. In Closed Online Test 2
Beginner: Acc = Common / 2.5 + 5 Warrior: Acc = Common / 2.5 + 10 Magician: Acc = (Int × 1.2 + Level × 2 + Luk × 0.6) / 5.1 + 20 Bowman: Acc = Common / 4.8 + 20 Thief: Acc = Common / 4 + 15
The same lines with the fraction kept. The release throws it away, so you lose up to 0.99 accuracy and nobody gains any. Avoid was cut in CoT2 too and has not changed.
Try itYour accuracy and avoid
Your character
On top
60
Accuracy
180 / 4 + 15 = 60
- Avoid
- 51
- In CoT2
- 60
- Lost to the cut
- 0
Gear accuracy is a whole number, so the cut never eats any of it.
Hitting a monster
Reverse engineered by @Slash and @ohmi on Discord
Physical attacks and spells share one roll. Your accuracy becomes a BaseChance, the client rolls a number near 1, and if roll × BaseChance reaches the monster's avoid, you hit.
2The hit roll
VerifiedBaseChance = Acc × 100 / ((max(0, LevelDiff) × 2 + 51) × 5) Spread = 0.15 + 0.2 / (1 + exp((BaseChance − Avoid) / 12)) Roll = rand(1 − Spread, 1 + Spread) DidHit = Roll × BaseChance ≥ Avoid
- LevelDiff only counts when the monster is above you. Five levels under it cuts your BaseChance by about 16%; out-levelling it gives you nothing back.
- The spread is ±35% when you are far behind the avoid, ±25% when level with it and ±15% when far ahead, so enough accuracy settles into a sure hit.
- A level 30 thief with 95 accuracy against a Jr. Necki (Lv 21, avoid 14) hits 100% of the time. 47 accuracy would already do it.
Try itHit chance against a monster
The monster
You
Jr. WraithLv 34 · Avoid 25
66.2%
Chance to hit
The monster is 4 levels over you, which shrinks BaseChance.
- BaseChance
- 27.12
- Spread
- ±24.1%
- Roll needed
- 0.922
- Sure hit at
- 95
About 1 swing in 3 misses. 15 more accuracy and you never miss here.
Avoid is the monster’s own number from the client. The roll is uniform, so the chance shown is exact.
The accuracy that never misses the release's most evasive monsters, at their level and ten levels under:
| Monster | Same level | 10 under |
|---|---|---|
| Crimson BalrogLv 100 · Avoid 57 | 182 | 253 |
| Jr. BalrogLv 80 · Avoid 49 | 157 | 219 |
| TaurospearLv 75 · Avoid 48 | 154 | 214 |
| TauromacisLv 70 · Avoid 41 | 132 | 184 |
| Rotten MushmomLv 60 · Avoid 39 | 126 | 176 |
| Zombie MushmomLv 55 · Avoid 37 | 120 | 167 |
| Wild KargoLv 62 · Avoid 36 | 117 | 163 |
| ShadeLv 48 · Avoid 35 | 114 | 158 |
3Auto-hit
VerifiedAutoHit if BaseChance − Avoid ≥ 25 + LevelDiff × (Level / 2 + 15)
- With no level gap, BaseChance has to clear avoid by 25. The roll is usually sure long before that: the rule only changes anything past about 371 accuracy against 121 or more avoid.
- Each level the monster has on you adds Level / 2 + 15 to the 25, so under a monster it never comes up.
- The most avoid on a release monster you can fight is Crimson Balrog’s 57. In practice the roll decides every hit.
4A miss after the hit
Partly verifiedPassing the roll is not always the end. A miss-chance debuff on you is rolled after a hit lands and can still turn it into MISS. The routine does not name the debuff.
- Darkness is the likely one: Fairy 3, Jr. Boogie 2 and Shade cast it on players, and its skill row holds a 50.
5Skills that skip the roll
VerifiedThese debuffs never roll accuracy. They use their own success rate. No attack skill does this.
CoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record. In Closed Online Test 2
Nine debuffs skipped it. The other six were third-job skills, which the release does not have:
Armor CrashCrusaderCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Power CrashDragon KnightCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Elemental CrashWhite KnightCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
DoomPriestCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
SealF/P MageCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
SealI/L MageCoT2: From Closed Online Test 2 (Beta 2). Not in the Public Release; kept here as a record.
Variables
- Acc
- Your accuracy, the number on the Stats window. Physical attacks and spells use the same one.
- Dex, Int, Luk
- Your totals, gear and buffs included.
- Level
- Your level.
- Avoid
- The monster’s avoid, from its own row in the client.
- LevelDiff
- The monster’s level minus yours, or 0 when you are level with it or above.
- BaseChance
- Your accuracy scaled down by the level gap: what the roll multiplies.
- Spread
- How far the roll swings either side of 1, from 0.15 to 0.35.
- Roll
- A uniform random number between 1 − Spread and 1 + Spread.
