How does the “chance to hit” (or accuracy) work in Diablo 1?
So there's this percentage that shows how accurate your character is when hitting.
Say I use a Rogue, and reaches 100% chance to hit (or accuracy) then I believe it hits all the arrows. But after I saw that it's possible to get more percentage than 100% then my thoughts are.. Is there a limit, or is it pointless?
There are three main points (among many) that cause the actual chance to hit to be reduced even if it is above 100%.
- The Armor Class of the monster being attacked.
- When using ranged attacks, the chance to hit is reduced based on the distance between you and the monster.
- The maximum actual chance to hit is 95% after all other calculations are done.
In addition, please note that you can easily miss a monster completely in which chance to hit is not taken into consideration. If an arrow doesn't pass through a tile the monster is on, it will just miss.
Here is the complete story for a player vs. monster, taken from Jarulf's Guide.
To Hit
if the effect is Holy Bolt and the monster is not undead or Diablo, exit as other monsters are immune if the target monster is an Illusion Weaver that is currently running away, exit as it is at the moment immune to any attack if the monster is immune to the spell type, exit as it can't be damaged if the target is a monster that is Stone Cursed, the attack is an automatic hit, go directly to damage calculations if the effect is an arrow, calculate 50 + Dex + ToHititems + clvl + bonusplayer - distance·distance/2 if the effect is an arrow, subtract Acmonster if the effect is a spell, calculate 50 + Mag + bonusplayer if the effect is a spell, subtract 2·mlvl if the value calculated is below 5, set it to 5 if the value calculated is above 95, set it to 95 the value now achieved is the final chance to hit (FTH) a hit is secured if Rnd[100] < FTH
The steps 5-11 above can be summarized to:
FTHarrow = 50 + Dex + ToHititems + clvl + bonusplayer - distance·distance/2 - Acmonster
FTHspell = 50 + Mag + bonusplayer - 2·mlvl
The bonusplayer for arrows is 10 for Warriors and Bards, 20 for Rogues, and 0 for all other classes. The bonusplayer for spells is 20 for Sorcerers, 10 for Bards, and 0 for all other classes. Note that if FTH is below 5 or above 95 it is adjusted to 5 and 95. This is commonly referred to as the auto hit and auto miss of a character.