DungeonSettlers.wiki

Combat Formulas

Steam

Every combat number on this page is read straight from the game's own tables (DS_B.0.4.29); the table or constant is named next to each. Values are the player-side defaults (monsters use their own base stats). This is the same math the Character Builder runs.

The stat pipeline order matters

A unit has six major stats (Strength, Constitution, Will, Intelligence, Agility, Perception) that feed every final stat. Both are built in a strict order - flat first, percent last.

  1. Major stat = base 10 + talent growth per level + flat bonuses, then x (1 + sum of % bonuses). Talent growth per level is set by the stat's talent tier (Poor to Genius) times the level-up offering multiplier - see Talents & stats.
  2. Final stat = its Base + Σ (major stat x its coefficient) + flat bonuses, then x (1 + PerModifier %). The coefficients are the table below (StatusValueTable); the PerModifier % is where affecters, inscriptions and difficulty apply (e.g. MaxHealthTotalPerModifier_50 = +50% HP). Only player units add the major stat part; a monster's final stats are its own table values.

Because percent bonuses apply after the flat sum, a +50% modifier multiplies your whole flat total, not just the base.

Per-point stat values what 1 point of each major gives

One point of a major stat adds the amount below to each final stat (from StatusValueTable). The headline answers: 1 Constitution = +9 Max HP, 1 Strength = +1 Physical Attack, 1 Intelligence = +1.2 Magic Attack.

Final statBaseStrConWillIntAgiPer
Max Health Total205-+9----
Physical Attack Power13.5+1---+0.5+0.5
Magic Attack Power13.5--+0.4+1.2-+0.4
Attack Speed0.4----+0.01-
Critical Chance8%-----+0.3
Cooldown Reduction0--+0.3---
Physical Resistance0-+0.3----
Magic Resistance0---+0.3--
Max Energy60--+2---
Movement Speed80----+0.2-
Max Weight100+4-----

Base is the flat starting value before any major stat. Blank = that major does not affect that stat. The 9 non-combat capabilities (mining, research, cooking...) each scale +0.05 per one major and are left out here.

Worked example

A unit with 20 Constitution has 205 + 9x20 = 385 Max HP before any % modifier. With 20 Str / 15 Agi / 12 Per its Physical Attack is 13.5 + 1x20 + 0.5x15 + 0.5x12 = 47.

Hit damage attack, crit, hit location, guard

A hit starts from the attacker's Physical or Magic Attack Power (a basic attack uses its skill's percent of it), then additive damage bonuses, the hit result below, and the target's resistance apply in that order:

  • Critical hit: multiplies damage by 1 + Critical Damage Bonus / 100, which is x1.5 at the default 50% bonus. Crit chance starts at 8% and gains +0.3% per Perception.
  • Hit location: each hit lands on the head (30%) or the body (70%) (GAMESYSTEM_Combat_DamagePartsRatio); damage beyond that bar's remaining HP spills into the other bar. Only an empty head bar matters: a settler is downed (and dies if it is already downed), any other unit dies. An empty body bar downs no one.
  • Guard: only physical hits can be guarded. A successful guard cuts the damage by the target's Guard Damage Reduction (50% by default) and a guarded hit cannot crit. It does not protect durability: a settler's armor still wears on a guarded hit, by 10% of the damage that gets through, like on any other hit.

Example: a 47 Physical Attack that crits deals 47 x 1.5 = 70.5 before resistance.

Resistances diminishing returns

Each damage type (Slash, Blunt, Pierce, and the magic elements Arcane, Fire, Ice, Lightning, Holy, Dark) has its own resistance, starting at 0. Physical Resistance gains +0.3 per Constitution, Magic Resistance +0.3 per Intelligence (StatusValueTable).

Damage taken = raw damage x 100 / (100 + R), where R is your Physical Resistance for physical damage or Magic Resistance for magic damage (read from the game's combat code). So R = 50 lets through 100/150 = 67% (a 33% cut); R = 100 lets through 50%; R = 200 lets through 33%. Resistance never reaches full immunity, and each point is worth slightly less than the last.

Damage over time Bleeding, Burning, Poison

Bleeding and Burning are stacking debuffs whose per-second damage is fixed per stack (from AffecterTable FloatValues) - it does not scale with the attacker's Attack Power; the applying skill decides how many stacks land. Poison is separate: a share of the target's Max HP per stack on a slower beat (see the note under the table).

EffectDamageDamage typeMax stacks
Bleedingstacks x 5 per secondPhysical, ignores shields99
Burningstacks x 3 per secondMagic, ignores shields50
Poison1% of Max HP per stack every 10 secondsTypeless, no resistance applies100
Poison in full. 1% of the target's Max Health per stack as typeless damage every 10 seconds, so no resistance reduces it. Stacks up to 100; scales with the target's Max Health, not the caster's attack power. Example: one stack on a 500 HP target is 5 damage every 10 seconds. Duration is set by the applying skill. The Capped Effects page uses the same rule.

The calculator covers the two confident stacking DoTs, Bleeding (physical) and Burning (magic): both bypass shields/barriers but not the target's resistance, the applying skill sets the stack count, and the per-second damage is fixed and never scales with attack. Poison is left out of the calculator on purpose - it is a share of the target's Max HP per stack and runs on its own 10-second beat rather than ticking every second (see the note under the table).

Encirclement authored, not active

Defined in the data, not active in this build. Encirclement (GAMESYSTEM_Combat_StrategyRule_Encirclement) is authored as a constant, but a decompile of DS_B.0.4.29 shows no combat code reads it - the hit and crit resolution has no positional or surrounding-unit term, and the constant is never loaded. So it currently has no effect on anyone, player or monster. The numbers below are what it would do if the developers wire it up.

If activated, surrounding an enemy would reward positioning: per allied unit engaged around the same target, attackers would gain +10% hit chance and +5% critical chance.

The constant is written per surrounding unit, so the bonus would count from the very first flanker (no "free" first unit): three attackers around one enemy would give +30% hit, +15% crit. Because the combat path is faction-agnostic, it would also apply symmetrically - enemies surrounding one of your units would get the same benefit against it.

Difficulty scaling Combat axis

The Combat difficulty setting scales monster stats through AFFECTER_MonsterDifficulty* (applied as PerModifier %). Easier settings weaken monster attack; harder ones raise both HP and attack. On Devastation a monster has x1.5 the HP and x1.5 the attack power it has on Hard. See the full economy/management axis on the Difficulty page.

Combat difficultyMonster HPMonster attack
Easybaseline-85%
Normalbaseline-60%
Hard (baseline)baselinebaseline
Very Hard+25%+25%
Devastation+50%+50%

Summon scaling a snapshot of the summoner's Magic Attack

Only some summons (Bubbleling, Bubble Toad) scale off the summoner's Magic Attack at the moment they spawn, on top of the creature's own base stats. Later buffs on the summoner do not change them; loading a save computes them again from the summoner's current stats. No table carries these numbers; they are read from the game's code:

  • Summon Max HP = summoner Magic Attack x 1 + creature base HP
  • Summon Magic Attack = summoner Magic Attack x 0.5 + creature base attack

The summoned plants (Solar Bloom, Sunheart Bloom, Mucus Sprayer) use their own rule: Durability = summoner Magic Attack x 0.5 + base Durability, and Magic Attack = summoner Magic Attack x 1. Every other summon keeps its table stats.

A stronger caster makes tougher, harder-hitting summons. Full per-creature numbers are on the Summons guide.