Difference between revisions of "AC nerf"

From CrawlWiki
Jump to: navigation, search
m (1 revision: characters and game mechanics)
m (remove white space)
Line 17: Line 17:
  
 
   = base_AC * (23 + effective_armour_skill) / 23
 
   = base_AC * (23 + effective_armour_skill) / 23
 
 
     + enchantments
 
     + enchantments
 
 
     + modifiers
 
     + modifiers
  
 
     Where
 
     Where
 
 
     - effective_armour_skill = armour skill + racial armour skill bonus.
 
     - effective_armour_skill = armour skill + racial armour skill bonus.
 
 
     - enchantments = armour enchantments
 
     - enchantments = armour enchantments
 
 
     - modifiers = transforms, mutations, etc. affecting AC.
 
     - modifiers = transforms, mutations, etc. affecting AC.
 
 
  
 
New guaranteed damage reduction:
 
New guaranteed damage reduction:
 
 
   = body_base_AC*(13+Armour)/17 * max_dam/100
 
   = body_base_AC*(13+Armour)/17 * max_dam/100
 
 
  
 
===New total EV===
 
===New total EV===
  
 
   = 10 + size + (7 * Dodge * Dex) / (20 * AEVP - size) - AEVP - ASP + bonuses
 
   = 10 + size + (7 * Dodge * Dex) / (20 * AEVP - size) - AEVP - ASP + bonuses
 
 
     Where size = 2 * (medium - body_size)
 
     Where size = 2 * (medium - body_size)
 
 
               having: body_size be one of:
 
               having: body_size be one of:
 
 
                   tiny = 0
 
                   tiny = 0
 
 
                   little = 1
 
                   little = 1
 
 
                   small  = 2
 
                   small  = 2
 
 
                   medium = 3
 
                   medium = 3
 
 
                   large  = 4
 
                   large  = 4
 
 
                   big    = 5
 
                   big    = 5
 
 
                   giant  = 6
 
                   giant  = 6
 
 
                   huge  = 7
 
                   huge  = 7
 
 
               For ref: halfling = small, human = medium, ogre = large, dragon = huge
 
               For ref: halfling = small, human = medium, ogre = large, dragon = huge
  
 
           AEVP (adjusted evasion penalty for armour):
 
           AEVP (adjusted evasion penalty for armour):
 
 
               = body_AEVP + piece_EVP
 
               = body_AEVP + piece_EVP
  
 
                 Where body_AEVP is for the body armour, calculated as:
 
                 Where body_AEVP is for the body armour, calculated as:
 
 
                         = (EVP + MAX(0, 3*EVP - Str)) * (45 - Armour) /45
 
                         = (EVP + MAX(0, 3*EVP - Str)) * (45 - Armour) /45
 
 
                           where EVP = base evasion penalty of the armour
 
                           where EVP = base evasion penalty of the armour
 
 
                       piece_EVP is the sum of the base evasion penalties of
 
                       piece_EVP is the sum of the base evasion penalties of
 
 
                       the non-body armour worn, excluding shields. Currently
 
                       the non-body armour worn, excluding shields. Currently
 
 
                       this is only applicable to bardings (EVP of 2).
 
                       this is only applicable to bardings (EVP of 2).
  
 
           ASP (adjusted shield evasion penalty):
 
           ASP (adjusted shield evasion penalty):
 
 
               = SP - (1 + Shields) / (2 * (5 + size))
 
               = SP - (1 + Shields) / (2 * (5 + size))
 
 
                 where SP = 1 for buckler, 3 for shield, 5 for large shield
 
                 where SP = 1 for buckler, 3 for shield, 5 for large shield
  
Line 91: Line 62:
  
 
   = 25 * (body_AEVP + ASP) - 20 - race_mod
 
   = 25 * (body_AEVP + ASP) - 20 - race_mod
 
 
     where race_mod = 25 for elven, -15 for dwarven,
 
     where race_mod = 25 for elven, -15 for dwarven,
 
 
           +15 for races in their native armour.
 
           +15 for races in their native armour.
  
Line 99: Line 68:
  
 
   - to-hit penalty = 1d(body_AEVP) + 1d(ASP)
 
   - to-hit penalty = 1d(body_AEVP) + 1d(ASP)
 
 
   - to-hit penalty for 1.5 hand weapons = 1d(body_AEVP) + 2d(ASP)
 
   - to-hit penalty for 1.5 hand weapons = 1d(body_AEVP) + 2d(ASP)
 
 
   - to-dam penalty for 1.5 hand = 1d(ASP)
 
   - to-dam penalty for 1.5 hand = 1d(ASP)
 
 
  
 
   - base_delay is unchanged if body_AEVP is 0, otherwise:
 
   - base_delay is unchanged if body_AEVP is 0, otherwise:
 
 
     - base_delay            = max(base_delay, 1d10 + 1d(body_AEVP))
 
     - base_delay            = max(base_delay, 1d10 + 1d(body_AEVP))
 
 
     - base_delay for unarmed = max(base_delay, 1d10 + 2d(body_AEVP))
 
     - base_delay for unarmed = max(base_delay, 1d10 + 2d(body_AEVP))
 
 
 
 
     - final_delay              += min(1d(body_AEVP), 1d(body_AEVP))
 
     - final_delay              += min(1d(body_AEVP), 1d(body_AEVP))
 
 
     - final_delay for 1.5 hand += min(1d(body_AEVP) + 1dASP,
 
     - final_delay for 1.5 hand += min(1d(body_AEVP) + 1dASP,
  

Revision as of 00:01, 2 August 2023

Obsolete: This article refers to an aspect of the game which has been removed. It is retained for historical reference only.

This AC nerf that this page refers to has to a large extent been undone in 0.8 and later versions. The mechanics did not change between 0.7 and 0.8, but GDR was vastly increased and heavy armour allowed much higher enchantments. Thus, this page is mostly obsolete.

AC/EV changes

The first iteration of AC/EV changes as described on http://crawl.develz.org/wiki/doku.php?id=dcss:brainstorm:misc:ac

Although the distinction between heavy and light armour has been removed for the actual AC and EV calculations, the heavy/light armour distinction is still in place for skill training. Skill training is not modified in any way by this change.

Change details follow, with Armour = armour skill, Dodge = Dodging skill:

New total AC

 = base_AC * (23 + effective_armour_skill) / 23
   + enchantments
   + modifiers
   Where
    - effective_armour_skill = armour skill + racial armour skill bonus.
    - enchantments = armour enchantments
    - modifiers = transforms, mutations, etc. affecting AC.

New guaranteed damage reduction:

 = body_base_AC*(13+Armour)/17 * max_dam/100

New total EV

 = 10 + size + (7 * Dodge * Dex) / (20 * AEVP - size) - AEVP - ASP + bonuses
   Where size = 2 * (medium - body_size)
             having: body_size be one of:
                 tiny = 0
                 little = 1
                 small  = 2
                 medium = 3
                 large  = 4
                 big    = 5
                 giant  = 6
                 huge   = 7
             For ref: halfling = small, human = medium, ogre = large, dragon = huge
         AEVP (adjusted evasion penalty for armour):
             = body_AEVP + piece_EVP
               Where body_AEVP is for the body armour, calculated as:
                       = (EVP + MAX(0, 3*EVP - Str)) * (45 - Armour) /45
                         where EVP = base evasion penalty of the armour
                     piece_EVP is the sum of the base evasion penalties of
                     the non-body armour worn, excluding shields. Currently
                     this is only applicable to bardings (EVP of 2).
         ASP (adjusted shield evasion penalty):
             = SP - (1 + Shields) / (2 * (5 + size))
               where SP = 1 for buckler, 3 for shield, 5 for large shield


New spellcasting penalty

 = 25 * (body_AEVP + ASP) - 20 - race_mod
   where race_mod = 25 for elven, -15 for dwarven,
         +15 for races in their native armour.

New combat penalties

 - to-hit penalty = 1d(body_AEVP) + 1d(ASP)
 - to-hit penalty for 1.5 hand weapons = 1d(body_AEVP) + 2d(ASP)
 - to-dam penalty for 1.5 hand = 1d(ASP)
 - base_delay is unchanged if body_AEVP is 0, otherwise:
   - base_delay             = max(base_delay, 1d10 + 1d(body_AEVP))
   - base_delay for unarmed = max(base_delay, 1d10 + 2d(body_AEVP))
   - final_delay              += min(1d(body_AEVP), 1d(body_AEVP))
   - final_delay for 1.5 hand += min(1d(body_AEVP) + 1dASP,
                                     1d(body_AEVP) + 1dASP)

What does this all mean?

  • The armour skill doesn't increase your AC as much. In 5.2 you need 15 levels in the skill to double your base armour, in 0.6, you need 23.
  • Heavy armour's main benefit, the guaranteed damage reduction (GDR), was nerfed. In 0.5, each skill level in armour and base AC point on your body armour added 2% GDR, so it was possible to reach the max 50% without much trouble. Now, a character with 27 armour skill wearing crystal plate mail gets something like 30% damage reduction and most heavy armour users will get around 20-25%.
  • Heavy armour is harder to train. In 0.5, you could guarantee that you would train only heavy armour by wearing armour that had an EV penalty bigger than (1/3) x your armour skill. This was great for hybrids as they could grab a ring mail, train armour to 6, get a scale mail, train it to 9, etc. Now you train both armour and dodging at the same time and the later is much, much easier to train while wearing medium weight armour so a good deal of xp goes to dodging, even with the skill deactivated. This could be good if low levels of dodging were useful while wearing the heavier armours, but they're not.
  • It's harder to cast in heavy armour. In order to make strength useful there is now a penalty to casting if your str is not at least 3x the EV penalty of your armour. This means heavy armour casters have to invest points into str in order to be able to cast. While this does make str more "useful" the end result is that heavy armour casters are less powerful.