INTRODUCTIONThe common dwarf is an exceedingly mortal existence, prone to a large variety of lethal incidents. A significant subset of these, namely attacks by hostile entities, can be considerably reduced by equipping dwarves with shields or bucklers. It is generally acknowledged that shields greatly increase survivability even when equipped by dwarves with little to no skill in using them, and that the benefits quickly increase along with skill level. It is also common knowledge that even attacks of relatively great power can be blocked, such as bronze colossus strikes or dragonfire
[1]. However, to the best of the Author's knowledge, until now no rigorous testing was performed in order to acquire and analyze quantitative data concerning shielding.
The aim of this study was to empirically ascertain how blocking is affected by the following factors:
- Shield User skill and Weapon skill
- Using a Shield vs using a Buckler
- Shield Material
- Shield Quality and Weapon Quality
- Dual Wielding Shields
METHODOLOGYThe experimental setup used in this study is a slightly modified version of the 1vs1 ranged testing grid used in the Author's previous studies
[2] [3]. For the purposes of shield testing, one or two grids of 2485 (71 by 35 - the maximum that could be squeezed into a single arena floor) individual test cells were used per experiment - one grid (2485 cells) for Skill tests, two grids (4970) for all others. A single cell consists of three tiles - two floor tiles for the test subjects to stand on and a single pit to separate them (Fig. 1). Substituting the fortification with a pit eliminates any effect that fortifications, used in the previous study, may have had on the results.
The test subjects used in the study were arena dwarves - a modded version of regular dwarves with no size variations and stunted skill growth. This prevents an increase in skill over the course of the experiment and eliminates the potential effects of creature size on the experiment results. The game was otherwise unmodded (vanilla). The tileset used was Phoebus'.
Average size enforcement:
[BODY_APPEARANCE_MODIFIER:HEIGHT:100:100:100:100:100:100:100]
[APP_MOD_IMPORTANCE:500]
[BODY_APPEARANCE_MODIFIER:BROADNESS:100:100:100:100:100:100:100]
[APP_MOD_IMPORTANCE:500]
Stunted skill growth:
[SKILL_RATES:1:8:8:16]
The arena dwarves were divided into attackers and defenders. Attackers were equipped with an oaken crossbow and a single copper bolt. Providing only one bolt, while significantly reducing the amount of experimental data to be gained, is necessary in order to eliminate unwanted variables e.g. Dwarves that lose there shields, dwarves that lose consciousness, dwarves that get tired etc. Defenders were equipped with either a single shield (varying material), single buckler or two shields, depending on experiment.
Ranged weapons (crossbows) were used in the experimental setup instead of melee weapons, because they are far more predictable. The Author's attempts at melee testing failed due to the difficulty of eliminating unnecessary variables from the experimental design (e.g wrestling, charging etc.).
A single experiment consisted of running the dwarf placement macro, one-stepping the game for 15 ticks and then copying and clearing the gamelog. The generally accepted criterion for shielding effectiveness is the probability that an attack is blocked. The Probabilities of Blocking (PoB) were obtained by counting the numbers of shots blocked (string search for "blocked") and dividing them by the number of shots fired ("the flying") minus those that missed ("missed") or were dodged ("jumps away").
PoB = (Shots Blocked)/(Shots Fired - Shots Missed - Shots Dodged)
Assuming normal distribution, using one test grid (2485 cells) should result in obtaining a PoB which is within 2% of the real value with 95% confidence. Using two test grids decreases the value of error to 1.4% with 95% confidence.
In accordance with the
suggestion of Hans Lemurson, an additional parameter, the Shield Protecion Factor (SPF), is supplied where relavent. SPF is calculated from PoB using the following formula:
SPF = 1/(1-PoB)
SPF can be interpreted as the mean number of successful blocks inbetween failed blocks. For example, in conditions where PoB is 90%, the value of SPF is 10, which is the mean number of attacks one might expect to block successfully before an attack gets through. This allows for a direct and intuitive comparison of shielding equipment under different conditions, because it is directly related to survivability.
RESULTS - WEAPON SKILL AND SHIELD USER SKILLAs mentioned above, a single test grid of 2485 cells was used for this study. Attackers were given a basic quality oaken crossbow and basic quality copper bolt. Defenders were given only a basic quality oaken shield (no armor). To achieve the highest possible resolution, every combination of Weapon skill and Shield skill available in Arena Mode was tested - from Dabbling (skill level 0) to Grand Master (skill level 14). This resulted in 15x15 = 225 PoB/SPF values. These are presented in the form of a two dimensional colormap (Fig. 2).
Due to display reasons, SPF data is presented as log2(SPF). The actual value of SPF is obtained by exponentiation SPF = 2^[log2(SPF)]. Example: The (Maksdwarf = 0; Shield User = 5) datapoint is colored yellow, which corresponds to a log2(SPF) value of around 5.5. The value of SPF is thus 2^5.5 = around 45.
Observations
- An increase in the Shield User skill very quickly improves blocking probability. Proficient (level 5) Shield Users have a 90% chance or higher of blocking attacks of Marksdwarves of a similar level or lower, and a 60% chance of blocking Grand Master Marksdwarves. A Grand Master Shield User has an over 90% chance of blocking practically anything, and a 99% chance of blocking Proficient Marksdwarves and lower.
- Survivability increases much, much faster with increased Shield User skill at Marksdwarf=0 rather than Marksdwarf=14. A fairly obvious conclusion, but not as obvious when studying Probability of Blocking itself. SPF value at (Shield User=14; Marksdwarf=0) is over 500. At (Shield User=14, Marksdwarf=14), SPF is merely 16.
RESULTS - SHIELDS AND BUCKLERSThe experiments were repeated exactly as stated above, except that Defenders were given basic quality oaken bucklers instead of oaken shields. The results are presented in the form of a two dimensional colormap (Fig. 3).
Due to display reasons, SPF data is presented as log2(SPF). The actual value of SPF is obtained by exponentiation SPF = 2^[log2(SPF)]. Example: The (Maksdwarf = 1; Shield User = 7) datapoint is colored yellow, which corresponds to a log2(SPF) value of around 5.5. The value of SPF is thus 2^5.5 = around 45.
As the results are very similar to those obtained for shields, an additional colormap showing the ratio of Shield SPF to Buckler SPF is provided. This quantatively shows just how many times a shield is better than a buckler at different skill levels.
Observations
- At low Shield User, high Marksdwarf skills, shields and bucklers have more or less the same effectiveness.
- As Shield User increases or Marksdwarf decreases, shields begin performing better than bucklers, by up to a factor of around 1.5 times better.
- The values of SPF ratios at high Shield User and low Marksdwarf skills must be disregarded, due to the high interference introduced by inaccuracies. Since SPF is derived from PoB using the formula SPF = 1/(1-PoB), then SPF values tend to be very large as PoB approaches unity. The 1.5-2% inaccuracies in estimating PoB have a very significant effect on the calculated value of SPF, which is very visible when comparing by ratio, as can be seen on Figure 4, where the colormap's lower left corner displays seemingly random values.
RESULTS - SHIELD MATERIALIt is common knowledge that shield material has no effect on shield effectiveness. This experiment was devised to verify this information. Two test grids were used in the experiment, for a total of 4970 cells. Attackers were given an basic quality oaken crossbow and basic quality copper bolt. Defenders were given a basic quality shield of varying material (no armor). Skill levels were set to Marksdwarf = 10, Shield User = 3, since based on the previous experiment they result in a blocking chance slightly higher than 50% for oaken shields.Results are presented in Figure 5.
Observations
- Shield material does indeed have no bearing on blocking chance. Steel shields are just as good as wooden ones.
RESULTS - WEAPON QUALITY VS SHIELD QUALITYIt is commonly assumed that higher quality shields have better battle performance. This experiment was devised in order to see how varying Weapon and Shield quality, from basic quality (level 0) to masterwork (level 5), affects blocking chance. Two test grids were used in the experiment, for a total of 4970 cells. Attackers were given an oaken crossbow of varying quality and basic quality copper bolt. Defenders were given an oaken shield of varying quality (no armor). Item quality was manipulated by running a lua script in DFHack, courtesy of Urist Da Vinci
[4]. Skill levels were set to Marksdwarf = 10, Shield User = 3, since based on the previous experiment they result in a blocking chance slightly higher than 50% for basic quality crossbows and shield. Results are presented in Figure 6.
Observations
- Surprisingly, neither weapon nor shield quality have any affect on blocking chance, which remained at the same level (around 52%) throughout all experiments.
RESULTS - TWO SHIELDSDual wielding shields is commonly acknowledged to increase blocking chance. In this experiment, two test grids were used in the experiment, for a total of 4970 cells. Attackers were given an oaken crossbow of basic quality and basic quality copper bolt. Defenders were given two oaken shields (no armor). Skill levels were set to Marksdwarf = 10, Shield User = 3, since based on the previous experiment they result in a blocking chance slightly higher than 50% for basic quality crossbows and shield.
By adding the second shield, the Probability of Block increased from 50% to 66%. This corresponds to the SPF increasing from 2 to 3.
Additional experiments resulted in an PoB increase from 10% to 15% (Marksdwarf = 10, Shield User = 0) and 75% to 90% (Marksdwarf = 10, Shield User = 5).
Observations
- Adding a second shield does indeed increase blocking chance.
- However, this increase does not correspond to the second shield having the same PoB as the first one. If that were the case, the PoB would have increased from 50% to 75%.
- Based on obtained data, it appears that the second shield suffers an approximately 50% blocking percentage penalty - that is, if the probability of blocking an attack with the first shield is 50%, then the probability of blocking an attack with the second shield (after failing the first block) is reduced to 25%.
CONCLUSIONS- Shields tend to guarantee higher survivability than bucklers, especially at high levels of Shield User and low levels of Marksdwarf, with shield SPF reaching values up to 1.5 times higher than bucklers at the same skill levels.
- Shield material has no effect on blocking chance.
- Weapon and Shield quality have no effect on blocking chance.
- When wielding two shields, the second shield has an approximately 50% reduction in blocking chance.
Edit: Minor corrections
Edit2: Addition of the SPF parameter and related conclusions, in accordance with the suggestions of Hans Lemurson.