Evasion

From CrawlWiki
Revision as of 05:52, 21 December 2012 by Ion frigate (talk | contribs) (1 revision: characters and game mechanics)
Jump to: navigation, search
Version 0.11: This article may not be up to date for the latest stable release of Crawl.

This page is about the character trait. For the brand, see the article Evasion (brand)

Evasion (often abbreviated to EV) is a number that measures the ability of a character or of a monster to avoid melee attacks, ranged attacks, and magical beam attacks. When an attack is resolved, a target's current EV is rolled and compared to the attack's to-hit roll, factoring in any relevant situational modifiers. Only if the to-hit roll matches or beats the EV roll does the attack succeed.

Player EV

The calculation to determine a character's total EV is complex and factors in many different skills and attributes.

Base EV

The player's base EV is calculated as follows:

 10 + size_factor

"Size factor" is the number of steps away from "medium" (i.e. Human) size. Larger species (Trolls, Ogres, Centaurs, Nagas) have a negative size factor while smaller species (Kobolds, Halflings, Spriggans) have a positive size factor.

Species Size factor
Troll, Ogre, Centaur, Naga -2
Kobold, Halfling +2
Spriggan, Felid +4
Otherwise 0

Some transformations can override the racial size factor:

Form Size factor
Spider Form, Bat Form +4
Pig Form +2
Ice Form -2
Dragon Form -8

However, if you are paralysed or your dexterity is below 1, your EV is reduced to:

 2 + size_factor/2 + Phase Shift bonus + (repulsion field bonus)

In this case, minimum EV is 1. No other factors apply.

Dodging

The Dodging skill provides a bonus to your EV as follows:

dodge_bonus = (7 * Dodging * Dex) / (20 - size_factor)
ABAEVP= body_armour_base_penalty - body_armour_base_penalty*size_factor/8
dodge_penalty = max(0, (30*ABAEVP - 30)/str)
final_dodge_bonus = max(0, dodge_bonus - dodge_penalty)

Notes:

  • "ABAEVP" stands for Adjusted Body Armour EVasion Penalty.
  • Dexterity is passed through a stepdown function, that compresses any value above 24.

Armour and shield EV penalties

After adding base EV and Dodging's bonus together, the EV penalties from armour and shields are then subtracted.

The armour penalty is again equal to your AEVP. Only body armour and bardings (both for Nagas and Centaurs) have any penalties. "AEVP" (which stands for Adjusted EVasion Penalty for armour) is a complex value based on your Strength, your Armour skill, and the Evasion penalties of the armour pieces you wear.

AEVP = barding_base_penalty +  (body_armour_base_penalty + max(0, 3*body_armour_base_penalty - str)) * (45 - armour_skill)/45

For shields, a value called "ASP" (which stands for Adjusted Shields Penalty) is calculated based on the cumbersomeness of your shield (less for bucklers, more for large shields), your Shields skill, and your species's size.

ASP = max(0, base_penalty  - shield_skill/(5 + size_factor))

Stepdown

Before adding any magical bonus, a stepdown function is applied to your evasion. This function reduces you evasion a bit if it is more than 30.

EV = (EV<30? EV : 10 + 20*log(1 + (EV-10)/20)/log(2))

Evasion stepdown.png

Magic

Various magical effects can grant bonuses to EV. These are added directly to your EV total after the above calculations.

Other racial modifiers

After all of the above factors have been considered:

  • Swimming Merfolk get a 25% bonus to EV (minimum +2, maximum +9)
  • Flying Tengu get a 20% bonus to EV (minimum +1, maximum +9)

Final situational modifiers

Against melee attacks:

  • If you cannot see your attacker (i.e. they are invisible and you cannot see invisible), you suffer a -10 EV penalty against that attacker.
  • If you are "delayed" (i.e. you are busy carrying out a multi-turn action), you suffer a -5 EV penalty.

Monster EV

A monster's EV is a fixed number dependent on monster type. Note that some monsters may wear equipment that increases or reduces their EV.

To-hit versus EV

If an attack's to-hit number is 1500 (the magic number AUTOMATIC_HIT) or greater (e.g. Magic Dart), it automatically hits.

Otherwise, the following procedure is used.

  • 2.5% of the time, the attack misses regardless of the attack's to-hit or the defender's EV.
  • 2.5% of the time, the attack hits regardless of the attack's to-hit or the defender's EV.
  • A uniformly distributed random number between zero and the to-hit number (inclusive) is generated.
  • Two uniformly distributed random numbers between zero and ((2 * (target EV)) - 1) inclusive are averaged together.
  • If the to-hit roll is greater than or equal to the EV roll, the attack hits. Otherwise, it misses.