Siege and Assault mechanics explained

  • We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Wethospu

Captain
46 Badges
May 29, 2019
360
258
  • Hearts of Iron IV: La Resistance
  • Battle for Bosporus
Got some spare time so did some reverse engineering.

Siege

This was easy to figure out because most of the information is on the UI.

  • Siege is attempted every 30 days with fort and 15 days without forth.
  • Fort Defense and Siege Ability modify this duration. For example City State giives +20% defense which results in 36 days intervals.
  • Every attempt a dice (1 to 14) is rolled.
  • Fort level and port (unless blocked) reduce the roll.
  • Siege Accumulation, General martial skill (divided by 5) and Siege Engineering inventions increase the roll.
  • Siege Accumulation is shown on the map. The percentages don't actually mean anything. For example the notorious "42%" doesn't mean that you have 42% chance to win, it just means that the Siege Accumulation is 11.
  • Siege Accumulation increases over time with good rolls and is lost if you stop the siege.
  • Garrison has no effect for sieging (but important for assaults).
  • Hover over the percentage on Siege window to see actual chances for different outcomes.

Outcomes from rolls

  • Disease Outbreak (roll 1): No progress, 5% of attackers die.
  • Status Quo (rolls 3-4 and < 1): No progress.
  • Supplies Shortage (rolls 5 -11): +1 to Siege Accumulation, 1% of Garrison dies.
  • Food Shortage (rolls 12 - 13): +2 to Siege Accumulation, 3% of Garrison dies.
  • Water Shortage (rolls 14 - 15): +3 to Siege Accumulation, 5% of Garrison dies.
  • Defenders desert (rolls 16 - 19): +2 to Siege Accumulation, 10% of Garrison dies.
  • Breach (dice 14, all modiifers ignored, higher priority): +2 to Siege Accumulation, +1 to Breach, 5% of Garrison dies.
  • Surrender (rolls < 19 or less than 10% garrison, top priority): Siege over.

Assaults

This was way more tricky to figure out because there is barely any information available.

  • Only Archers, Heavy Infantry and Light Infantry can assault.
  • All units will assault together, no way to send only some of them.
  • Garrison takes only 10% damage.
  • Garrison gets +5 to dice roll, unless there is a breach.
  • Standard dice (1 to 6) is used with 5 days per roll (like in normal combat).
  • Combat width is 3 x Fort level.
  • Combat width limits total strength, not amount of units. So partially damaged units can deal damage effectively.
  • All units in the assault take damage, even when they are not dealing any damage.
  • General martial skill (+Assault ability) increases strength of your units so less units are needed to fill the combat width.
  • Not filling the combat width causes less damage dealt and more damage taken.
  • It doesn't matter which units are used. Discipline, etc has no effect.
  • Assault lasts until manpower or morale runs out for every unit. Units can fight in the assault even without morale.

Assault formula
  • Garrison morale damage to all attackers: Roll
  • Garrison strength damage to all attackers: Garrison strength * Roll / Effectiveness
  • Assault morale damage to Garrison: 0 (no morale for Garrison)
  • Assault strength damage to Garrison: Roll * 0.1 * Effectiveness
  • Roll: 0.2 - 0.3 for Garrison without breach, 0.1 - 0.2 for assault and Garrison with breach
  • Effectiveness = Assault strength * (1 + 0.1 * Martial + Assault ability), maximum of 3 * Fort level
These formulas can be simplified to two formulas.

If you have enough units, effectiveness is 3 * Fort level:
  • Garrison strength damage to all attackers: Garrison strength * Roll / 3 / Fort level
  • Assault strength damage to Garrison: Roll * 0.1 * 3 * Fort level

If you don't have enough units:
  • Garrison strength damage to all attackers: Garrison strength * Roll / Assault strength / (1 + 0.1 * Martial + Assault ability)
  • Assault strength damage to Garrison: Roll * 0.1 * Assault strength * (1 + 0.1 * Martial + Assault ability)

???

If you fill the combat width:
  • Assault deals same damage with any amount of units.
  • All units in the assault take damage.
  • So overstacking is bad.
If you don't fill the combat width:
  • Weakened units take more and more damage.
  • Weakened units deal less and less damage.
  • The assault will be destroyed very quickly and it won't deal much damage.
If you fill the combat width:
  • 3% - 6% of max Garrison is defeated every day, so assaults always take 17 - 34 days.
  • On first day, 6.67% - 10% of assaulters die with all fort levels (3.33% - 6.67% if breach).
  • This gradually scales down 3% - 6% per day when Garrison gets weaker.
  • Higher level forts need more units so more losses overall.
For optimal results, have a minimum amount of units while sending reinforcement one by one.


Example against unharmed level 3 fort

~37 days of assault. ~8k units lost (+ ~1k to attrition).

  1. Send 6 Archers + 13 Light Cavalry.
    1. 15k men is needed to keep siege siege going.
    2. Goal is to keep Archers between 5k-6k so 10 Light Cavalry is a minimum.
    3. But safer to use 11 Light Cavalry because of attrition.
  2. After 2 days: Send 1 Archer.
  • After 2 days: Send 1 Archer.
  • After 3 days: Send 1 Archer.
  • After 3 days: Send 1 Archer.
  • After 4 days: Send 1 Archer.
  • Main group arrives at the fort. Start assault immediatelly.
    1. First reinforcement arrives after 2 days: Merge and consolidate.
    2. Second reinforcement arrives after 2 days: Merge and consolidate.
  • After 4 days: Send 1 Archer.
    1. Third reinforcement arrives: Merge and consolidate.
  • After 5 days: Send 1 Archer.
    1. Fourth reinforcement arrives.
      1. Morale should be low by now.
      2. Use Create new unit to organize units.
      3. Move Archers with low morale to new army and then move them back.
      4. Now Archers with low morale are at bottom and get first consumed by consolidate.
    2. More reinforcements arrive..
  • After several days: Assault won.
TLDR
  • Against 1000 Garrison, no breach: 5 Archers + 5 Light Cavalry -> 2k of units lost
  • Against 2000 Garrison, no breach: 9 Archers + 9 Light Cavalry -> 20 days of assault, 4k of units lost
  • Against 3000 Garrison, no breach: 13 Archers + 13 Light Cavalry -> 37 days of assault, ~8k of units lost (+ some to attrition)
 
Last edited:

Torugu

Colonel
80 Badges
Mar 1, 2013
863
2.359
  • Crusader Kings II
  • Crusader Kings II: Jade Dragon
  • Europa Universalis IV: Third Rome
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Reapers Due
  • Stellaris: Galaxy Edition
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Pre-order
  • Rome: Vae Victis
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Rome Gold
  • Europa Universalis IV: Res Publica
  • Magicka
  • Hearts of Iron III Collection
  • Hearts of Iron III: Their Finest Hour
  • Crusader Kings II: The Republic
  • Hearts of Iron II: Armageddon
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Europa Universalis IV: Wealth of Nations
  • Crusader Kings II: Sons of Abraham
  • Europa Universalis IV: Conquest of Paradise
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Dungeonland
  • Crusader Kings II: Sunset Invasion
  • Europa Universalis III: Chronicles
  • Stellaris Sign-up
  • Europa Universalis IV: Mandate of Heaven
  • Europa Universalis IV
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: No Step Back
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Tyranny: Archon Edition
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Cadet
  • Victoria 2
  • Stellaris: Galaxy Edition
  • Stellaris
  • Crusader Kings II: Conclave
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Pillars of Eternity
  • Crusader Kings II: Way of Life
Sorry, I'm not sure I get it.

So assuming I have an army of 30k light infantry and 5k Light Cavalry and I'm assaulting a level one for I should:

1. Split of 28k light cavalry and order them to move to another province (so they don't participate in the assault)
2. Assault with 2k light infantry and 5k Cavalry
3. After the assault is over (failed) merge the 28k stack with the (now depleted) 2k infantry
4. Create a fresh stack of 2k infantry and 5k Cavalry
5. Repeat until fort is captured

Am I understanding this correctly?
 

Wethospu

Captain
46 Badges
May 29, 2019
360
258
  • Hearts of Iron IV: La Resistance
  • Battle for Bosporus
Edit: There is probably also a way with less micro. Going to test it later.

For a level 3 fort I did:
  1. Send 6 Archers + 13 Light Cavalry.
    1. 15k men is needed to keep siege siege going.
    2. Goal is to keep Archers between 5k-6k so 10 Light Cavalry is a minimum.
    3. But safer to use 11 Light Cavalry because of attrition.
    4. If at any point there is less than 5k Archers:
      1. You can't consolidate or you end up with 5 units which means more punishing combat.
      2. Use Create new unit to move 2 strongest stacks to a new army.
      3. Now consolidate should end up with 4 Archers.
      4. Merge all units back to 6 Archers. Don't hit consolidate until more reinforcements arrive.
  2. After 2 days: Send 1 Archer.
  3. After 2 days: Send 1 Archer.
  4. After 3 days: Send 1 Archer.
  5. After 3 days: Send 1 Archer.
  6. After 4 days: Send 1 Archer.
  7. Main group arrives at the fort. Start assault immediatelly.
    1. First reinforcement arrives after 2 days: Merge and consolidate.
    2. Second reinforcement arrives after 2 days: Merge and consolidate.
  8. After 4 days: Send 1 Archer.
    1. Third reinforcement arrives: Merge and consolidate.
  9. After 5 days: Send 1 Archer.
    1. Fourth reinforcement arrives.
      1. Morale should be low by now.
      2. Use Create new unit to organize units.
      3. Move Archers with low morale to new army and then move them back.
      4. Now Archers with low morale are at bottom and get first consumed by consolidate.
    2. More reinforcements arrive..
  10. After several days: Assault won.
For a level 1 fort I think I sent reinforcements every ~4 days.

You can wait for the assault to fail and then move more units but that will take much longer. Also I think the Garrison replenishes 10% of maximum every month.
 
Last edited:

Wethospu

Captain
46 Badges
May 29, 2019
360
258
  • Hearts of Iron IV: La Resistance
  • Battle for Bosporus
Based on algorithms:
  • 3% - 6% of max Garrison is defeated every day, so assaults should always take 17 - 34 days.
  • Garrison can probably refresh 10% max Garrison every month so can take 2 -3 more days.
  • On first day, 6.67% - 10% of assaulters die with all fort levels (3.33% - 6.67% if breach).
  • This gradually scales down 3% - 6% per day when Garrison gets weaker.
  • Higher level forts need more units so more losses overall.
  • For example level 1 fort needs 2 units while level 3 fort needs 6 units so level 3 fort loses 3x units.
I will do some Excel stuff later when I get back home from work.
 

Torugu

Colonel
80 Badges
Mar 1, 2013
863
2.359
  • Crusader Kings II
  • Crusader Kings II: Jade Dragon
  • Europa Universalis IV: Third Rome
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Reapers Due
  • Stellaris: Galaxy Edition
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Pre-order
  • Rome: Vae Victis
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Rome Gold
  • Europa Universalis IV: Res Publica
  • Magicka
  • Hearts of Iron III Collection
  • Hearts of Iron III: Their Finest Hour
  • Crusader Kings II: The Republic
  • Hearts of Iron II: Armageddon
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Europa Universalis IV: Wealth of Nations
  • Crusader Kings II: Sons of Abraham
  • Europa Universalis IV: Conquest of Paradise
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Dungeonland
  • Crusader Kings II: Sunset Invasion
  • Europa Universalis III: Chronicles
  • Stellaris Sign-up
  • Europa Universalis IV: Mandate of Heaven
  • Europa Universalis IV
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: No Step Back
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Tyranny: Archon Edition
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Cadet
  • Victoria 2
  • Stellaris: Galaxy Edition
  • Stellaris
  • Crusader Kings II: Conclave
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Pillars of Eternity
  • Crusader Kings II: Way of Life
Based on algorithms:
  • 3% - 6% of max Garrison is defeated every day, so assaults should always take 17 - 34 days.
  • Garrison can probably refresh 10% max Garrison every month so can take 2 -3 more days.
  • On first day, 6.67% - 10% of assaulters die with all fort levels (3.33% - 6.67% if breach).
  • This gradually scales down 3% - 6% per day when Garrison gets weaker.
  • Higher level forts need more units so more losses overall.
  • For example level 1 fort needs 2 units while level 3 fort needs 6 units so level 3 fort loses 3x units.
I will do some Excel stuff later when I get back home from work.

Wow, what an unintuitive system. That means there is literally no point to bringing more soldiers to an assault and it's always optimal to execute an assault with the minimum number of soldiers possible...
 

Wethospu

Captain
46 Badges
May 29, 2019
360
258
  • Hearts of Iron IV: La Resistance
  • Battle for Bosporus
Further testing showed that my formulas were incorrect.

Minimum required units is affected by 3 x Fort level and divided by Assault Ability (general martial skill). With less than enough units the assault gets destroyed quickly.

Initially I tested against level 3 fort (so minimum 9000) with level 9 general -> 9000 / 1.9 = 4736. So 6 units was optimal (allow reinforcing from 5k to 6k).

But the tactic of sending units one by one is still the most effective.
 
Last edited:

Nussor

Lt. General
55 Badges
May 17, 2016
1.277
596
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sword of Islam
  • Stellaris - Path to Destruction bundle
  • Age of Wonders III
  • Tyranny: Archon Edition
  • Stellaris: Synthetic Dawn
  • Surviving Mars
  • Europa Universalis IV: Mandate of Heaven
  • Cities: Skylines - Mass Transit
  • Steel Division: Normandy 44
  • Crusader Kings II: Monks and Mystics
  • Stellaris: Leviathans Story Pack
  • Age of Wonders: Planetfall
  • Age of Wonders: Planetfall - Revelations
  • Stellaris: Apocalypse
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Stellaris: Megacorp
  • Crusader Kings II: Holy Fury
  • Imperator: Rome
  • Stellaris: Ancient Relics
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV
  • Crusader Kings III
  • Victoria 2
  • Crusader Kings III: Royal Edition
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Stellaris: Federations
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Europa Universalis IV: Rights of Man
  • Cities: Skylines - After Dark
  • Victoria 2: A House Divided
  • Victoria: Revolutions
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Wealth of Nations
Is there a way to get rid of the 42% max progress? I've looked into the defines, but didn't find anything, and can't find a rules file. Please don't tell me this is hardcoded.
 

Reman

Field Marshal
74 Badges
Jun 26, 2010
2.689
3.735
  • Stellaris: Lithoids
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Surviving Mars: First Colony Edition
  • Crusader Kings II: Holy Fury
  • Europa Universalis IV: Golden Century
  • Imperator: Rome Deluxe Edition
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: La Resistance
  • Stellaris: Federations
  • Imperator: Rome - Magna Graecia
  • Crusader Kings III
  • Battle for Bosporus
  • Europa Universalis 4: Emperor
  • Stellaris: Necroids
  • Stellaris: Nemesis
  • Hearts of Iron IV: By Blood Alone
  • Hearts of Iron IV: No Step Back
  • Hearts of Iron IV: Death or Dishonor
  • Europa Universalis IV
  • Victoria 2
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Mandate of Heaven
  • Surviving Mars
  • Crusader Kings II
  • Imperator: Rome
  • Victoria 2: A House Divided
This thread has quite a bit of good info, although I wonder how much of it is confirmed vs just an approximate guess. For instance, are you sure there's really no combat width in assaults? In EU4, all infantry on the province where the siege is occurring will take losses during an assault like in Imperator, but the UI makes it clear that only a certain amount of them will deal damage to the defenders at any given time. In that sense there is a rigidly enforced combat width, with extra infantry taking casualties being just a glitch/poor design decision.

Also, why bother testing this with a level 3 fort? I've only ever encountered level 1's in SP, so tests should focus most heavily on optimizing for them.
 

Wethospu

Captain
46 Badges
May 29, 2019
360
258
  • Hearts of Iron IV: La Resistance
  • Battle for Bosporus
I have tested this against level 1, 2 and 3 forts with multiple different generals and amount of units. So far I can calculate results with 100% accuracy and everything makes sense.

But I will still do some more tests to verify.
 

Wethospu

Captain
46 Badges
May 29, 2019
360
258
  • Hearts of Iron IV: La Resistance
  • Battle for Bosporus
This thread has quite a bit of good info, although I wonder how much of it is confirmed vs just an approximate guess. For instance, are you sure there's really no combat width in assaults? In EU4, all infantry on the province where the siege is occurring will take losses during an assault like in Imperator, but the UI makes it clear that only a certain amount of them will deal damage to the defenders at any given time. In that sense there is a rigidly enforced combat width, with extra infantry taking casualties being just a glitch/poor design decision.

Also, why bother testing this with a level 3 fort? I've only ever encountered level 1's in SP, so tests should focus most heavily on optimizing for them.

On a further though, you are actually right about the combat width. It won't affect the formula but definitely more intuitive way to explain it.

Calculated examples against level 1 fort:
  • Rolls 3 and 3. Martial 10:
    • 2000 units, first reinforce after 6 days, second after 8 more days.
    • 23 days for assault, 2.2k units lost.
  • Rolls 3 and 3. Martial 10:
    • 2000 units, first reinforce after 5 days, second after 7 more days.
    • 21 days for assault, 2.2k units lost.
  • Rolls 3 and 3. Martial 10:
    • 3000 units, first reinforce after 7 days, second after 8 more days.
    • 21 days for assault, 2.6k units lost.
  • Rolls 3 and 3. Martial 5:
    • 3000 units, first reinforce after 6 days, second after 7 more days.
    • 22 days for assault, 2.8k units lost.
 
Last edited:

Wethospu

Captain
46 Badges
May 29, 2019
360
258
  • Hearts of Iron IV: La Resistance
  • Battle for Bosporus
Ok, I think I have a pretty good solution now.

  1. Calculate required manpower (3 * fort level / (1 + 0.1 * Martial)
  2. For example for level 1 fort it's 1500-2000 (martial 10 and 5).
  3. Estimate total amount of needed troops.
  4. For example with martial 10 I need 6 units in the worst case.
  5. Send all units. Start assault.
  6. Separate 4 units and send them back (they will be instantly removed from assault),
  7. Wait a few days until assault manpower drops below 1500.
  8. Send those 4 units back (movement becomes locked after 7 days).
  9. Merge and consolidate.
  10. Again send excess units back.
  11. Repeat until over.

It still requires lots of micro but is simple to execute and is 100% optimal with any dice rolls.

I'm writing an assault page for wiki at the moment. I will add a table with recommended amount of units so just need to check that table for assaults.
 
Last edited:

Todie

Doer of things and stuff in the videogame
38 Badges
Mar 9, 2018
1.963
2.090
www.twitch.tv
  • Imperator: Rome
  • Stellaris: Synthetic Dawn
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Cities: Skylines Industries
  • Age of Wonders II
  • Stellaris: Ancient Relics
  • Age of Wonders: Planetfall
  • Hearts of Iron IV: La Resistance
  • Stellaris: Federations
  • Imperator: Rome - Magna Graecia
  • Crusader Kings III
  • Crusader Kings III: Royal Edition
  • Stellaris: Nemesis
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV
  • War of the Roses
  • Cities: Skylines
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Cadet
  • Tyranny: Archon Edition
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Natural Disasters
  • Stellaris
  • Cities: Skylines - Snowfall
  • Stellaris: Megacorp
  • Hearts of Iron IV: Expansion Pass
  • Magicka 2
  • Stellaris - Path to Destruction bundle
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Art of War
  • Crusader Kings II
Nice work.

I wonder what devs other than Johan are most intimately familiar with the nitty gritty details of seige, assault, combat and their UI’s , seeing as how youve pinpointed several things bugged about combat - like the naval deployment where flanks deploy in center ... did you ever see if these bugs were reported @Wethospu ? Or file reports urself?


...

Also, how would you propose to change the assault algorithm?

when first seeing Reman explain the thing with every cohort taking damage from the assault ticks, My spontanous thought was wanting this functionality replaced with ”accelerated attrition” of some description , during the assault, while the few cohorts in assault-width also take dmg from combat-ticks. Also, is morale damage a factor at all in assaults? I feel like it should be; assaults should sometimes fail without the army losing 60%+ of its men...