Hearts of Iron IV - BjornB

Hi everyone! I hope you had a nice Easter break :) Today we continue showing stuff for the unannounced DLC and the Oak (1.4) update. For those who haven't been following, the main points of the Oak patch is to get some big difficult changes through for the AI, helping us with things that have long been problems, as well as make air warfare a much more pleasurable experience (more info on these in later diaries as they are still in progress right now). The main topics are License Production and changes to the map. Enjoy!

License Production
As we mentioned in the previous dev diary, nations will now have a new way of acquiring the equipment they need. If a nation lacks the required technology to produce what they need, they can request a license to produce foreign equipment, such as tanks, airplanes or guns, in local factories. Historically, this happened in various forms, ranging from full local manufacturing to assembly of foreign vehicles with or without adapting the designs to use locally sourced parts. The famous Swedish Bofors 40mm was extensively license produced and the Canadian Grizzly tank was a locally produced variant of the Sherman M4 design.

In the game, a nation with good relations with a foreign nation can request a license to produce the foreign equipment. The types equipment a nation is willing to license out is dependent on their relations. Germany, for example, may not be willing to license out their latest tank or fighter designs to other nations, but would be happy to provide Panzer IIs to friendly or neutral nations.



National Focuses will also be able to provide licenses, or provide bonuses to license production. In the last dev diary, we showed you the Romanian National Focus Tree. Some of these focuses references License Production, including the Acquire Fighters focus, which triggers the Fighter Competition event.



Producing licensed equipment will not be quite as efficient as producing your own designs, however. A cutting edge licenced production will have a noticeable output penalty, but a design a few years old will be almost as efficient to produce as your own technology. If you aren’t in the same faction as the owner of the design, you will also receive a little bit less technical support and manufacturing assistance.


Licensing equipment also give you a research bonus if you want to unlock making your own. This feature comes with the yet-to-be-announced DLC.

Map update
Different terrains are important, but it was not always as easy to see the difference between them as it could be. For Oak we have updated and changed map textures to make this much clearer. Particularly hills and mountains were in need of this, but forests also got a bump in clarity.




Impassable areas


A common problem that seems to pop up no matter how many times we think we have solved it is AI over-committing to Africa. There has been a lot of community feedback on this and we were hesitant to just make a hole in Africa as some mods do, but we still felt something needed to be done so we decided to go with a slightly different approach in Oak and have implemented a new kind of impassable areas. It's fairly realistic that large troop movements can not be done through Sahara in HOI4's time frame, so we have decide to block them off for troops and avoid any case where AI may be tempted to commit more troops there than what makes sense. It seems to help the axis AI out a lot and creates more interesting small-scale fighting for players as well. Right now there is no way to un-impassable these areas, but I feel like its a logical step in the future where people may be playing past the WW2 era to be allowed to do some expensive project and build a highway across.



We have also set up several borders as impassable to block passage across some areas of the Himalayas and others mountain ranges in that area (Afghanistan now is even tougher to take with more border choke-points like the Khyber Pass). While you can't enter impassable areas controlling surrounding areas will flip impassable states so if you control Africa it will look that way on the map also without say a hole in the middle.




Also don't forget to tune in at 16:00CET on http://www.twitch.tv/paradoxinteractive today where me and Daniel present the final episode of Paradox News Network (only true news!) dev MP with the Millennium Dawn mod.

See you next week for more diary goodness where SteelVolt will be talking about AI stuff!

Read the original post


Useful links
Official Website
Hearts of Iron IV Wiki
Hearts of Iron IV Development Diary Archive
Hearts of Iron IV - BjornB

Hi everyone! I hope you had a nice Easter break :) Today we continue showing stuff for the unannounced DLC and the Oak (1.4) update. For those who haven't been following, the main points of the Oak patch is to get some big difficult changes through for the AI, helping us with things that have long been problems, as well as make air warfare a much more pleasurable experience (more info on these in later diaries as they are still in progress right now). The main topics are License Production and changes to the map. Enjoy!

License Production
As we mentioned in the previous dev diary, nations will now have a new way of acquiring the equipment they need. If a nation lacks the required technology to produce what they need, they can request a license to produce foreign equipment, such as tanks, airplanes or guns, in local factories. Historically, this happened in various forms, ranging from full local manufacturing to assembly of foreign vehicles with or without adapting the designs to use locally sourced parts. The famous Swedish Bofors 40mm was extensively license produced and the Canadian Grizzly tank was a locally produced variant of the Sherman M4 design.

In the game, a nation with good relations with a foreign nation can request a license to produce the foreign equipment. The types equipment a nation is willing to license out is dependent on their relations. Germany, for example, may not be willing to license out their latest tank or fighter designs to other nations, but would be happy to provide Panzer IIs to friendly or neutral nations.



National Focuses will also be able to provide licenses, or provide bonuses to license production. In the last dev diary, we showed you the Romanian National Focus Tree. Some of these focuses references License Production, including the Acquire Fighters focus, which triggers the Fighter Competition event.



Producing licensed equipment will not be quite as efficient as producing your own designs, however. A cutting edge licenced production will have a noticeable output penalty, but a design a few years old will be almost as efficient to produce as your own technology. If you aren’t in the same faction as the owner of the design, you will also receive a little bit less technical support and manufacturing assistance.


Licensing equipment also give you a research bonus if you want to unlock making your own. This feature comes with the yet-to-be-announced DLC.

Map update
Different terrains are important, but it was not always as easy to see the difference between them as it could be. For Oak we have updated and changed map textures to make this much clearer. Particularly hills and mountains were in need of this, but forests also got a bump in clarity.




Impassable areas


A common problem that seems to pop up no matter how many times we think we have solved it is AI over-committing to Africa. There has been a lot of community feedback on this and we were hesitant to just make a hole in Africa as some mods do, but we still felt something needed to be done so we decided to go with a slightly different approach in Oak and have implemented a new kind of impassable areas. It's fairly realistic that large troop movements can not be done through Sahara in HOI4's time frame, so we have decide to block them off for troops and avoid any case where AI may be tempted to commit more troops there than what makes sense. It seems to help the axis AI out a lot and creates more interesting small-scale fighting for players as well. Right now there is no way to un-impassable these areas, but I feel like its a logical step in the future where people may be playing past the WW2 era to be allowed to do some expensive project and build a highway across.



We have also set up several borders as impassable to block passage across some areas of the Himalayas and others mountain ranges in that area (Afghanistan now is even tougher to take with more border choke-points like the Khyber Pass). While you can't enter impassable areas controlling surrounding areas will flip impassable states so if you control Africa it will look that way on the map also without say a hole in the middle.




Also don't forget to tune in at 16:00CET on http://www.twitch.tv/paradoxinteractive today where me and Daniel present the final episode of Paradox News Network (only true news!) dev MP with the Millennium Dawn mod.

See you next week for more diary goodness where SteelVolt will be talking about AI stuff!

Read the original post


Useful links
Official Website
Hearts of Iron IV Wiki
Hearts of Iron IV Development Diary Archive
Hearts of Iron IV - BjornB


Hi everyone! After a few weeks break we are finally back with weekly dev diaries covering the 1.4 “Oak” update and accompanying DLC (you are going to need to wait a bit for the full announcement on that, but hey in paradox tradition we will still be talking about stuff that will appear in it).

Why have dev diary breaks?
Many people have asked why we take breaks in dev diaries at all, and there are a few different reasons.
  • People don’t like filler diaries, so if we don't have anything exciting to talk about it just means people not getting to read stuff they want and taking up the team's development time actually making stuff. I prefer not to make them if that is the alternative.
  • Being in a situation where you basically finish coding on the thing you talk about the day before is really stressful and can lead to showing things you have no idea if they work which leads to further issues, so we don't do that anymore. With 1.3.3 we were working into the last minute to add improvements and thus had no real chance to build up a buffer of content to talk about for a diary.
  • Several of the things we are working on are also very large things that take some weeks to complete, and it ties into the above. Two of these things are AI related and one is changes to air system as we said before the break we have been working on larger stuff for the Oak Update. Showing partial bits before all is in place is not very useful or easy for us.
Hopefully that makes things a little clearer. When we are quiet it's not because we don't love you, it's because we are working extra hard on stuff.

Lessons Learned
When we released Together for Victory, the feedback we got for the focus trees was somewhat mixed. On the one hand, a lot of people liked them because of their size and the ability to take a country down entirely new story lines. On the other hand, a lot of people felt that that the new trees wasn't adding much to the way they played. That was somewhat disappointing for us, because we had spent so much time on the hundreds of events and focuses that went into TfV, and we were wondering why exactly that was.

We started digging into telemetry data on what countries people actually played after TFV, and things got a lot clearer: About 40% of players play Germany, with other major nations following behind at quite a distance. The expansion gave the commonwealth minors a healthy bump, but still - the only content we really added for 40% of our players only happened extremely rarely in singleplayer games. Only when historical focuses were switched off, and the AI decided to go down the fascist path, did the German player get to see any new content (news events aside). And even then, the content was usually little more than an alliance request.

So that was the first big lesson: new content needs to tie back to major countries, particularly Germany. Thankfully, we had already decided that our next DLC should focus more on the Axis, so we wouldn’t have to try too hard to come up with reasons why Germany should be involved.

The other issue we noted ourselves was that the Commonwealth nations had very little interaction with each other. They each sat in their own little part of the world, mostly doing their own thing with their AI neighbours. That meant that even if you were playing one of the countries that got a new focus tree, you were surrounded by countries that still used the generic trees. All the interesting developments in your region were caused by you. We wanted to change that as well, and force you to pay attention to the world around you.

Which brings us to our first new DLC focus tree:

The Kingdom of Romania

Romania is a very curious country in the context of WWII, since they were - technically - on all three sides of the war at some point (and had the war gone on long enough, I have little doubt that they would have somehow ended up in the Chinese United Front). During the interwar years, Romania had made an alliance with Poland, and had historically been closely aligned to France. In the event, the Poles decided not to activate their alliance with Romania, in order to use the neutral state on their borders to ship in Allied troops and supplies.

This strategy did not fully work to Poland’s advantage.

Afterwards, Romania had to come to terms with German supremacy on the continent. This grew even more pronounced when France, a nation the Romanians had always considered as a model for their own country, fell to the Wehrmacht in just 6 weeks (claims that the French AI was broken have not been confirmed by historians). King Carol II approached the Germans for an alliance, bringing Romania into the Axis - but not after the Soviet Union, Hungary and Bulgaria had forced their territorial demands on Romania.

The Romanians supplied a large portion of the Axis’ oil supplies, nominally in return for German aid in modernizing their military. They also participated in the invasion of the Soviet Union, famously failing to hold the flanks of the German 6th Army during the battle of Stalingrad (in their defense, they had told the Germans it was a bad idea).

When the war threatened to move onto Romanian soil, the country switched sides again and joined the war on the side of the Soviet Union, expelling the Germans and carrying the war into Hungary.

In the game, Romania starts out in a fairly strong position, surrounded on three sides by countries that are either weaker or allied, and with the Soviet Union about to be concerned with itself for a while. However, her Army is fairly outdated, her industry is weak and those surrounding countries all have designs on her territory.

Romania’s tree is therefore centered around trying to maintain that territory. Historically, Romania followed a very flexible policy, negotiating with the Germans and the Allies in parallel, trying to get the best deal. This is represented in game by not locking you into an alliance branch too early. As long as you aren’t part of a faction, you can negotiate freely to get new technologies and equipment from the major powers (how you get that equipment will be revealed in the next dev diary).

Alternatively, you can be proactive and try to become the strongest power in the Balkans, surrounding yourself with a string of buffer states. That will require you to break with old alliances, but they were never going to help you anyway, right?



Romania also has several directions for how to develop its army, air force and navy:



Internally, Romania also had a number of issues, first and foremost King Carol’s attempts at steering the country. A devoted hedonist and a less-than-devoted husband, Carol was a constant source of scandals, while also considering himself the only person fit to run the state. You will have to learn how to handle him, which requires time and resources, both of which are in short supply. On the other hand, Carol has a unique new ability allowing him to recruit ministers at a lower cost. Whether or not you want to keep him around is up to you.


For people who like big pictures here is a link with the whole focus tree as one.

Increasing Immersion


Immersion from playing a nation is not just from events and focus trees, art and sound also play a role to create the right feeling and thus Romania gets new general and leader portraits as well as unique voice overs for Romanian soldiers and 3d models of famous planes and tanks


See you all next week for another diary! That one will not reveal another country, but showcase some other things....

Read the original post


Useful links
Official Website
Hearts of Iron IV Wiki
Hearts of Iron IV Development Diary Archive
Hearts of Iron IV - BjornB


Hi everyone! After a few weeks break we are finally back with weekly dev diaries covering the 1.4 “Oak” update and accompanying DLC (you are going to need to wait a bit for the full announcement on that, but hey in paradox tradition we will still be talking about stuff that will appear in it).

Why have dev diary breaks?
Many people have asked why we take breaks in dev diaries at all, and there are a few different reasons.
  • People don’t like filler diaries, so if we don't have anything exciting to talk about it just means people not getting to read stuff they want and taking up the team's development time actually making stuff. I prefer not to make them if that is the alternative.
  • Being in a situation where you basically finish coding on the thing you talk about the day before is really stressful and can lead to showing things you have no idea if they work which leads to further issues, so we don't do that anymore. With 1.3.3 we were working into the last minute to add improvements and thus had no real chance to build up a buffer of content to talk about for a diary.
  • Several of the things we are working on are also very large things that take some weeks to complete, and it ties into the above. Two of these things are AI related and one is changes to air system as we said before the break we have been working on larger stuff for the Oak Update. Showing partial bits before all is in place is not very useful or easy for us.
Hopefully that makes things a little clearer. When we are quiet it's not because we don't love you, it's because we are working extra hard on stuff.

Lessons Learned
When we released Together for Victory, the feedback we got for the focus trees was somewhat mixed. On the one hand, a lot of people liked them because of their size and the ability to take a country down entirely new story lines. On the other hand, a lot of people felt that that the new trees wasn't adding much to the way they played. That was somewhat disappointing for us, because we had spent so much time on the hundreds of events and focuses that went into TfV, and we were wondering why exactly that was.

We started digging into telemetry data on what countries people actually played after TFV, and things got a lot clearer: About 40% of players play Germany, with other major nations following behind at quite a distance. The expansion gave the commonwealth minors a healthy bump, but still - the only content we really added for 40% of our players only happened extremely rarely in singleplayer games. Only when historical focuses were switched off, and the AI decided to go down the fascist path, did the German player get to see any new content (news events aside). And even then, the content was usually little more than an alliance request.

So that was the first big lesson: new content needs to tie back to major countries, particularly Germany. Thankfully, we had already decided that our next DLC should focus more on the Axis, so we wouldn’t have to try too hard to come up with reasons why Germany should be involved.

The other issue we noted ourselves was that the Commonwealth nations had very little interaction with each other. They each sat in their own little part of the world, mostly doing their own thing with their AI neighbours. That meant that even if you were playing one of the countries that got a new focus tree, you were surrounded by countries that still used the generic trees. All the interesting developments in your region were caused by you. We wanted to change that as well, and force you to pay attention to the world around you.

Which brings us to our first new DLC focus tree:

The Kingdom of Romania

Romania is a very curious country in the context of WWII, since they were - technically - on all three sides of the war at some point (and had the war gone on long enough, I have little doubt that they would have somehow ended up in the Chinese United Front). During the interwar years, Romania had made an alliance with Poland, and had historically been closely aligned to France. In the event, the Poles decided not to activate their alliance with Romania, in order to use the neutral state on their borders to ship in Allied troops and supplies.

This strategy did not fully work to Poland’s advantage.

Afterwards, Romania had to come to terms with German supremacy on the continent. This grew even more pronounced when France, a nation the Romanians had always considered as a model for their own country, fell to the Wehrmacht in just 6 weeks (claims that the French AI was broken have not been confirmed by historians). King Carol II approached the Germans for an alliance, bringing Romania into the Axis - but not after the Soviet Union, Hungary and Bulgaria had forced their territorial demands on Romania.

The Romanians supplied a large portion of the Axis’ oil supplies, nominally in return for German aid in modernizing their military. They also participated in the invasion of the Soviet Union, famously failing to hold the flanks of the German 6th Army during the battle of Stalingrad (in their defense, they had told the Germans it was a bad idea).

When the war threatened to move onto Romanian soil, the country switched sides again and joined the war on the side of the Soviet Union, expelling the Germans and carrying the war into Hungary.

In the game, Romania starts out in a fairly strong position, surrounded on three sides by countries that are either weaker or allied, and with the Soviet Union about to be concerned with itself for a while. However, her Army is fairly outdated, her industry is weak and those surrounding countries all have designs on her territory.

Romania’s tree is therefore centered around trying to maintain that territory. Historically, Romania followed a very flexible policy, negotiating with the Germans and the Allies in parallel, trying to get the best deal. This is represented in game by not locking you into an alliance branch too early. As long as you aren’t part of a faction, you can negotiate freely to get new technologies and equipment from the major powers (how you get that equipment will be revealed in the next dev diary).

Alternatively, you can be proactive and try to become the strongest power in the Balkans, surrounding yourself with a string of buffer states. That will require you to break with old alliances, but they were never going to help you anyway, right?



Romania also has several directions for how to develop its army, air force and navy:



Internally, Romania also had a number of issues, first and foremost King Carol’s attempts at steering the country. A devoted hedonist and a less-than-devoted husband, Carol was a constant source of scandals, while also considering himself the only person fit to run the state. You will have to learn how to handle him, which requires time and resources, both of which are in short supply. On the other hand, Carol has a unique new ability allowing him to recruit ministers at a lower cost. Whether or not you want to keep him around is up to you.


For people who like big pictures here is a link with the whole focus tree as one.

Increasing Immersion


Immersion from playing a nation is not just from events and focus trees, art and sound also play a role to create the right feeling and thus Romania gets new general and leader portraits as well as unique voice overs for Romanian soldiers and 3d models of famous planes and tanks


See you all next week for another diary! That one will not reveal another country, but showcase some other things....

Read the original post


Useful links
Official Website
Hearts of Iron IV Wiki
Hearts of Iron IV Development Diary Archive
Hearts of Iron IV - Valve
Save 40% on Hearts of Iron IV as part of this week's Weekend Deal*!

*Offer ends Monday at 10AM Pacific Time

Hearts of Iron IV - BjornB
Hi, 1.3.3 patch is now live and should be downloading on steam as we speak (you might need to restart steam).

If you discover any bugs in the patch, please report them in the bug report forum as usual.

You need to have a Paradox account and sync that with your Steam account to gain access tp the bug report forum. You can find information on how to do that here!

Patchlog:
################################################################ ########### Patch 1.3.3 "Torch" ########### ################################################################ ################################## # AI ################################## - Italy AI should now be better at picking proper units to fight in Ethiopia. - AI is now inclined to ignore non-dangerous fronts while at war. - Battle plan AI should no longer "forget" units assigned to attack order. - Made AI better at dynamically evaluating level of preparation to attack based on expected enemy strength. - AI should no longer be able to give units ridiculously long retreat or move orders while they are in combat. - The AI should now be a lot better at handling a surrounded enemy capital. - AI is less spammy with call to arms and join war requests. - Battle plan AI unit distribution should now be more stable (though even further improvements would be good). - AI will no longer declare wars on countries that control no territory, even if they technically exist in a limbo while their faction have not lost a war. - The AI should now be managing its theaters better. - AI will now start considering buildup of military constructions after a while, even if peaceful and not directly threatened. - Naval AI will now attempt to use strike fleets to aid in coastal land combats if they are not on a mission to aid in a naval combat. - Some minor AI optimizations. - AI occupation policy is now scriptable, though no scripts for this has been added. - Repaired a mistake in AI diplo for offering someone to join their faction. Threat from wrong side was used when looking at acceptance. - Made sure AI considers org when performing naval invasions. - Eat your vegetables before you get dessert: AI will no longer be declaring wars or justifying claims while in a losing war. - The AI can now build any scripted building that is a part of an established building category. - Made sure AI can not send parts of equipment. Half a ship is not particularly useful. - Fixed a serious issue where AI would never counter resistance with area defense orders, completely ignoring conquered territory. - AI is now less nervous about neighbors fighting a common enemy and not losing. - Purged unit_base, as it did nothing apart from making scripting harder. unit_ratio is now the end all an be all of unit production in the scripting, and setting it to anything but a positive value will make the AI NOT build it. - AI will now remove deployment lines for types it has reached its wanted number for. - Improved the code behind AI template design, so the scripting should make more sense now. - Minor tweaks to terrain prio when drawing fallback line which should make the go for mountains more. - Battle plan AI is now capable of finding more complex paths to front position. - Some balancing to construction AI focused on improving military industry production. - Made AI better at calculating supply use when deciding how many divisions it can field. - Made sure AI is not blocked from researching, even if only crap is left. Script can still set AI desire to 0 to block it. - Improved naval AI region evaluation and made it better at reacting more efficiently to changing situations. - AI now considers reinforcement priority for volunteer theater. - Improved deployment AI to manage lines better and improved calculation of desired number of divisions. - Added ai_strategy type 'support' that can be used to manipulate a countries desire to send lend lease to another country. - Added will_lead_to_war_with when Germany demands Sudetenland. Makes AI prepare for a possible war. - Improvements for air AI airwings picking and distribution - Now air AI considers AA while prioritizing strategic bombing and defense operations - AI should no longer be so happy on naval construction over military when it had also alot of civilian industry (hello USA) - AI can now reprioritize production lines in a few cases to deal with resource lack - AI us now makes use of more civilian factories when needed for trade - fixed a case where AI would get sidetracked when designing divisions of specific country type and instead attempt to make generic ones - added "ai_priority" on battalion types that get calculated by template, ai uses these rather than the visual representation to manage its divisions - AI is now able to send old equipment as lend lease not just its newest - AI can now cancel lend leases it can no longer afford or with nations it no longer make sense - made AI more careful with its stockpile and who to lend lease to - improved logic for AI's lend leasing - fixed issue where a big difference in scoring of combat width could make AI refuse to upgrade its divisions - USA should now lend lease soviets when they are in trouble if they have sufficient spare stockpile - "support" ai strategy now lets nations lend lease away some of their stockpile buffer too - fixed a case where AI would fail to deploy its main invasion protect fleet completely if some of the areas were out of range - fixed AI invadability evaluation sometimes failing on naval path checking - fixed a case where AI would try to split off fleets when it was not valid - fixed a case where AI would spam invalid naval moves - added equipment_stockpile ai strategy that lets you affect how much stockpile ai feels it needs - all nations with many divisions will now attempt to accumulate bigger stockpiles for safety - Fixed several cases where overflow of calcualted priorities could make AI do the opposite of what it wanted to do - Now air ai calls recalculation of air priorities on joining a war - fixed an issue where air AI would fail to assign mission if the only acceptable one was interception - fixed a case where Japan would ASK to join germanys wars despite doing badly with china - nations with restrictive modifiers for joining factions (japan) now super careful about accepting calls to arms to majors (soviet) when still at war with major neighbors (china) - ai should now no longer get stuck on super large trades and better fulfill its needs (basically skipped the full-trade logic) - AI now looks for trades in priority order of biggest lack - AI now prefers trade with closer nations if naval transport required - AI now likes trading with nations with neutral foreign policy more as they are stable - lend lease now automatically cancels when war ends for the receiver - AI is now MUCH better at looking at the equipment cost for switching more templates than just one at a time - AI cares about infrastructure way more when placing consctruction - AI should no longer go as happy on naval construction over military (was counting ratio also using civilian so got disproportional large naval part) - AI us now allowed to trade using more civilian factories - Ai should now be much better at going for medium tank divisions. Fixed issues with width being off as well as wrong template being used when evaluatign fitness for changing out lines - rebalanced ai priorities for medium vs light armor so that ai doesnt get stuck thinking its making light when it isnt - fixed a case where AI was looking at the wrong type when deciding about template upgrades and could get stuck on motorized - AI should now show greater interest in researching excavation tech. - Tweaked templates a bit for majors to avoid getting trapped in subpar targets - Allied AI will no longer guarantee Finland if Soviet justifies war on their claims, while Germany is the biggest threat. - fixed an issue where some scripted ai strategies would not work after updates (it was order dependant) - added an AI sanity check to the War with the USSR focus for Germany - Reduced AI research randomness and improved info in AI research log message - Made sure AI considers convoy count and possible delivery route before sending lend lease - AI will now leave potentially hostile nations alone for guarantees until they have generated some actual threat giving you 1-2 smaller wars before you are sucked into the ww2 vortex (makes some minors a lot more playable) - rebalanced ai priorities for medium vs light armor so that ai doesnt get stuck thinking its making light when it isnt - fixed a case where AI was looking at the wrong type when deciding about template upgrades and could get stuck on motorized - Improved AI trade law logic selection - AI now has a can_upgrade_in_field trigger on templates to give it hints on when to stop producing light tanks and switch over to medium for stuff ################################## # UI ################################## - Battleplans are now hidden during the peace conference to not obstruct the view. - Players lagging behind message in multiplayer, is now replaced with an alert (tooltip shows who and how much). - Added alert about having unassigned divisions. - Added loading progress bars. - When selecting a division(s), the list of all divisions automatically scrolls to show it. - It is possible to hide ALL map counters except your units. Hotkey 'M'. - All the message popups that doesn't require the player choice (yes/no/etc), automatically hides after timeout, to not fill the screen with hundreds of windows. Useful when running the "hands-off" observing game. - Building constructions and conversions now can be added at the top of the queue by holding ctrl and click. - Made save game name text field longer. - Added stockpiling amount to production screen. Changed text to icons. - Added tooltip to US "Destroyers for Bases" focus to make it clear who gains certain territories - Fixed a tooltip for the Australian focus "A Deal with Japan" to account for different options of territories transferred - Fixed legibility issues in event news.199 - Fixed a tooltip issue in the SAF focus tree - Added dockyard output modifier icon in the production screen - Fixed wrong division flags in the combat screen - Missiles now count as bombers in the region air screen - Fixed issue when multiple army groups was not shown in the volunteer theater groups - Multiple fixes for trade influence issues with not matching numbers - Tooltip in the research screen does not show ahead of time penalty if player has 100% ahead of time penalty reduction bonus - Minor fix for army group leader tooltip, to match numbers when penalty for too many units applied - Arrows now gets hidden while editing the orders - Now top bar tooltip for factories also shows damaged ones - Missiles are not shown in logistics screen anymore - Fixes for fear trade modifiers being applied in wrong direction - Now clicking on not existing country in the managing occupied areas screen you won't go to diplomacy screen - Fixed the bug when plan evaluation numbers was not matching - Fixed the bug when capital icons were not correctly shown - Fix for the tooltip on return territory - Added clarification on non-progressing training by reason of lacking equipment and manpower - Now Pass button gets disabled in the peace conference if no actions left to take - Combat log screen now will be shown on top of other screens - Now load game button disable at the same time as continue button - Clarified tooltip for opening multiple info windows in the tech and focus tree screens - Political cost now is hidden when the law is taken - Fix for the switch to next autonomy level glow (now it is actually hidden) - Fixed warscore not being calculated properly while war without majors on one side - Now invalid leader picking screens disappear as army group gets deleted - Disabled icons while in deployment mode - Fix for the rules not being updated on savegame load - If national focus not changing tooltip doesn't show weekly change anymore - Fixed factory conversion button flickering while non-paused gameplay - Fixed the bug when techtree was broken after switching country - Added ability to toggle fog of war map effect on/off - Tooltips existing lend leases for equipment now show type as well as national flavor name when these differ - Releasing nations with a lot of states no longer massively overflows popup window - Multiple rows of division types now possible to be shown in army overview - Tweaked gradient borders for strategic areas so there is no weird gap between areas (more visible with mods) - Air wing reinforce limit window now has the +50/+100 buttons jump to closest multiple to avoid clicks for neat sizes, steps are also +5/+10 for carrier parked wings - Can now increase/decrease queued up ship production faster with ctrl/shift click (ctrl=10 at a time, shift=100 at a time) - Indian National Army focus now has correct effect description - Fixed overlap of text in options with certain languages - Changed shortcut for closing a bunch of production items as ctrl+click it’s easy to miss-click with other shift+click nearby - Fixed centering of trade scrollbar - Achievement entry header now highlighted in orange - Achievement window now movable - Resistance tick indicator now doesn’t show VP stuff in states where there can’t be resistance - Clicking rightmost side of savegame edit box no longer deselects editing - Spelling fix of Trotskyist - Added tooltip to icons displaying used combat width in the combat window . - Added tooltip to research button explaining the 30 days grace period. - Added province tooltip if there is an air base or rocket site present. - Added state name when hovering over a naval base. - Renamed "Small arms research time" to "Weapons and Equipment Research Time" - Explained conditional effect of why we fight focus in tooltip - Entrenchment tooltip only shows days left when unit is not fully entrenched. - Fixed rounding issue in resource mapmode - Made separate production tooltip for naval items, reflecting they don't retain efficiency. - Added war requirement to lend lease tooltip. - Armies view: Improved consistency across the different tooltips. Added penalty to the groupview in the bottom of the screen. Moved penalty explanation to delayed. - Added delayed tooltip to production line filter explaining Shift+click mechanic. - Removed "Support" header from division icon tooltip when it has no support. - Changed production line tooltip to no longer lie about total output and resource efficiency to the player. - Maximum amount of slots is always stated. Factor modifiers not shown if slots < 0. Wasteland is now displayed in same way as other categories. - Changed "Trade Bonus" modifier to "Overlord trade cost" and made it a negative modifier. - Added "Stop" button to continuous focus detail screen. - Added bypass button for focus if they have are mutually exclusive with another, automatically locking players in a branch. - Moved the disband button, manpower and equipment numbers around for unit details view - A bunch of tooltips readability improved. Various changes, typo fixed, decimal points changed, etc. - added ability to toggle fog of war on/off - Changed efficiency tooltip growth to show daily values instead of weekly ...and more that couldn't fit here on Steam. Please go here to read full patch log!

Enjoy!

Note: Players with Windows Vista will probably no longer be able to start the game starting with this update. HOI4 has never supported Vista, but it has somewhat worked before. Now it no longer does so I thought we should give a heads-up on that.

Please post any bug reports in the official bug report forum, thank you!

This is not the complete patch log, please go here to read full patch log!
Hearts of Iron IV - BjornB
Hi, 1.3.3 patch is now live and should be downloading on steam as we speak (you might need to restart steam).

If you discover any bugs in the patch, please report them in the bug report forum as usual.

You need to have a Paradox account and sync that with your Steam account to gain access tp the bug report forum. You can find information on how to do that here!

Patchlog:
################################################################ ########### Patch 1.3.3 "Torch" ########### ################################################################ ################################## # AI ################################## - Italy AI should now be better at picking proper units to fight in Ethiopia. - AI is now inclined to ignore non-dangerous fronts while at war. - Battle plan AI should no longer "forget" units assigned to attack order. - Made AI better at dynamically evaluating level of preparation to attack based on expected enemy strength. - AI should no longer be able to give units ridiculously long retreat or move orders while they are in combat. - The AI should now be a lot better at handling a surrounded enemy capital. - AI is less spammy with call to arms and join war requests. - Battle plan AI unit distribution should now be more stable (though even further improvements would be good). - AI will no longer declare wars on countries that control no territory, even if they technically exist in a limbo while their faction have not lost a war. - The AI should now be managing its theaters better. - AI will now start considering buildup of military constructions after a while, even if peaceful and not directly threatened. - Naval AI will now attempt to use strike fleets to aid in coastal land combats if they are not on a mission to aid in a naval combat. - Some minor AI optimizations. - AI occupation policy is now scriptable, though no scripts for this has been added. - Repaired a mistake in AI diplo for offering someone to join their faction. Threat from wrong side was used when looking at acceptance. - Made sure AI considers org when performing naval invasions. - Eat your vegetables before you get dessert: AI will no longer be declaring wars or justifying claims while in a losing war. - The AI can now build any scripted building that is a part of an established building category. - Made sure AI can not send parts of equipment. Half a ship is not particularly useful. - Fixed a serious issue where AI would never counter resistance with area defense orders, completely ignoring conquered territory. - AI is now less nervous about neighbors fighting a common enemy and not losing. - Purged unit_base, as it did nothing apart from making scripting harder. unit_ratio is now the end all an be all of unit production in the scripting, and setting it to anything but a positive value will make the AI NOT build it. - AI will now remove deployment lines for types it has reached its wanted number for. - Improved the code behind AI template design, so the scripting should make more sense now. - Minor tweaks to terrain prio when drawing fallback line which should make the go for mountains more. - Battle plan AI is now capable of finding more complex paths to front position. - Some balancing to construction AI focused on improving military industry production. - Made AI better at calculating supply use when deciding how many divisions it can field. - Made sure AI is not blocked from researching, even if only crap is left. Script can still set AI desire to 0 to block it. - Improved naval AI region evaluation and made it better at reacting more efficiently to changing situations. - AI now considers reinforcement priority for volunteer theater. - Improved deployment AI to manage lines better and improved calculation of desired number of divisions. - Added ai_strategy type 'support' that can be used to manipulate a countries desire to send lend lease to another country. - Added will_lead_to_war_with when Germany demands Sudetenland. Makes AI prepare for a possible war. - Improvements for air AI airwings picking and distribution - Now air AI considers AA while prioritizing strategic bombing and defense operations - AI should no longer be so happy on naval construction over military when it had also alot of civilian industry (hello USA) - AI can now reprioritize production lines in a few cases to deal with resource lack - AI us now makes use of more civilian factories when needed for trade - fixed a case where AI would get sidetracked when designing divisions of specific country type and instead attempt to make generic ones - added "ai_priority" on battalion types that get calculated by template, ai uses these rather than the visual representation to manage its divisions - AI is now able to send old equipment as lend lease not just its newest - AI can now cancel lend leases it can no longer afford or with nations it no longer make sense - made AI more careful with its stockpile and who to lend lease to - improved logic for AI's lend leasing - fixed issue where a big difference in scoring of combat width could make AI refuse to upgrade its divisions - USA should now lend lease soviets when they are in trouble if they have sufficient spare stockpile - "support" ai strategy now lets nations lend lease away some of their stockpile buffer too - fixed a case where AI would fail to deploy its main invasion protect fleet completely if some of the areas were out of range - fixed AI invadability evaluation sometimes failing on naval path checking - fixed a case where AI would try to split off fleets when it was not valid - fixed a case where AI would spam invalid naval moves - added equipment_stockpile ai strategy that lets you affect how much stockpile ai feels it needs - all nations with many divisions will now attempt to accumulate bigger stockpiles for safety - Fixed several cases where overflow of calcualted priorities could make AI do the opposite of what it wanted to do - Now air ai calls recalculation of air priorities on joining a war - fixed an issue where air AI would fail to assign mission if the only acceptable one was interception - fixed a case where Japan would ASK to join germanys wars despite doing badly with china - nations with restrictive modifiers for joining factions (japan) now super careful about accepting calls to arms to majors (soviet) when still at war with major neighbors (china) - ai should now no longer get stuck on super large trades and better fulfill its needs (basically skipped the full-trade logic) - AI now looks for trades in priority order of biggest lack - AI now prefers trade with closer nations if naval transport required - AI now likes trading with nations with neutral foreign policy more as they are stable - lend lease now automatically cancels when war ends for the receiver - AI is now MUCH better at looking at the equipment cost for switching more templates than just one at a time - AI cares about infrastructure way more when placing consctruction - AI should no longer go as happy on naval construction over military (was counting ratio also using civilian so got disproportional large naval part) - AI us now allowed to trade using more civilian factories - Ai should now be much better at going for medium tank divisions. Fixed issues with width being off as well as wrong template being used when evaluatign fitness for changing out lines - rebalanced ai priorities for medium vs light armor so that ai doesnt get stuck thinking its making light when it isnt - fixed a case where AI was looking at the wrong type when deciding about template upgrades and could get stuck on motorized - AI should now show greater interest in researching excavation tech. - Tweaked templates a bit for majors to avoid getting trapped in subpar targets - Allied AI will no longer guarantee Finland if Soviet justifies war on their claims, while Germany is the biggest threat. - fixed an issue where some scripted ai strategies would not work after updates (it was order dependant) - added an AI sanity check to the War with the USSR focus for Germany - Reduced AI research randomness and improved info in AI research log message - Made sure AI considers convoy count and possible delivery route before sending lend lease - AI will now leave potentially hostile nations alone for guarantees until they have generated some actual threat giving you 1-2 smaller wars before you are sucked into the ww2 vortex (makes some minors a lot more playable) - rebalanced ai priorities for medium vs light armor so that ai doesnt get stuck thinking its making light when it isnt - fixed a case where AI was looking at the wrong type when deciding about template upgrades and could get stuck on motorized - Improved AI trade law logic selection - AI now has a can_upgrade_in_field trigger on templates to give it hints on when to stop producing light tanks and switch over to medium for stuff ################################## # UI ################################## - Battleplans are now hidden during the peace conference to not obstruct the view. - Players lagging behind message in multiplayer, is now replaced with an alert (tooltip shows who and how much). - Added alert about having unassigned divisions. - Added loading progress bars. - When selecting a division(s), the list of all divisions automatically scrolls to show it. - It is possible to hide ALL map counters except your units. Hotkey 'M'. - All the message popups that doesn't require the player choice (yes/no/etc), automatically hides after timeout, to not fill the screen with hundreds of windows. Useful when running the "hands-off" observing game. - Building constructions and conversions now can be added at the top of the queue by holding ctrl and click. - Made save game name text field longer. - Added stockpiling amount to production screen. Changed text to icons. - Added tooltip to US "Destroyers for Bases" focus to make it clear who gains certain territories - Fixed a tooltip for the Australian focus "A Deal with Japan" to account for different options of territories transferred - Fixed legibility issues in event news.199 - Fixed a tooltip issue in the SAF focus tree - Added dockyard output modifier icon in the production screen - Fixed wrong division flags in the combat screen - Missiles now count as bombers in the region air screen - Fixed issue when multiple army groups was not shown in the volunteer theater groups - Multiple fixes for trade influence issues with not matching numbers - Tooltip in the research screen does not show ahead of time penalty if player has 100% ahead of time penalty reduction bonus - Minor fix for army group leader tooltip, to match numbers when penalty for too many units applied - Arrows now gets hidden while editing the orders - Now top bar tooltip for factories also shows damaged ones - Missiles are not shown in logistics screen anymore - Fixes for fear trade modifiers being applied in wrong direction - Now clicking on not existing country in the managing occupied areas screen you won't go to diplomacy screen - Fixed the bug when plan evaluation numbers was not matching - Fixed the bug when capital icons were not correctly shown - Fix for the tooltip on return territory - Added clarification on non-progressing training by reason of lacking equipment and manpower - Now Pass button gets disabled in the peace conference if no actions left to take - Combat log screen now will be shown on top of other screens - Now load game button disable at the same time as continue button - Clarified tooltip for opening multiple info windows in the tech and focus tree screens - Political cost now is hidden when the law is taken - Fix for the switch to next autonomy level glow (now it is actually hidden) - Fixed warscore not being calculated properly while war without majors on one side - Now invalid leader picking screens disappear as army group gets deleted - Disabled icons while in deployment mode - Fix for the rules not being updated on savegame load - If national focus not changing tooltip doesn't show weekly change anymore - Fixed factory conversion button flickering while non-paused gameplay - Fixed the bug when techtree was broken after switching country - Added ability to toggle fog of war map effect on/off - Tooltips existing lend leases for equipment now show type as well as national flavor name when these differ - Releasing nations with a lot of states no longer massively overflows popup window - Multiple rows of division types now possible to be shown in army overview - Tweaked gradient borders for strategic areas so there is no weird gap between areas (more visible with mods) - Air wing reinforce limit window now has the +50/+100 buttons jump to closest multiple to avoid clicks for neat sizes, steps are also +5/+10 for carrier parked wings - Can now increase/decrease queued up ship production faster with ctrl/shift click (ctrl=10 at a time, shift=100 at a time) - Indian National Army focus now has correct effect description - Fixed overlap of text in options with certain languages - Changed shortcut for closing a bunch of production items as ctrl+click it’s easy to miss-click with other shift+click nearby - Fixed centering of trade scrollbar - Achievement entry header now highlighted in orange - Achievement window now movable - Resistance tick indicator now doesn’t show VP stuff in states where there can’t be resistance - Clicking rightmost side of savegame edit box no longer deselects editing - Spelling fix of Trotskyist - Added tooltip to icons displaying used combat width in the combat window . - Added tooltip to research button explaining the 30 days grace period. - Added province tooltip if there is an air base or rocket site present. - Added state name when hovering over a naval base. - Renamed "Small arms research time" to "Weapons and Equipment Research Time" - Explained conditional effect of why we fight focus in tooltip - Entrenchment tooltip only shows days left when unit is not fully entrenched. - Fixed rounding issue in resource mapmode - Made separate production tooltip for naval items, reflecting they don't retain efficiency. - Added war requirement to lend lease tooltip. - Armies view: Improved consistency across the different tooltips. Added penalty to the groupview in the bottom of the screen. Moved penalty explanation to delayed. - Added delayed tooltip to production line filter explaining Shift+click mechanic. - Removed "Support" header from division icon tooltip when it has no support. - Changed production line tooltip to no longer lie about total output and resource efficiency to the player. - Maximum amount of slots is always stated. Factor modifiers not shown if slots < 0. Wasteland is now displayed in same way as other categories. - Changed "Trade Bonus" modifier to "Overlord trade cost" and made it a negative modifier. - Added "Stop" button to continuous focus detail screen. - Added bypass button for focus if they have are mutually exclusive with another, automatically locking players in a branch. - Moved the disband button, manpower and equipment numbers around for unit details view - A bunch of tooltips readability improved. Various changes, typo fixed, decimal points changed, etc. - added ability to toggle fog of war on/off - Changed efficiency tooltip growth to show daily values instead of weekly ...and more that couldn't fit here on Steam. Please go here to read full patch log!

Enjoy!

Note: Players with Windows Vista will probably no longer be able to start the game starting with this update. HOI4 has never supported Vista, but it has somewhat worked before. Now it no longer does so I thought we should give a heads-up on that.

Please post any bug reports in the official bug report forum, thank you!

This is not the complete patch log, please go here to read full patch log!
Feb 22, 2017
Hearts of Iron IV - BjornB


Patch 1.3.3
The patch has been in open beta a few days now and after a few tweaks seem ready for general consumption!

The best way to learn about the most important changes is to read the last 2 dev diaries (or furher back if you are interested in the modding aspects).
Path 1.3.3 Diary #1 - Industry, infrastructure and world tension changes and new capitulation loot!
Path 1.3.3 Diary #2 - Resources now much more important, optimizations, quality of life and AI improvements
Patch 1.3.3 Modding - New modding features and some new events

The plan is to have the patch go live tomorrow once we investigate some final hardware compatability things this afternoon.

Patch log too long for Steam, go here to read it!

500k sales!
We broke half a million sales of Hearts of Iron IV which the team celebrated with cake and working on the 1.3.3 patch :)
As game director for HOI this feels really good and shows that WWII sandbox games are something people want and its not really just a small niche! More practically this means for us that HOI will have a long future ahead of updates and expansions because the support is there for sure :) and speaking of....

What now?
Once 1.3.3 is out the door we will start work on the 1.4 "Oak" update as well as a DLC, which shall remain mostly secret for now, but without revealing too much will have some axis focus.
Our aim is for 1.4 "Oak" to be a bigger than normal patch where we get some time to revamp some systems that have been getting a lot of feedback (Air system will be getting updates for example). A lot of focus will also be put on AI, but we are happy to say that we think it has grown a lot since release. Finally squashing any "frontline dancing" will be top priority there. We have also started working a bit on the side on making the gameplay map clearer and easier to read based on feedback from the community.
After Oak in the misty uncertainty future of winter we have our next big game update where we plan to focus on Asia and war-related stuff. Of course subject to change.

Next week the team is heading to GDC, and this will be the start of bit of a hiatus in dev diaries. We feel like people prefer big juicy dev diaries so we are going to be back once we have done enough big changes to start talking about them. We plan to be in diary break until April. During that time I'll be sharing progress bits on twitter (which we will also repost here on the forum) and once we return we'll jump back on bigger diaries.

Also don't forget to tune in at 16:00CET on http://www.twitch.tv/paradoxinteractive today where me and Daniel continue playing Russia in Kaiserreich in World War Wednesday!

Read the original post


Useful links
Official Website
Hearts of Iron IV Wiki
Hearts of Iron IV Development Diary Archive
Feb 22, 2017
Hearts of Iron IV - BjornB


Patch 1.3.3
The patch has been in open beta a few days now and after a few tweaks seem ready for general consumption!

The best way to learn about the most important changes is to read the last 2 dev diaries (or furher back if you are interested in the modding aspects).
Path 1.3.3 Diary #1 - Industry, infrastructure and world tension changes and new capitulation loot!
Path 1.3.3 Diary #2 - Resources now much more important, optimizations, quality of life and AI improvements
Patch 1.3.3 Modding - New modding features and some new events

The plan is to have the patch go live tomorrow once we investigate some final hardware compatability things this afternoon.

Patch log too long for Steam, go here to read it!

500k sales!
We broke half a million sales of Hearts of Iron IV which the team celebrated with cake and working on the 1.3.3 patch :)
As game director for HOI this feels really good and shows that WWII sandbox games are something people want and its not really just a small niche! More practically this means for us that HOI will have a long future ahead of updates and expansions because the support is there for sure :) and speaking of....

What now?
Once 1.3.3 is out the door we will start work on the 1.4 "Oak" update as well as a DLC, which shall remain mostly secret for now, but without revealing too much will have some axis focus.
Our aim is for 1.4 "Oak" to be a bigger than normal patch where we get some time to revamp some systems that have been getting a lot of feedback (Air system will be getting updates for example). A lot of focus will also be put on AI, but we are happy to say that we think it has grown a lot since release. Finally squashing any "frontline dancing" will be top priority there. We have also started working a bit on the side on making the gameplay map clearer and easier to read based on feedback from the community.
After Oak in the misty uncertainty future of winter we have our next big game update where we plan to focus on Asia and war-related stuff. Of course subject to change.

Next week the team is heading to GDC, and this will be the start of bit of a hiatus in dev diaries. We feel like people prefer big juicy dev diaries so we are going to be back once we have done enough big changes to start talking about them. We plan to be in diary break until April. During that time I'll be sharing progress bits on twitter (which we will also repost here on the forum) and once we return we'll jump back on bigger diaries.

Also don't forget to tune in at 16:00CET on http://www.twitch.tv/paradoxinteractive today where me and Daniel continue playing Russia in Kaiserreich in World War Wednesday!

Read the original post


Useful links
Official Website
Hearts of Iron IV Wiki
Hearts of Iron IV Development Diary Archive
Hearts of Iron IV - BjornB


Hi everyone and welcome to the last update on the 1.3.3 patch as we are now getting into final testing of it. This is going to be a big diary with guest writing both from @SteelVolt (AI) and @TomaszKowalczyk (tech lead) as well. Grab a cup of the blackest coffee and enjoy!

Industry - resource lack changes

To continue last weeks theme on industry we have a final change: currently production lines can get a max penalty of -80% due to lack of resources. That effectively mean that a resource lack can be combated by just having more available factories. We felt this was both unrealistic and was making resources less important than we wanted for big nations. Penalties due to lack of resource are now instead calculated by each missing resource over multiple lines and steadily get higher until they can actually get -100% penalty.



Quality of life!
As normal with patches its not just bug fixes and balance, we've done a bunch of quality of life improvements, what while small do feel big when playing. Lets go:
  • Do you need to start a building construction with top priority? No problem. Now you can CTRL+Click when constructing, so it goes directly to the top of your constructions.
  • Now something that should really be there long ago. When selecting a division, it now scrolls the list of the divisions to show them.
  • Did you have problems to find all your units in a crowdy war? Now there is a button (right bottom side of the screen) with hotkey 'M' that hides ALL counters except your units.

  • Because its sometimes hard to plan ahead over areas where you have little intel we have also added a toggle button to turn off the fog of war effect should you need to to better see terrain etc.
  • We invented a revolutionary new thing which we have decided to call a "loading progress bar"
  • Do you also have that one friend that is always lagging behind in multiplayer? Got annoyed by the "player lagging behind" message popping up in your face? Now it's an alert. The tooltip explains who is lagging behind and how much. Of course it also automatically disappears when that player catch up.
  • To be consistent with air wings, any unassigned divisions now also get an alert. It's super useful, when for example, a friend is sending you expeditionary forces, and you have no idea where the frell they are. Now just click on the alert to toggle through the unassigned divisions!

AI Update!
Several people on the forums have asked for more in-depth details on AI improvements like the ones we did for the Together For Victory release, and you have been heard. Here is an update from @SteelVolt:

Greetings everyone! Taking a short break from otherwise working super hard on improving the Hearts of Iron 4 AI (not counting last week when a flu virus knocked me out), I am once again here to bring you some news about what is going on in my field.

As last time I did these, I thought I would start out with a story from the trenches. This one happened during the current development cycle. After having done some work in several areas of the AI, we noticed in our hands off runs that Germany was fairly consistently defeating England. Getting past the Royal Navy is no small feat, but we initially thought that a Germany that had beat Soviet (which they had started doing at that time) would have industry enough to counter this with airplanes. Turns out that was a bit optimistic. What was really happening was that the naval AI had an issue that made it extremely difficult for it to change regions for assigned fleets, and England had already sent most of their fleet away.

These are the related entries in the changelog:
  • Improved naval AI region evaluation and made it better at reacting more efficiently to changing situations.
  • Naval AI will now attempt to use strike fleets to aid in coastal land combats if they are not on a mission to aid in a naval combat.
The second one being an improvement to how the AI uses its strike fleet (which is the fleets it used not to guard or hunt, but to destroy the enemies main fleet) :)

While the coming patch does not cover all AI improvements in the works, there are several reasons to feel excited about the AI for the next update, and I thought that I would highlight some of the more interesting ones here.

First of all there is the infamous unit spam:
  • Made AI better at calculating supply use when deciding how many divisions it can field.
  • Added equipment_stockpile ai strategy that lets you affect how much stockpile ai feels it needs
  • All nations with many divisions will now attempt to accumulate bigger stockpiles for safety
There were a couple of minor bugs, but also some room for improvements, in the code where the AI estimates how many divisions it thinks it can afford to support. This seems way better now. We also made the AI more careful about its stockpile of equipment as well as making it aim for bigger ones for nations who already had a lot of divisions.
  • Improved deployment AI to manage lines better and improved calculation of desired number of divisions.
Partially connected to the previous point; the AI was way too eager to put a major number of lines working on units but then under certain circumstances just deleting them and starting over. All of this has been given an overhaul, and the AI now acts more moderately both when planning and when reacting to changes.
  • AI will now remove deployment lines for types it has reached its wanted number for.
Really what it says. Before, the AI would keep producing the units it had started working on, which was very inflexible for changing situations.

Moving on, I am surprised this one was not caught earlier:
  • Fixed a serious issue where AI would never counter resistance with area defense orders, completely ignoring conquered territory.
While there had been mentions that the AI could probably do better when it came to countering resistance, it really turned out that it never did this at all. This was due to a code mistake in a single if-statement that made the AI exclusively considered OWNED territory, as opposed to CONTROLLED.

To weather the tightening up and changes we have done to industry has also meant changes for the AI in those areas:
  • Improved logic for when and whom AI should be lend leasing
  • AI is now able to send old equipment as lend lease not just its newest
  • AI can now cancel lend leases it can no longer afford or with nations that no longer make sense
  • AI should no longer be so happy on naval construction over military when it had also alot of civilian industry
The first couple are pretty straight forward: you should be seeing more effective lend leasing now. The last one was an issue affecting many nations (but USA most of all) where having a lot of civilian industry made it think it needed much less military industry in favor of naval construction.

And lastly, the AI is now a lot better at handling safe fronts. It used to sometimes assign significant numbers of units to fronts that posed no threat. Some of these were to countries fighting a common enemy, even when they were winning against said enemy, and others were just...not a threat in any way. Bottom line: more of the AIs units should be making an actual difference now ;)

Lets close with a screenshot that makes me feel pretty happy: Japan not declaring war on the Soviet Union until it has secured the chinese front properly. :)



Performance and Optimizations
This part is for those interested in code details and technical stuff. Just a warning! We figured fans might be interested in more technical details as well as getting some insight in what the job is like for coders. So let us know if this was interesting or made your brains melt! Now I'm gonna hand the word over to our project tech lead @TomaszKowalczyk:

Hi everyone, I'm going to be talking about all the optimization work I did for the patch. We are of course planning to improve it further more in the next patches, however in 1.3.3 the overall speed up is about 14-18%. This may look like not too much, however the main focus was to solve performance "spikes". Those moments when the game literally freezes at a certain moments (usually every 24th hour, when the next day begins). At the very late game date, they were even more annoying than ever. Those I've improved a lot. I was comparing a certain very late save-game, with 1.3.2 and 1.3.3. The first daily tick after hit unpause, in 1.3.2 it took about 4 seconds to advance. In 1.3.3 it was less than ~0.4 sec.

Usually we don't share the nitty-gritty technical details, but this time I'm going to write what and why was slowing down the game:
  • I reworked a bit of the peace conference code that was computing which country can get what. In a gigantic war, where a major country with lots of territory, have lost, pressing SKIP and SKIP and SKIP all over again, was making the game running slower and slower, until almost freeze. This exists in all peace conferences. Just in small wars, it wasn't that badly noticeable. The problem was in a badly nested code loop. Rewriting them worked like a charm.
  • Every time the player click on a navy, and assign the mission in some region(s), the game is doing a "naval path-find" and sends the fleet to go to the necessary area. There was AI logic that wanted to be sure that their fleets were doing the right missions, and it turns out it was spamming "go there", "go there", "go there", while obviously it was enough to tell once. Any kind of path-finding is a pretty complicated and performance heavy thing, but luckily adding a single line of code to stop that solved the problem with the spam!
  • The improvements to the supply system was what had the biggest impact.

    One problem was that plenty of game elements are relying on information about "supplies supported" vs "supplies required". Which is, how many units we can fit in the area before we get the penalty. Every piece of the code that was asking the region "what is the supported and required values?", was recomputing those numbers from scratch. It was asking all units in the area, how high is your supply usage, and how much the region supports (another complicated formula). And it was done hundreds of time by various game elements, in the same computing frame. Instead, I made it so it computes that information only once, and store it in "cached memory". All the game elements now fetch the data directly from cache, which costs almost no performance at all.

    Another problem in the supply systems was the large amount of units. In the very late game, having lots of divisions is a true problem, as it requires lots of computing power. This time it almost killed the supply system. I did plenty of tricks here to improve it. I had to rewrite the way we compute the supplies consumption in each area. Instead of looking at each province and iterating through all the units, asking them "what is your supply consumption value?", I do it from the other side. Every hour, each unit "reports" the supply consumption at it's location, bumping up the overall value in the region. Sounds like same thing, but not really from the technical side. Thanks to that, I could completely remove the super heavy code loop from the supply system. To be honest, that was the nicest optimization ever. How to optimize the function? Remove it :)

    There was so many improvements in the supply system that it doesn't really make sense to list them all, so instead as a summary I will say, that previously the supply system was taking about 65% of the computing time in the daily "spikes". Now it's under 6%. :)
  • Another big optimization to daily "spikes" involved the part of the AI playing around with the division designer to achieve its desired templates. The fix was quite simple here. I've discovered that whenever we try add/remove/replace the division in any slot, the overall template stats are recomputed. That's heavy. Well, maybe not that much heavy, but they became heavy when all countries in the world try almost all possible combinations, in a single frame pass. Turns out, it was enough to refresh the template stats only once after the AI is done filling all the slots.
  • There was also bunch of optimizations in: AI planning naval invasions, AI code responsible for spreading units along the front, the fleets calculating the bonuses from the radars, convoy routes checking which way to go if the certain channels are blocked, and plenty of other hard to explain improvements.
  • There is one last that is my favorite. In our Clausewitz engine, there was an old code loop that nobody ever dared to touch. It was processing all the user interface elements in a "flat manner" instead of the "tree hierarchy". This means, that the more windows and buttons we add to the game, this loop was heavier and heavier. And the windows didn't even had to be shown for it to slow down the game. We always knew about this infamous spot, however reworking it without breaking all the interfaces was nearly impossible. Until now. I found the way! Previously that code loop had ~120 000 passes in each frame, now it's under 700, processing only the necessary interface elements. By that I mean, when you are looking at the technology trees, we are not processing through the hidden production windows and buttons, etc.
As I previously said, we are still working on late-game performance. I've spent only 1,5 week on it so far, and we already get quite much of it so you can expect us to keep doing improvements like this in future patches.

Don't forget to tune in at 16:00CET on http://www.twitch.tv/paradoxinteractive today where me and Daniel will be continuing our campaign in Kaiserreich for World War Wednesday!

Read the original post


Useful links
Official Website
Hearts of Iron IV Wiki
Hearts of Iron IV Development Diary Archive
...