To hit

From CrawlWiki
Revision as of 01:02, 13 April 2017 by Tasonir (talk | contribs) (Player To Hit (Melee): Melee and ranged use the same combat formulas (for players))
Jump to: navigation, search
Version 0.19: This article may not be up to date for the latest stable release of Crawl.

To hit (short for 'chance to hit') is the probability that an attack will hit a target. It is one of the two key factors in determining the success of an attack, the other being damage.

The to hit can be calculated for melee and ranged attacks, and is calculated differently for players and monsters. The largest factors for players are weapon (or unarmed) skill and fighting skill - with good training on both skills and decent dexterity, it should be rare to miss most targets.

Player To Hit (Melee and Ranged)

The player's to-hit in melee and ranged combat is determined by the following factors:

Base Value

Since the removal of strength weighting, base to hit is determined by your dexterity and the accuracy value of your weapon.


  • If not wielding a weapon, the player gets:
  • If wielding a weapon, the player gets that weapon's intrinsic accuracy, plus any enchantment (the plus on the weapon).



  • Fighting gives you a bonus of +0 to +Fighting.
  • Weapon skills give you a bonus of +0 to +Your Skill (if you are wielding the matching weapon).


  • When both combatants are in water and only the player is capable of swimming, the player get a +5 bonus.

Status Effects

  • If the player is starving, they get a -3 penalty.
  • If the player is invisible but cannot see invisible, they get a -5 penalty (because they cannot see what they are doing).

Shield Penalty

  • The player's shield penalty is -1d(ASP) where ASP is the Adjusted Shield Penalty. It is ASP = (Shield EV penalty) - (Shields skill)/(5 + (Size factor)) as explained in the Shields page. This penalty can be removed completely with enough skill levels in Shields.

Armour Penalty

  • The player's armour penalty is then calculated: -1d(ABAP) where ABAP is the Adjusted Body Armour Penalty.
ABAP = (body_armour_base_penalty + max(0, 3*body_armour_base_penalty - str)) * (45 - armour_skill)/45

Barding does not affect the to hit penalty despite having an evasion modifier.

Mutation bonus

  • If the player has the Eyeballs mutation they get a +3/+5/+7 bonus.

The Roll

This completes the to hit calculation. The value is now 'rolled' (ie. a number from 0 to to hit-1 is randomly generated). If this number exceeds the evasion value of the monster they are attacking, they hit lands.


There are additional effects which can modify the to hit score AFTER it has been rolled:

  • Attacking a target under the effects of the Corona spell grants +2 to +9.
  • Attacking an invisible monster without being able to see invisible gives you -6.

Monster To Hit (Melee)

A monster's to hit is calculated as follows:

Base Value

The base value is 18.

Hit Dice

Monsters with the Fighter class flag get a bonus of +(2.5 * HD). Other monsters get +(1.5 * HD). Decimals are rounded down.

Situational Modifiers

  • An aquatic monster "using the terrain to its advantage" gets +5.
  • A monster wielding a weapon receives that weapon's inherent and magical to hit modifiers.
  • A confused monster gets -5.
  • A monster attacking a backlit defender gets +2 to +9.
  • A monster attacking an invisible target suffers a 35% penalty to its to hit number.

Monster To Hit (Ranged)

Ranged attacks ("beams", to use the game's internal terminology) have a to hit number, just like melee attacks do. This is modified as follows:

  • If you are invisible and the attacker can't see invisible, the to hit number is halved.
  • If you have Deflect Missiles running, the to hit number is reduced to a random number between 0 and 2/3 of its value.
  • If you don't have Deflect Missiles running, but do have Repel Missiles running or the Repulsion Field mutation at level 3, the to hit number is reduced by a random number between 0 and 1/2 of its value (rounded down).