• 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.

HOI4 Dev Diary - Combat and Stats changes

Hi everyone and welcome back to another dev diary! Today is about various changes that affect combat and units. With the Barbarossa update we want to shake up the meta a bit and also change a few stats and other aspects to make using the tank designer more interesting and rewarding.

High Command bonus changes
For a long time now unit bonuses from high command have confused people. Most expect that they apply to battalions, when in fact they apply only if their target unit type was “the majority type”, which was basically a weighted type count. They also could overlap, so infantry, mountaineers and artillery would apply to the same units letting you stack stuff in ways that was never intended and quite unintuitive.

Screenshot_1.png


This system has now changed, and divisions get bonuses based on their composition, this is a straight up ratio based on the number of non-support battalions of each type, so a 2x artillery 3x infantry division will be 40% artillery 60% infantry.
Battalions are always classified as a single type for this (even though some are scripted with multiple types) based on this priority:
cavalry > armor > artillery > motorized > mechanized > infantry

The exceptions being rocket & special forces, which both act as an addition, so if the 3 infantry divisions in the example above were mountain units, then the division would also be 60% special forces and if the 2 artillery are nebelwerfers it'd also be 40% rocket

When counting the battalions of armies (ie when we have an actual unit and not only a division template), battalions that lack equipment will count as less, so a Light Tank battalion with only half it's tanks will count as 0.5 battalions (and not count at all if without tanks). The total sum of the compositions will still end up 100% (unless every battalion is without equipment).

Screenshot_3.png


To make it easier to see this we now have an indicator in the division windows showing the breakdown.

Combat Width
As a part of our efforts to shake up the 40/20 width meta, we have made changes to the combat width of province terrain. Province widths now range from 75 to 96. Plains have a new base combat width of 90, while Mountains have a new combat width of 75. Most of these widths will not divide into each other easily, hopefully moving the ideal width away from multiples of 10.

Urban provinces are now the “widest” with a width of 96. But this does not mean they will be the easiest provinces to overwhelm. Mountains, marshes, and urban provinces now have reinforcement widths of ⅓ of province width instead of ½. This should hopefully give these provinces a slight defensive buff, while allowing us to open up pushing power in the more open tiles.


Screenshot_2.png


In conjunction with these changes, we have also been looking at reducing the overstacking penalty. We hope that this will alleviate some of the need to have divisions that are the perfect width for a given province. But at the same time, smaller countries should now be able to specialize their division width to suit their home terrain more appropriately.

Breakdown (numbers not final etc etc)
  • Plains
    • Standard 90
    • Reinforce 45
  • Desert
    • Standard 90
    • Reinforce 45
  • Forest
    • Standard 84
    • Reinforce 42
  • Jungle
    • Standard 84
    • Reinforce 42
  • Hills
    • Standard 80
    • Reinforce 40
  • Marsh
    • Standard 78
    • Reinforce 26
  • Urban
    • Standard 96
    • Reinforce.32
  • Mountain
    • Standard 75
    • Reinforce 25
One of the major things that make larger divisions like 40 width armor hit disproportionally harder than smaller ones is also how targeting and damage works inside combat in relation to the enemies defense. Essentially the larger divisions make more efficient use of concentrated damage as it punches through defense. To solve this we are doing a few things. First of all we are weighting the targeting towards wider divisions being more likely targets and also when picking targets to try and match it to have wider divisions spread damage over smaller rather than always concentrating it. They will probably still hit harder, but combined with width changes and other downsides of larger divisions it should make it less clear cut.
However, this part isn’t quite done yet though so I’ll cover it again in more detail in one of the “bag of tricks” diaries in the future when i see how it pans out, but I figured it needed to be mentioned now ;) That said though, to wet your appetites here is a little tease from a debug mapmode in development...
1620214309589.png


Armor and Piercing
Currently the effects of having stronger armor than the enemy can pierce, or being able to pierce an enemies armor are binary and give fixed bonuses. This meant that there wasn't really any benefit to have more armor than you needed to stop the enemies piercing, and also that being a single point of piercing under enemy armor was just as bad as having no piercing. So things were quite binary. With the tank designer coming we wanted to make it feel like your investments in upgrades were always worth it, so we are changing armor and piercing to have more gradual effects.

Armor > Piercing
  • Unit takes half damage (as it currently works)
Armor < Piercing and Amor > 0.75 * Piercing
  • Take damage between half damage to normal damage by difference in value
Armor < 0.75 * Piercing
  • The unit takes normal damage
Lets break this down with an example:
  • A panzer division has an armor value of 52
  • Its being attacked by an infantry division with some anti-tank guns. Their piercing is 60
  • If this was the old system this armor would be worthless and not reduce damage at all
  • Now because its close enough (between 60 and 45), so you get roughly half of the normal effect around 25% reduction of damage.

Reliability
For the tank designer it was important that reliability was more impactful if it was to be a good tradeoff with other aspects of design, so we needed to change it up (lest @CraniumMuppets 0% reliability tank monsters would take over the world). Now it will not just affect rate of loss in attrition but various other aspects:
  • Reliability affects losses from attrition like before
  • Reliability now affects org regain when moving, and also makes any weather related org effects more impactful when low
  • Lower reliability scales up all impacts from weather so if facing extreme weather a unit with low reliability equipment will suffer more of those weather effects
  • At the end of combat units with better reliability will be able to get back a certain amount of tanks etc to simulate that simple more reliable constructions would work better for battlefield repair and be less fragile when taking damage. So it's a bit like capturing enemy equipment in combat - but in reverse :cool:

Screenshot_4.png


Our goal is that this creates interesting tradeoffs when designing equipment and will make you have to consider if its worth switching a strategy focused on speed and firepower towards reliability when operating in bad weather and tough areas like the Russian winter or in northern africa or jungles.

Oh, and I figured now might be a good time to point out that there will be a future diary on weather changes and other cool related stuff, so these changes aren't completely in isolation. But one step at a time :)

But before we go, a few words about the studio...

Studio Gold
Hello everyone, my name is Thomas, but perhaps better known as @Besuchov here :)

As you saw here we have recently reorganized ourselves a little, moving from a big centralized Stockholm studio to splitting ourselves into Red, Green and Gold. This is mainly an internal org shift to make sure we keep our growing organization firmly focused around making good games. You shouldn't notice too many differences in the short term, we are still PDS making GSG on the Clausewitz engine, but it does mean that we can align each studio to the particular games. Since you will hear the studio names every once in a while, I just wanted to say who I am and what the studio is responsible for.

My role is Studio Manager, which means I'm accountable for the long term success of Studio Gold and working with things like management, staffing, and long term plans. Studio Gold has as its main focus Hearts of Iron (but we may or may not have some secret other stuff as well). Directly making the games though, that's still the job of Podcat and the team, but I intend to do my best to create an environment where we have the best chances to make great games together.

For me this is coming full circle at Paradox. I started as a programmer in 2004 and one of my first tasks was to work on Hearts of Iron 2. Since then I've done various things including being lead programmer for Hearts of Iron 3 (and Victoria 2), Project Lead for EU4 and more recently Studio Manager for PDS. Next to EU, HOI is my favorite game and I'm delighted to be back in a place where I can focus on fewer games and where that game is Hearts of Iron. You will see more of me in the future even though I will mostly take a backseat to the team working on the game.

That’s all, see you all again next week for more dev diary goodness!
 
  • 311Like
  • 83Love
  • 26
  • 15
  • 14
  • 2Haha
Reactions:
Kinda looks like the new meta will be 25 width
How?
The meta will become far more complex now.
At first glance i'm thinking
30 width tank divisions.
21 width Infantry divisions.
25 width mountaineers.

But ideally every terrain type would have a specific width if you are willing to micro that hard, or else having multiple templates with different low widths so only the right ones fit in the maximum width perfectly.
This might actually benefit the AI a lot, since it already does this diverse template spam instead of standardising a specific width like the player.
 
Last edited:
  • 3Like
  • 2
  • 1
Reactions:
Lastly, the military high command change is not at all what it should have been. By using division composition as a basis for high command effects, we further blur the line between having military high command and not having it. Instead, military high command buffs should apply on a per-battalion basis, so that my +15% soft attack buff to artillery applies to my few artillery battalions, instead of turning into 3-4% for the entire division, which might not have that much artillery in it.
Applying it *after* to the ratio of artillery-to-rest is exactly the same as applying it *before* to each artillery batalion and summing it up with the rest.

Except that, in programming, it is better to do it the former way, because you a) avoid floating point errors, because b) have to do fewer floating-point (by percentage) multiplications, and due to that, c), performance is slightly better, as fewer operations are done. I'm sorry, but that is strictly, to any programmer, superior.

It is counter-intuitive to the layman, but makes no difference on paper, and a significant one in code.
 
  • 11
  • 9
  • 1Like
  • 1
Reactions:
I think you need to make the armour/piercing system more granular.

I don't really get the changes to high command bonuses either. Why don't they just apply on the battalion level?

I like the combat width change in theory but in practice I'll still most likely just going to be using a couple of standard templates to reduce micro.
 
Last edited:
  • 14
Reactions:
Some of my thoughts:
I love the artillery advisor change. Highly appreciate it.
I don'tunderstand why you took this order for qualifying a unit as X.
cavalry > armor > artillery > motorized > mechanized > infantry
This means a 10/10 cavalry tank is cavalry, and that a 5/5 mot/mech is motorized.

Also, good job with the piercing changes; did you realise you flat out buffed tanks though? You gave them bonuses for 75-100% piercing, but then didnt nerf the armor > piercing.

On the width system: Variation is good, but as it stands now this system promotes ultra small units. The smaller your units, the higher the chance you're not overstacking, and along with the "high combat width" nerfs, this will promote nothing but 2 width spam with CAS. At least make them all something sensible like multiples of 8. Odd reinforce rates are also terrible, this encourages the system to put more units in even if it overstacks (as it currently does, perhaps this will be changed).
 
  • 3Like
  • 2
Reactions:
Applying it *after* to the ratio of artillery-to-rest is exactly the same as applying it *before* to each artillery batalion and summing it up with the rest.

Except that, in programming, it is better to do it the former way, because you a) avoid floating point errors, because b) have to do fewer floating-point (by percentage) multiplications, and due to that, c), performance is better. I'm sorry, but that is strictly, to any programmer, superior.

It is counter-intuitive to the layman, but makes no difference on paper, and a significant one in code.
I mean there is a slight difference if the batallion have quite big different base stats.

Something like if Infantry has 10 Soft Attack and Artillery has 100.
15% per batallion would mean 30 more soft attack for a like 8/2 division since you get 15% of 200 Soft Attack added.
But with the composition it would just give 8.4 Soft Attack, since you get 3% of all the soft attack so 3% of 280 Soft Attack.
The values of Infantry and Artillery isn't thaat different thankfully, not factor 10, but there is still a differnce between those calculation methods.
 
Last edited:
  • 3
  • 2
  • 2
Reactions:
Mountains, marshes, and urban provinces now have reinforcement widths of ⅓ of province width instead of ½. This should hopefully give these provinces a slight defensive buff, while allowing us to open up pushing power in the more open tiles.

What is "reinforcement widths"? I don't recall this concept.
 
  • 1
Reactions:
No, it makes AT less viable. Armor/Piercing is still binary for if you have more armor than the enemy has piercing. It doesn't care if you have 59 piercing and the enemy has 60 armor, you will still have a full 50% reduced damage even though you can almost pierce. And if you do meet the piercing threshold, the AI will still take reduced damage unless you have a ton more piercing than the enemy has armor.
With the changes the Armour/Piercing dynamic is (broadly) sigmoidal rather then binary. If you are free to assign armour and piercing values (which the Devs are free to do) the choice of the points at which damage stops being 0.5x/becomes 1x is arbitrary. For clarity piercing equal to armour should be one of the points. With the choice they made 1.(3) [edit: corrected from 1.25] piercing/armour means you pierce the armour, while something like a 1.20 ratio means you 'almost pierce' and get partial benefits.
Arguably choosing to have 'partial piercing' go from 0.75 to 1 piercing/armour ratio would be more intuitive, but you can get the same results simply changing piercing and armour values.
 
Last edited:
  • 3
  • 1
Reactions:
For me this is coming full circle at Paradox. I started as a programmer in 2004 and one of my first tasks was to work on Hearts of Iron 2. Since then I've done various things including being lead programmer for Hearts of Iron 3 (and Victoria 2), Project Lead for EU4 and more recently Studio Manager for PDS. Next to EU, HOI is my favorite game and I'm delighted to be back in a place where I can focus on fewer games and where that game is Hearts of Iron.
Happy to have you @Besuchov here in HoI4. It is the time to ask for Army Organization or Having Officer Corps and the Regulars. Training is not enough to define the combat readiness. Officers Corps-Lieutenants are the leading factor for any field combat action.

Any plan for OOB, Army Group Staff, Divisional officer corps and Army organization?
 
  • 3Like
  • 1
Reactions:
did they make pdx tinto do this dlc as well?

for god's sake please stop making random changes to everything because to you it seems like an improvement, changing combat width to some random values is not going to change pretty much anything, it's just going to make things more annoying, because "whoops my unit reinforced now i'm 15 over combat width so my units have -30% penalty so i guess i lose because i didn't make 20 different templated for each terrain type"

just why, it's not that hard, just because you think something is broken, doesn't mean players think that's the priority, because there are much more broken things that just straight up ruin the game (laughs in air combat)

it's not that hard to post a survey so players can actually decide what they want to get fixed instead of you making the game even more convoluted (by fixing what you think is broken instead of what actually ruins the game) than it was 2 seconds ago
 
  • 57
  • 5
Reactions:
I already have the new combat width meta

Plains and Deserts are 15 and 30 widths.

Forests and Jungles are 21 and 42 widths.

Marshes are 26 widths.

Hills are still 20 and 40 widths.

Mountains are 25 widths.

Urban is 16 and 32 widths.

In the European East and West fronts, everyone is just gonna spec for the most common terrain type, plains, and make 30 widths. Russia will create some throw away 26 widths to hold down the marshes.

Overall, unless you're speccing for a certain terrain, 15 and 30 widths are the new meta. they fit the most common terrain type, and are a nice middle-of-the-road width for all the other terrain variants.
 
  • 6
  • 2
  • 1
Reactions:
Applying it *after* to the ratio of artillery-to-rest is exactly the same as applying it *before* to each artillery batalion and summing it up with the rest.

Except that, in programming, it is better to do it the former way, because you a) avoid floating point errors, because b) have to do fewer floating-point (by percentage) multiplications, and due to that, c), performance is slightly better, as fewer operations are done. I'm sorry, but that is strictly, to any programmer, superior.

It is counter-intuitive to the layman, but makes no difference on paper, and a significant one in code.

Is my math wrong?

Having 1 battalion of infantry at, say, 10 soft attack and 1 battalion of artillery at, say, 50 soft attack (for the sake of example) would work out as such:

10 + 50 soft attack = 60
50 soft attack + 15% from the artillery boost = 57.5 soft attack + 10 = 67.5
10 + 50 soft attack + 7.5% total soft attack because of the 1:1 ratio of infantry to artillery = 64.5 soft attack

64.5 < 67.5?
 
  • 1Like
  • 1
Reactions:
I mean there is a slight difference if the batallion have quite big different base stats.

Something like if Infantry has 10 Soft Attack and Artillery has 100.
15% per batallion would mean 60 more soft attack for a like 8/2 division since you get 15% of 200 Soft Attack added.
But with the composition it would just give 8.4 Soft Attack, since you get 3% of all the soft attack so 3% of 280 Soft Attack.
The values of Infantry and Artillery isn't thaat different thankfully, not factor 10, but there is still a differnce between those calculation methods.
? 15 percent of 200 is 30.
 
  • 1Like
  • 1
Reactions:

I see the fifth row of line battalions has been sliced off. With current division design restrictions and battalion manpower figures, that means certain very large historical division designs are not possible, like the Russian rifle division of 1939 with a tank battalion that had an authorised strength of 19,350 men.

In BICE said division looks like this:

unknown-9 (1).png

But in vanilla it's far more crammed:

1608509459163.png

And those are actually short of one ART battalion on account of error on my end. The real one had six, not five: three gun, three howitzer, in a gun and howitzer regiment respectively. Now there's going to be no way to get this close to certain historical OOBs. The solution might be to tweak existing battalion manpower values/allow players to do that through laws or techs or something, so that we end up still having the historical battalion count whilst being close to the historical manpower count, removing the need to add extra battalions for more manpower (that need is why the vanilla one is so crammed).

Also, if you're interested in the historical TOE of that particular division type, see my posts here and here for more information.

EDIT: The fifth row probably hasn't been sliced off, so it's probably safe to ignore this first section of the post.

units with better reliability will be able to get back a certain amount of tanks etc to simulate that simple more reliable constructions would work better for battlefield repair

At last! A massive amount of tanks were damaged by breakdowns IRL, but then also repaired. Hopefully we'll see somewhat realistic figures in-game. Also, what about repairing tanks damaged by attrition? That should be a thing as well.

Here's an example of some real-life figures on Russian tank losses on the Karelian Isthmus during the Winter War. It's worth noting the "complete losses" are dubiously low, which might be a result of different interpretations used by the Red Army, but regardless the huge losses from technical failures is telling.

unknown-4.png


there will be a future diary on weather changes

I hope the temperatures also get tweaked, as currently the copy-pasted values from HoI3 are more like from the 21st century, than anything from the 1930s and '40s. Currently you'll never see real-life temperatures like -40°C on the Karelian Isthmus (as was IRL e.g. in January 1940), or even Lapland. Or -55°C + wind, which the Germans experienced during some nights at Klin, 85km NW of Moscow in November-December 1941. In fact wind should probably be factored into these temperatures in HoI4, meaning the above historical examples should be even colder in-game than what they were on a thermometer IRL.

Just as an example, here's 5-day average temperatures from the winter of 1939-40 measured in various Finnish population centres. It's also worth noting that the weather is always a bit colder away from population centres, which I'm sure as a Swede you're aware of.

1620224485566.png


Looks like there's a bunch of new things in the interface, including options to sort by XYZ. Good stuff.
 
Last edited:
  • 9Like
  • 5
Reactions: