The game calculates damage in two steps. First the damage dealt by the skill used. Then the damage received by the target. For the sake of clarity this article is divided accordingly. This is a definition of the terms used in some of the formulas:
rand(x,y) = a random number between x and y
min(x,y) = the minimum between x and y
max(x,y) = the maximum between x and y
Each variable has a default value that can be modified by one or several modifiers. The value can be multiplied (*), added (+), subtracted (-) or a new value can be set (=). This page lists all usable skills in the game.
= damage direct multiplier
* (direct damage multiplier + direct damage addend)
The result is a multiplier not an amount of damage.
Damage Direct Multiplier[]
Character = 1 (default)
Enemy
Condition
=
*
Goblin Ambusher
Low (weak version)
1
Goblin Ambusher
1.4
Goblin Ambusher
Day 200+
1.5
Goblin Skirmisher
Low (weak version)
1
Goblin Skirmisher
1.25
Goblin Overseer
1.1
Goblin Wolfrider
1.25
Master Archer
1.25
Webknecht
Webbed
2
Direct Damage Multiplier[]
See Weapons for default values.
Some skills and perks can modify the weapon value.
It seems that direct damage is solely determined by weapon skills. Direct damage modifiers within weapon files are used solely for UI purposes. This means that for example a Goedendag will ignore 25% of armor when using Thrust and 40% when using Knock-Out, although the weapon descriptions states it as ignoring 25% of armor. Possibly, this used to be different.
Direct Damage Addend[]
Character = 0 (default)
Enemy/Skill
Condition
+
Webknecht
day 30+
0.05
Duelist
Off-hand free
0.25
Fatigue Damage[]
= 5 * fatigue damage multiplier
Fatigue Damage Multiplier[]
Character = 1 (default)
Skill
+
Bash
2
Cudgel
4
Knock Out
2
Strike Down
4
Minimum Damage[]
Character = 0 (default)
Skill
=
Batter
10
Destroy Armor
10
Demolish Armor
10
Secondary Damage[]
Secondary damage ignores armor (unless it specifically targets it like acid). It stacks if applied multiple times. As damage from attacks it can be resisted (see the Damage Received section) but Nimble does not protect against it. All effects are removed after combat.
Damage over Time[]
Bleeding[]
Bleeding is caused by Cleavers Cleave Skill, Jagged Pike Rupture Skill and Whips Whip Skill for 5 damage (2 stacks of Bleed for Whips) over 2 turns (3 with the Bleeder Trait). The damage is increased to 10 for Cleave and Whip Skills with the Cleaver Mastery. The minimum (hitpoints) damage necessary for the effect to occur at all is 6.
Some Temporary Injuries cause bleeding like damage for the duration of the battle when they were sustained. Grazed Neck deals 1 damage per turn and Cut Artery deals 3. Both these Injuries as well as any bleeding can be cured with Bandages First Aid Skill. Undead are immune to bleeding.
Poison[]
Poison is used by Goblin Ambushers and Webknechts. But only Webknechts poison inflicts damage. Like bleeding, poison is only applied if 7 or more (hitpoints) damage has been dealt. The spider poison deals 5 damage per turn for 3 turns (4 with the Ailing Trait). Poisoned Oil works a bit differently. Webknechts, Undead and some other monsters are immune to the effect.
Acid[]
Acid is sprayed over armor when hitting an adjacent Lindwurm for more than 10 damage or by being hit with an Acid Flask. The acidic effect lasts 3 turns and removes 10% of current body (20% with the flask) and head armor (4% with the flask) durability. Lindwurms are immune to the effect. A body armor with the Lindwurm Scale Cloak Armor Attachment is unaffected by it. The Lindwurm Armor and Lindwurm Helmet are also unaffected.
Olaf the Reckless makes it this time! Hopefully he'll eventually learn the meaning of his surname!
Case 3[]
Actors, Skills & Equipment[]
Gebhard attacks a Size 1 Ifrit.
Gebhard uses the following skill:
Split Man (Man Splitter)
The Ifrit is a regular small ifrit:
It has 110 hitpoints
It has natural armor on body and head (110 durability)
Being an ifrit, it has no head, and all attacks always hit its body
Damage[]
Gebhard hits the Ifrit's body with Split Man!
body damage multiplier = 1
Man Splitter has a range of 90 - 120 and Gebhard rolls 120 on regular damage!
regular damage dealt = 120
Gebhard rolls 110 on armor damage! Man Splitter deals 160% damage to armor!
armor damage dealt = 110 * 1.6 = 176
The Ifrit's natural armor is hit for 176 damage and is destroyed! But the armor's durability was 110 which is less, and it is the actual taken damage. The Ifrit takes direct damage! Man Splitter deals 40% damage through armor!
direct damage = 120 * 0.4 = 48
Since the armor is zero, the game calculates additional damage!
The game does not decrease damage when the number is negative, so the Ifrit takes 48 damage to hitpoints. Split Man deals a second damage instance with separate rolls! This attack would normally hit the head, but ifrits have none, and it hits its armorless body instead! Body part damage modifier of the second attack of Split Man is always set to 1, even when it hits the head.
body damage multiplier = 1
Gebhard rolls 120 on regular damage again! However its damage is halved.
regular damage dealt = 120 * 0.5
Since there is no armor, armor damage roll does not matter and will not affect anything. The Ifrit takes direct damage!
direct damage = 60 * 0.4 = 24
Since the armor is zero, the game calculates additional damage!