• 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 - News from the Eastern Front

Hi everyone! It’s time to touch base and start talking about what we have been up to since we released 1.6.2. We have been both preparing to start on the next big expansion which will come together with the 1.8 “Husky” Update as well as working on various tasks for 1.7 ‘Hydra’ which is the next upcoming release. Let's jump in. Beware, it’s going to be pretty wordy!

1.7 ‘Hydra’
So first up, why 1.7? This is because we are now going 64-bit which will mean you can no longer run HOI4 on 32-bit, so we want to make it clear it is a different technical base. More on this next dev diary though.
We have also worked on some of the bugs that have popped up since then, most importantly front issues for Germany vs Soviets. This was something that was reported during 1.6.2 development, but as we dug into things it turned out to require a lot more work than we had planned. We made the decision to do it for 1.7, and instead of just fixing that particular issue we also reworked a bit of how fronts and the ai work. This is going to be what the diary will be about today!
Oh and because people will ask... we are not super far away from the 1.7 release. We plan to let you help test it in open beta soon (where soon means like “within a week” or thereabouts).


What’s new on the eastern front?
Operation Barbarossa, which is the German invasion of the Soviet Union, is one of the pivotal balance points in HOI4 (and in all the HOI games) together with the fall of the low countries, Poland and the Sino-Japanese war. After 1.6.2 we had Germany beating the Soviets a bit too easily, and in particular, players had too easy of a time doing it. This had a lot of different reasons. The primary one is that we spent a lot of time overhauling the German strategic and planning AI which has made it very consistent and strong. Additionally for the AI, being good at defending is a much harder job than being good at attacking. What wasn’t working properly was that when the Soviets finally fell, it was often due to an issue related to frontline stability. The Soviet AI would misprioritize this and move a large part of its front elsewhere, leaving a hole that the German AI would often exploit (which players also definitely did). It’s also not fun beating an AI when it makes such a critical mistake. This particular case was extremely random, but the front reaching Crimea was a common factor. At that point, a new front would open at the same time as the line became long enough to require multiple Army Groups to cover it, which was another weakness for the AI. A lot of those technical issues should now behave a lot better and we are consistently seeing much better performance from the Soviets. Although, they do still generally lose in the end, but this is mostly by design.

To explain why this is a good target, let’s look at our balance targets for Barbarossa:
  • The Axis pushes the Soviet line in slowly until the Soviets lose in 1945 unless the Allies secure a big landing and relieve the Soviets, at which point Germany should start losing with its forces split across the 2-3 fronts.
So why is this a good target?
  • As an Axis player, it means business as usual. You get to beat the Soviets, and the better we make the German AI (which does the heavy lifting), the more challenging we can make it for a player Germany and still retain the balance target.
  • As a Comintern player it means you need to defend, hold out, and push back Germany. Here, the stronger we can make the German AI, the more challenging it is for a Soviet player. So to keep our balance target we want to make the Soviet as tough as possible, but on their own, they need to break by ‘45.
  • As an Allied player, you have a bit of a race on your hands. A Germany that has beaten the Soviets will be a very difficult target, so you need to build up your strength and preferably strike when the German army is as extended, as it will get some solid landing points (ai is better at defending too now, so this is not always so easy). From a balance point, we need to make sure that the eastern front holds up long enough for you to get ready to do this. If the Soviets can push back the Germans on their own, there is no reason to play someone on the Allied side. If Germany beats the Soviet too fast, you will not have time to get involved (especially since the Allies are much more spread across the world and contains more minor nations we wanna make sure can make it to the party).
Hopefully, that clarifies how we think about stuff. At the moment the allies do ok in Africa, but pulling off consistent D-Day scale invasions is something we have as more of a long term goal we are working on. Invasion skill for the AI has improved a lot, but the AI has also gotten better at defending. We have thought out a long term plan to also tackle this, but it requires a lot more strategic planning on the side of the AI with respect to theaters, so it is something you will need to look forward to in the future :)

AI in Hearts of Iron is a very complex problem and something we will always be working on improving. It will never really be “done”. We are feeling a lot better about the eastern front now and shuffling issues there, but there is, of course, lots of work left to do everywhere. It won’t fix everything, but I hope it will feel a lot better when you get to try fighting the Soviets again in 1.7 :)

Tools
So while I am talking about AI, let's take a look at some of the tools we use to stay on top of the strategic situation and to help find relevant savegames, etc.

Every night we run several machines hands-off that record various data for us and lets us check whether we broke something, measure improvements, etc. Loading 30 savegames every morning and going over them is neither fun nor effective, so we have developed this awesome web tool that gives us a quick timeline and map to scan over:

Screenshot_1.jpg


Heat maps also make it easy to scan over time and see where the AI is distributing and focusing its units. This example below is highlighting the Japanese forces late 41:

Screenshot_9.jpg


Unit Controller for Players
So that was all about the AI, but we have also done underlying changes as well as UI that will affect you as a player.

A lot of players liked using primarily Army Group Orders for their armies so we have been doing various improvements there. For example, if you do not want to mess with individual army orders on a front you could already hit Shift-Click when setting up the frontline and it would simply keep all the units on the army group order. This is primarily how the AI handles big fronts now. If you do it this way as a player we have cut down a lot of the clutter you get by spreading multiple armies over the same area by having divisions without individual orders and part of an army group order to simply show and group on the map by using the Army Group color. As an example, this is an Army Group Frontline where each army is assigned a piece:

upload_2019-5-15_16-31-1.png

Now, if you are the kind of player who has a big front and wants to simplify things by giving it all over to the Army Group (Shift-Click to create the frontline) you will get this:
upload_2019-5-15_16-31-16.png


There are still 3 armies there, but because you didn’t care to assign a position we won't clutter things by showing that (this also work for garrisoning which is really nice for big areas). You can still select the individual armies as normal in the bottom bar and in the selection lists etc.

For players who prefer to keep control over where each army is assigned we have also made that easier in two important ways:
  • Each army front piece on an army group front must connect, so no holes are allowed. That among other things means that you only need to adjust one point (the connection point) if you want to adjust how much frontline each gets, rather than trying to adjust 2 points, sometimes while the front was moving and with the game unpaused :S
  • We have added controls to be able to change the order of the armies if you want to reshuffle that. The middle of each line when in Edit Mode will now show arrows which let you swap position for that piece of the frontline with its neighbors.
upload_2019-5-15_16-50-51.png


We have also increased saturation on all the rendering of plans on the map to make sure they are easier to see and to make sure they match their respective army colors better.

Next week we will be going over other bugfixes, balance and other changes so tune in then!
 
I've been toying with the frontlines a lot lately. I was going to make a big post about how to improve it but given up because I thought it will be very unpopular among the community and devs. I'm really surprised by this development. Consider me intrigued about the next patches.
 
To explain why this is a good target, let’s look at our balance targets for Barbarossa:
  • The Axis pushes the Soviet line in slowly until the Soviets lose in 1945 unless the Allies secure a big landing and relieve the Soviets, at which point Germany should start losing with its forces split across the 2-3 fronts.
So why is this a good target?
  • As an Axis player, it means business as usual. You get to beat the Soviets, and the better we make the German AI (which does the heavy lifting), the more challenging we can make it for a player Germany and still retain the balance target.
  • As a Comintern player it means you need to defend, hold out, and push back Germany. Here, the stronger we can make the German AI, the more challenging it is for a Soviet player. So to keep our balance target we want to make the Soviet as tough as possible, but on their own, they need to break by ‘45.
  • As an Allied player, you have a bit of a race on your hands. A Germany that has beaten the Soviets will be a very difficult target, so you need to build up your strength and preferably strike when the German army is as extended, as it will get some solid landing points (ai is better at defending too now, so this is not always so easy). From a balance point, we need to make sure that the eastern front holds up long enough for you to get ready to do this. If the Soviets can push back the Germans on their own, there is no reason to play someone on the Allied side. If Germany beats the Soviet too fast, you will not have time to get involved (especially since the Allies are much more spread across the world and contains more minor nations we wanna make sure can make it to the party).
So if I'm playing a minor country like, say, New Zealand, AI USSR will reliably lose to the Axis by '45 (which I doubt will not happen much earlier with the current game mechanics), unless they are saved by the AI Allies?

Let's just forget that the back of the Axis was broken by the Soviet Union and the Germans were in full retreat by the time the main Allied landings in Western Europe happened!?!:mad:
 
Very Nice to see the AI Front changes but I am alot more interested in that analytical webtool, Is it something that can be released for others to use to analyze save game data?
 
More saturation is great, I always play with a mod that does that so I'm happy.

I also love the arrow to move the army up or down the group front.

Looking forward to the unexpected "soon" patch.
 
Very Nice to see the AI Front changes but I am alot more interested in that analytical webtool, Is it something that can be released for others to use to analyze save game data?
maybe so. we are discussing it. Its not so easy to use standalone
 
It is amazing to hear about improvements and balance changes in the Eastern Front. That said I would love if the same treatment could be applied to the Far East.

Right now the allies are always beaten in India because the AI cannot handle a two front war from China/Sinkiang coupled with the agressive Japanese naval landings. The situation could be improved a lot if the Japanese could not invade from Sinkiang I think.
 
Hi!
Really interesting dev diary.
I have a question: is it possible to make the AI concentrates its offensive forces (I'm thinking about tanks) in a close area in order to get a breakthrough?
When defending with USSR, i always have the impression that the offensive forces of the AI are evenly distributed, and it doesn't adapt when it can't breakthrough, whereas it could by concentrating all of its top units (and CAS) on a small number of provinces
 
My main issue with the front-lines is that sometimes, usually during a major invasion like barbarossa, a frontline gets screwy, and you end up having to redo it. the AI then seemingly has every unit play musical chairs as they decide that, rather than staying on the front (which is the same front as before), they need to strat-redeploy to the other end of the front, and the units there need to move to where the other units were just standing. Is it possible to give the AI some form of priority to keep units in place when possible?
 
I'm not happy about (what I feel) is an ahistorically designed Nazi win over the Soviets. What level of buff would I need to add to the USSR pre-start to get them to be the default winner?

As it was clear after 41, the war was over the future of post-Nazi Europe, divided between the Western Powers and the Communists. There's still a lot of fun to be had with that theme.
 
So if I'm playing a minor country like, say, New Zealand, AI USSR will reliably lose to the Axis by '45 (which I doubt will not happen much earlier with the current game mechanics), unless they are saved by the AI Allies?

Let's just forget that the back of the Axis was broken by the Soviet Union and the Germans were in full retreat by the time the main Allied landings in Western Europe happened!?!:mad:

The Allies bombing campaign, Africa campign and defeat of the wolf packs had an effect. It's not like the main Allied landings was the first time they got involved in the war.

But yeah the Allies AI will be very important to how the game plays out so I hope they get it working properly.
 
So if I'm playing a minor country like, say, New Zealand, AI USSR will reliably lose to the Axis by '45 (which I doubt will not happen much earlier with the current game mechanics), unless they are saved by the AI Allies?

Let's just forget that the back of the Axis was broken by the Soviet Union and the Germans were in full retreat by the time the main Allied landings in Western Europe happened!?!:mad:
The North African Campaign was happening at the same time as Stalingrad. The North African Campaign resulted in the Axis losing almost 500,000 men. Maybe the 6th army wouldn't have been encircled if there was a few 100,000 more troops on the eastern front.

https://en.wikipedia.org/wiki/North_African_Campaign
 
So if I'm playing a minor country like, say, New Zealand, AI USSR will reliably lose to the Axis by '45 (which I doubt will not happen much earlier with the current game mechanics), unless they are saved by the AI Allies?

Let's just forget that the back of the Axis was broken by the Soviet Union and the Germans were in full retreat by the time the main Allied landings in Western Europe happened!?!:mad:

I'm not happy about (what I feel) is an ahistorically designed Nazi win over the Soviets. What level of buff would I need to add to the USSR pre-start to get them to be the default winner?

As it was clear after 41, the war was over the future of post-Nazi Europe, divided between the Western Powers and the Communists. There's still a lot of fun to be had with that theme.

I'm kinda sympathetic to both sides of this argument. It seems to me that what we have here is a classic case of the challenge of trying to balance the game as opposed to maintaining historicity. The historical path of events is indeed that by the time the main Allied landings occurred at Normandy, the Soviets had obtained the upper-hand and would have rolled over Germany. They had already spent two years by that point pushing the Germans back and were already poised to invade Eastern Europe and then on into Germany proper. And even if one wants to argue that the Italian landings are large enough to count, that still occurred after the Soviets had gained the upper-hand at Stalingrad and Kursk and were pushing back the Soviets.

The thing is, Podcat is also right: making it so the Soviets win against the Germans every time on their own so long as they receive WAllied aid blows much of the tension in playing a major Allied player out of the water. My solution to the conundrum would be a bit more nuanced: make it a relative toss-up as to whether it's the Soviets or Germans who can win against each other without a major Allied landing in Europe, but if the Allies wind-up sitting the whole thing out behind their oceans and navies and the Soviets do win, then the Allies now have to deal with a aggressive USSR deciding that with Europe under it's control, now's the time for the world revolution. And if it's the Germans who win... well, obviously the same issue as it is now.

Basically, the punishment for the Allies if they leave the European ground war entirely to the fight between the Germans and Soviets is that they then have to fight the winner regardless of who it is. The problem with that approach is that it would require a better late-game mechanics to handle the peace and immediate post-war environment then what we currently have. So if the devs do intend to swing things that way, it'll have to wait for some kind of DLC which addresses the late-game issues. In the mean time, I actually do like the current way Paradox is addressing it as a stopgap.

The North African Campaign was happening at the same time as Stalingrad. The North African Campaign resulted in the Axis losing almost 500,000 men. Maybe the 6th army wouldn't have been encircled if there was a few 100,000 more troops on the eastern front.

https://en.wikipedia.org/wiki/North_African_Campaign

The Eastern Front was a clash of titanic armies numbering in the millions. Adding another 120,000 men from Panzer Armee Afrika to that meatgrinder would have been a relative drop in the ocean. Many of the other reinforcements that were rushed to Africa following Torch were garrison troops who were in no position to affect Stalingrad even had it not occurred. Not to mention, even within the North African campaign, Torch occurred after Montgomery had already gotten the upper-hand at El Alamein.
 
Last edited: