Difference between revisions of "Shield (stat)"

From CrawlWiki
Jump to: navigation, search
m (Strategy: fix double reduced)
m (v. bump)
Line 1: Line 1:
{{version030}}
+
{{version031}}
 
''This page is about the Shield [[stat]]. For shields in general, see [[Shields]]. For the player [[skill]], see [[Shields (skill)]].''
 
''This page is about the Shield [[stat]]. For shields in general, see [[Shields]]. For the player [[skill]], see [[Shields (skill)]].''
  
Line 23: Line 23:
  
 
===Calculation===
 
===Calculation===
If you are wielding a physical shield, its SH is determined as follows:<ref>{{source ref|0.30.0|player.cc|2160}}<br>These values are divided by 200 by later functions.</ref>
+
If you are wielding a physical shield, its SH is determined as follows:<ref>{{source ref|0.31-b1|player.cc|2200}}<br>These values are divided by 200 by later functions.</ref>
  
 
*Your '''Base SH''' is determined by type of shield. 3 for [[buckler]]s, 8 for [[kite shield]]s, 13 for [[tower shield]]s.
 
*Your '''Base SH''' is determined by type of shield. 3 for [[buckler]]s, 8 for [[kite shield]]s, 13 for [[tower shield]]s.
 
*Add '''[[Shields (skill)|Skill Bonus]]''' of <code>(base_SH/40 + 0.19) * skill</code>.
 
*Add '''[[Shields (skill)|Skill Bonus]]''' of <code>(base_SH/40 + 0.19) * skill</code>.
**Add another 0.57 if skill ≥ 3, else add <code>0.19 * skill</code>.
 
 
*Add '''[[Dexterity|Stat Bonus]]''' of <code>DEX * 38 * (base_SH + 13) / 5200</code>.
 
*Add '''[[Dexterity|Stat Bonus]]''' of <code>DEX * 38 * (base_SH + 13) / 5200</code>.
 
*Add '''[[Enchant]]ment''' value. +1 enchantment = +1 SH.
 
*Add '''[[Enchant]]ment''' value. +1 enchantment = +1 SH.
*Add 0.25 SH.<ref>{{source ref|0.30.0|player.cc|2213}}<br>Divided by 2 by a later function.</ref>
+
*Add 0.82 SH.<ref>{{source ref|0.31-b1|player.cc|2254}}<br>Divided by 2 by a later function.</ref>
  
 
All other sources of SH ([[Qazlal]] shield, [[amulet of reflection]]...) are flat bonuses, and are added on top of the physical shield bonus. The final value is rounded to the nearest integer and displayed as the player's SH value.
 
All other sources of SH ([[Qazlal]] shield, [[amulet of reflection]]...) are flat bonuses, and are added on top of the physical shield bonus. The final value is rounded to the nearest integer and displayed as the player's SH value.

Revision as of 05:22, 10 March 2024

Version 0.31: This article is up to date for the latest stable release of Dungeon Crawl Stone Soup.

This page is about the Shield stat. For shields in general, see Shields. For the player skill, see Shields (skill).

SH is one of your three physical defenses, along with AC and EV. It allows you to completely negate physical attacks (both melee and ranged) and some magical attacks. Unlike AC and EV, you have no innate SH score. SH gained from wearing a physical shield is governed by the Shields skill; magical shields are unaffected by that skill.

Sources

The following items/abilities can increase your SH:

Blocking

You can block melee attacks (inc. reaching attacks) and non-penetrating "projectiles" - these include ranged weapons and certain spells like Iron Shot or Poison Arrow.

What can't be blocked by SH:

(Orb of Destruction is the only spell that ignores EV but can be blocked)

Calculation

If you are wielding a physical shield, its SH is determined as follows:[1]

All other sources of SH (Qazlal shield, amulet of reflection...) are flat bonuses, and are added on top of the physical shield bonus. The final value is rounded to the nearest integer and displayed as the player's SH value.

If you are paralysed, petrified, or if dexterity is 0, then SH is set to 0 regardless of any other factors.

To-hit vs SH

The game compares the attacker's "pierce value" to the defender's "block value".

The attacker's pierce value is dependent on their to-hit (accuracy) and the type of attack:

  • Melee attack: 1d(15 + to_hit/2 + 5×past_blocks^2)
  • Ranged attack: 1d(1.3×to hit + 5×past_blocks^2)

The defender's blocking value is equal to:

  • All attacks: 2d(4×SH)/6 - 1
  • Divide by 3 against melee attacks from invisible opponents.

If the blocking value is greater or equal than the attacker's pierce value, the attack is blocked.

Strategy

SH is less effective per point than EV; EV succeeds if 2d(2 * EV - 1)/2 > 1d(to-hit + 1) - 1, it doesn't decay against multiple attacks, and it defends against penetrating attacks. However, shields give a high amount of SH - wearing a shield almost certainly gives more SH than the EV you lost. Also, blocking is unaffected by armour encumbrance.

The main costs of wearing the shield are the inability to wield two-handed weapons, and the shield penalties (which can be reduced and eventually removed with Shields skill).

References

  1. player.cc:2200 (0.31-b1)
    These values are divided by 200 by later functions.
  2. player.cc:2254 (0.31-b1)
    Divided by 2 by a later function.