MapleStory Quest

Will the attack connect?

Accuracy

Your accuracy, a monster’s avoid, and the roll that decides whether you hit or see MISS.
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 CoT2
Common = 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

Verified
BaseChance = 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

MISSAbout 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:

Accuracy for a sure hit
MonsterSame level10 under
Crimson BalrogLv 100 · Avoid 57182253
Jr. BalrogLv 80 · Avoid 49157219
TaurospearLv 75 · Avoid 48154214
TauromacisLv 70 · Avoid 41132184
Rotten MushmomLv 60 · Avoid 39126176
Zombie MushmomLv 55 · Avoid 37120167
Wild KargoLv 62 · Avoid 36117163
ShadeLv 48 · Avoid 35114158

3Auto-hit

Verified
AutoHit 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 verified

Passing 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

Verified

These 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.