• 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.
Showing developer posts only. Show all posts in this thread.

podcat

Studio Manager, Game Director <unannounced>
Paradox Staff
12 Badges
Jul 23, 2007
12.812
38.541
  • Europa Universalis IV
  • Hearts of Iron III
  • Semper Fi
  • 500k Club
  • Europa Universalis III: Collection
  • Europa Universalis IV: Pre-order
  • Hearts of Iron II: Beta
  • Europa Universalis: Rome Collectors Edition
  • Mount & Blade: Warband
  • Paradox Order
  • Hearts of Iron IV Sign-up
  • Hearts of Iron IV: Together for Victory
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!
 
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
 
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
 
Seems like resonable goals, I like the symmetry with ww1, if Germany has the west secured then they will eventually grind Russia down.

Here's a problem though, in game the USSR capitulates when certain number of victory points have been taken, and that's all well and good but in reality that wouldn't have been an unconditional surrender. If the USSR had lost a few more major battles and the Germans taken a few more cites then the USSR would likely have offered Germany peace terms but not a full annexation. It's a bit immersion breaking when losing cities west of the Ural result in Germany (or sometime even Poland) suddenly reaching to the pacific.
I think what would have happened is an unconditional surrender where Germany would set up various smaller Reichskommissariats and subjects (perhaps even run by locals) for anything past moscow.

imho:
1. Arguably, the only way for Axis to win WW2, was for the Germans and the Japanese to both go for the USSR (and not putting Halder in charge..).
2. Germany lost the war in winter 1941, when they didn't reach caucasus oil fields. Even though the chance of axis winning the war would've been very small anyways, they definitely would be bigger. (You wanna thank Halder for that, if there's a single person, that truly made German victory impossible, blame him.)
3. USSR could've 1v1 the Axis, the war would have taken much longer, and would have been more bloody, but considering that soviet industry since (iirc) mid 1942 was outproducing the Germans, even in a full-on attrition warfare Russians would have won. (by axis I mean GER,ITA,HUN,ROM.)
please don't downvote me into nonexistence
Personally I do agree that USSR probably could have carried the day on their own, but I think they may have failed without allied lend lease. I dont think the caucasus oil fields would have been a big enough factor, altho from a game perspective its exactly the kind of thing we do want to have impact things significantly.
As for Japan, I really doubt they could have applied enough pressure given their fronts in China, but big strategic mistakes have happened before and Stalin might have sent someone a lot less capable than Zhukov over there, keeping valuable forces away from the front with Germany.

1. Right now admirals have a soft cap for trait XP at 24 ships, is this intended or related to the general army system? It's a bit annoying when you're playing a naval power and have to constantly hire more admirals to have a shot at getting decent traits.
We'll talk balance next week. The cap was a bug.

Since you've been working with the eastern front, that kind of relates to the western front aswell. And currently in the game, USA will always join the war against Germany due to them getting into a war against Japan, and Britain then asking them to join the war against Germany. In reality, that's not really what happened. It was Germany that declared war against USA, and if Germany wouldn't have done that, it's a high chance that USA wouldn't have participated in the war against Germany.

I really do doubt that, the way I see it Americans were at this point ready to join, and Hitler saw it as: 1) By declaring war he could perhaps get the japanese to open another front vs USSR, taking the pressure off. and 2) Americans may perhaps have focused on the pacific first, but there is no way they wouldnt come after Europe after. Roosevelt imo very much saw nazi germany as the big threat for a long time.
The reason we dont really play with this alt history (we do plenty of less plausible things after all!) is because of balance. The allies need the help.
You did get me thinking though and it might be fun to try. Having AI do slightly different strategic plans "randomly" has been a goal of mine for a long time.

Also battle planner does not seem to prioritise correct troops i.e putting mountain troops on mountains if there are any on the front line.

Thats never been its purpose. That stuff is on player level and this is why there are armies so you can set the specific areas you want them in.

Hi Podcat,

Is there any chance of adding a feature to prevent overlapping of multiple army groups to this list? I find preventing overlap of army groups to be the most tedious aspects of being a player who prefers controlling their fronts the way you described in the quote above. As it stands now, in the eastern front the easiest way to manage our fronts is to use our army groups more like theaters and our army's more like army groups.

Overall these changes look really exciting though!
Give it a spin once the open beta is available and let us know how it plays. I havent really tried like that so not sure how that particular style has been impacted by the front changes. It might be more stable, but not sure. The main focus there has been to make multiple AG fronts more stable for the AI, which was a big issue on the large fronts

sad :(.
is this because of frontline stability changes? I thought those would be on AI side, which is not in save games..
64 bit, frontlines and convoy related stuff. all of it kinda breaks saves. We are going to a major version (1.7 rather than 1.6.3 which usually means not save compatible)
 
@YaBoy_Bobby

How will going to 64 bit affect rolling back to earlier versions of the game? Will earlier versions be 32 bit or 64 bit? Will there be 2 different folders, one for 32 bit and one for 64 bit? Thanks in advance for your response and also for the amount of effort that you and your team put into making HOI4 such a great game!!
The earlier versions will stay 32-bit (so the last 32bit will be 1.6.2). Onwards it will be 64bit.

Has any consideration for the public in contributing directly to your data? For example, if I observe on an Ironman mode, or play in Ironman, game that we can send that to you guys and contribute to the information. Rather than waiting overnight for a computer to do it, you can have our computers potentially do it as well. Then you can have any even greater pool of information available, while also retaining the right to ignore whatever you want to. I run AI games sometimes so I can study how they work, you could even give us a tool to "flag" pivotal points in the AI. I don't know what it would take to do that, but I do feel that a large part of the community would be willing to help.
Thanks for the offer, but I get 10 runs at least every day from our automated systems and if we are in a rush you got time to run to 1942-43 while having lunch which is usually enough.