• 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 was looking for the US being completely starved for steel and not being able to build ships, which looks fully present there.

It's partly that the US never switches out of free trade, and partly that ships always go to the bottom of the production queue, which means everything else takes precedence over them.

Aye, it was definitely a thing - there were a couple of fully-resourced lines (I've scrolled to the bottom of the screens in the screenshot, and missed the top couple of lines), but most of the shipbuilding lines weren't making progress for lack of resources. I'm guessing you've reported?
 
Aye, it was definitely a thing - there were a couple of fully-resourced lines (I've scrolled to the bottom of the screens in the screenshot, and missed the top couple of lines), but most of the shipbuilding lines weren't making progress for lack of resources. I'm guessing you've reported?

Not yet, was still at the, "Is this just me or everybody" stage
 
@padcat
can't understand how new frontline manage UI works. I tried to use "edit" mode, but it just randomly moves army front or nothing happens at all.
Is where any documentation for it?
 
I was looking for the US being completely starved for steel and not being able to build ships, which looks fully present there.

It's partly that the US never switches out of free trade, and partly that ships always go to the bottom of the production queue, which means everything else takes precedence over them.
they actually do - just extremely late
 
Not yet, was still at the, "Is this just me or everybody" stage

It's everyone.

1. The German ai file has been "optimized" with a number of lines which mean
a) they follow the meta and have 240 to 280 military factories at the beginning of Barbarossa
b) they are able to have ~450 divisions including, along with Italians and Axis Minors, about a 100 division reserve in Western/Central Europe to counter any allied invasion.

2. Both the U.S. and SOV ai files have not been optimized, and contain *limiting* code which results in the following:
a) The Soviets attempt to maintain a 50/50 ratio in mil/civ factories, even as their troops are starved for equipment.
b) The U.S. stays on "Free Trade" for the entire war, and as a consequence has a steel deficit running in the negative hundreds, meaning they can't really build up a navy, can't really oppose the Japanese fleet in the Pacific, and can't mount a sustained D-Day (even assuming they could overcome the Axis European reserve waiting for them).
c) SOV ai has limiting code which prevents the upgrade of production to better equipment even long after the tech has been researched (usually this switches in August 1943, too late).
d) SOV tech research does *NOT* improve infantry weapons past the SVT, by design, until 1943. Even if it was researched, the equipment switch in production cannot happen until August 1943.
e) Sometime during late 41 or early 42, the U.S. will start sending 10,000 Thompsons to the Soviets, however, the Soviets do not have the convoys to accept this quantity, and the ai then does construction of dozens of naval shipyards in order to produce convoys at a higher rate, at a time when what they need is military factories not shipyards.

I could go on. Run some ai games in observer mode yourself and look around. About every bad decision which could be made by the US/SOV ai is made, and it's almost as if the US is structured to help the SOV ai make even *worse* decisions than the otherwise already terrible decisions.

Every single ai-ai game will end the same way, with the Soviets being overrun by the optimized Axis. Moreover, this is well known and a deliberate decision by Paradox, as Podcat has more or less indicated.

The only solution here is to have two mods - one for "balance" for sandbox players, and another for "historical realism" with appropriate goals for each set of ai files in each mod.
 
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 :)

1. Sorry, but this formulation "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." doesn't make a whole lot of sense.

2. The game is no challenge for a German player, or for Axis players in general. This occurs primarily for two reasons: A) The U.S. never switches from Free Trade, and maintains a 50/50 ratio in mil/civ factory construction, and thus can never ramp up industrial production to build up a navy or substantial ground and air forces. Look at USai economics after war entry: They run a 200+ steel deficit, reducing all naval output to a few convoys and cruisers per year. They never have the predominance of force which permits the USai to plan or launch sustained invasions anywhere. As this is a key fulcrum in game balance, it is also a critical failure in the game balance. No overlord, no chance of defeating the Axis in Europe or the Pacific.

3. The Soviet ai has been deliberately nerfed. The Soviet factory construction is totally irrational and counter-meta, building dockyards and civ without building any or very little military all through Barbarossa. Soviets are fortunate to get above 120 military factories, and run a huge equipment deficit. Moreover, they do not research any heavy tanks, and are deliberately prevented from upgrading the medium tank production to T-34s, and infantry weapon production to PPSh, until 8.43, as you know.

4. The net-net of 2 and 3 is that the German ai romps in Europe and Japan ai finds little or no opposition in the Pacific. What is the impact of this on players?
a. For U.S./Allied players, it will be a real challenge to defeat Germany in Europe, and keep SOV from falling. Allied player will have to be fairly aggressive starting in 1942 and launch a sustained European invasion fairly soon. This is all good.
b. For the Soviet player, the game develops in a quite odd direction. With a largely absent United States, SOV player can defeat Germany/Axis in Europe by mid-1944, but will be faced with a Japanese Empire spanning from India to Hawaii, which takes about 2 years to reduce (during which time, again, the U.S. will be latecomers to the effort, and only when SOV action had reduced JPN strength sufficiently to allow the paltry U.S. forces to switch to offensives.
c. For an Axis player, there's no real challenge. The intentionally nerfed SOVai can be overrun in the space of a 1.5 years, while there's little prospect of any serious involvement by the Allies in W. Europe.

5. I would take issue with the stated balance target as being rational from either a gameplay or marketing perspective. One could just as easily have a balance target of Germany being defeated by ai US and ai SOV by 1946, and then the challenge for players would be
a. As Axis, preventing or reversing this
b. As an Allied player, obtaining more territory/score than SOVai.
c. As a Soviet player, obtaining more territory/score than Alliedai.
d. As a minor country player, deciding which side to support in a way which maximizes territorial or political gain as defined by the player's own goals.
e. With this balance target, the player can also use the sliders more effectively to have a slightly more historical frame for their game, (i.e. power up Germany to make it even more of a challenge or even difficult to defeat Germany, etc).

6. The basic assumptions made in the current balance target were not fulfilled by what we observe in the USai, which remains the key problem. It needs to be fixed so that at some point the US switches to export or limited trade, and has the raw materials to allow build up, which the current USai does not. This would clearly increase the challenge for the Axis player (who has little to none right now), and for the Soviet player, who must not only defeat Germany but at the end of the European conflict face an efficient and fully mobilized Allied faction which must be, at a minimum, watched closely.

Strongly recommend a fix to USai, and that right soon.
 
Hello Greetings from Russia I am new here in the Forum ahm I just wanted to Say i dont know if you know this or not but you know all Michail Nikolajewitsch Tuchatschewski this Commander wanted a Coup against Stalin but not a Aggressive one like Stalin did he wanted a Peacefull and Clean Coup I wanted say a lot more about this but the Documents about him are even today Closed in the Russian Archiv I dont know why I am Looking forwart soon to meet you all in Berlin by the Paradox com :3 Good Night to all maybe you can Change the Soviet Focus because the Sovietunion is in some case very Basic in the Political way all you do is based on Stalinism even if you Call Trotzki back its just a Wish so i am little Shy here because i am new QwQ