HOI4 Dev Diary - Cosmetic tags, art, gameplay and AI

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


Game Director
Paradox Staff
12 Badges
Jul 23, 2007
  • 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! As some people from the fan gathering already know I am happy to announce that Together For Victory will be released on the 15th of December. This means only 2 dev diaries left, and today's will be pretty big so we have time to present everything we have been up to! This diary will also start off a series of smaller mini-diaries about the AI from @SteelVolt.

Cosmetic Tags
Cosmetic tags are a new tool that we think modders in particular will like. While not being a full-on tag-switching or union-tag mechanic, it can probably be used to achieve most of the effects.

In the most basic sense, a cosmetic tag just tells the game to use a different name (and flag!) for a country while certain conditions are met. For example, the new countries of Malaysia and Indonesia start the game as integrated puppets of Britain and the Netherlands. Calling them Malaysia or Indonesia would make little sense historically. So they both get a cosmetic tag that sets their name to “British Malaya” and “Dutch East Indies”, respectively. They also get the historically correct flag (which is, of course, the most important part of this new mechanic!). The cosmetic tag gets dropped when they break free.

Cosmetic tags can also define which name pool and portraits a country will use - India will use European names and portraits for its autogenerated generals as long as it has its cosmetic tag. We are planning to extend this to at least include ship names as well, but that will probably not make it into the expansion at launch due to unforeseen issues.

Where it gets interesting is with auto-generated cosmetic tags, which allow for a lot of flavor. One type is tied to the new autonomy system, one type is tied to the overlord, and both can be combined. In effect, this means that we can specify what a country that has become a puppet of another country is called at each level of autonomy. For example, if Germany takes Indonesia as a puppet, they will be called “German East Indies” for as long as they remain a puppet (in fact, the way it is scripted means this works for any country - there may even be a Luxembourgian East Indies). Eagle-eyed viewers of the MP stream at the fan gathering may have already seen another instance of this happening.

The first use of this new option was fairly obvious.

The second one was also fairly clear.

For modders, check out how you can use them here:
It should be noted that these generated cosmetic tags require very little scripting - just an entry in the right localization file. But the possibilities are quite extensive. Modders can freely set cosmetic tags with set_cosmetic_tag = <TAG> and remove them with drop_cosmetic_tag = yes. The autogenerated cosmetic tags are Subject_Overlord_(ideology)_autonomy_level, so for example:

BLR_GER_autonomy_dominion:0 "Weißreußen"
ZIM_ENG_autonomy_puppet:0 "British Rhodesia"
LIT_SOV_communism_autonomy_integrated_puppet:0 "Lithuanian SSR"

We are hoping to use this feature a lot more in the future to improve immersion and aid in storytelling, and we are certainly looking forward to the crazy cool stuff the community can come up with.

We have also decided to bring back Manchukuo. Originally left out to make it easier for the Japanese AI to fight China, we are now happy to report that we have fixed the issues that Manchukuo caused to the Japanese. Manchukuo starts as an integrated puppet of Japan and does not have a unique focus tree just yet.
hoi4_9 (1).jpg

Unit Art
As part of fleshing out the commonwealth nations in the expansion we wanted to add new 3D models and 2D art representation for equipment and vehicles. This is part of our idea to prefer combining focus tree/flavor with relevant art rather than splitting it up as much as possible and probably how future country packs will look too.

I'll let you guys see if you can identify all the vehicles :)

These are also of course represented in the tech trees etc:


Warscore changes
As warscore became more important with the new autonomy feature shortcomings in the old system became apparent. Before 1.3 you get warscore only for taking provinces, and it doesn’t really matter how well defended (in fact the best way of playing India to freedom was to ignore Britain’s calls for aid in europe and rampage across the emptyness of Siberia). To solve this warscore is now earned from battles. The importance of the location matter, as does if you are winning or defending. The most beneficial score wise is to be an attacking victor that grabs land, but others are no longer left with nothing. For a combat with multiple nations present the score will be divided by how much of a contribution they have each made.

Anti-Air Changes

Support and mainline Anti air battalions have been pretty underused for division designs, so to make those more attractive we have changed the rules a bit. The air attack stat of those battalions now reduce the effect of the enemy air superiority effect, both in combat as well as outside (speed penalty). This means that even if you can’t match the enemy air force you can compensate by outfitting your divisions with anti-air. (before someone asks the AA division in the screenshot has an insane amount of AA to get that high bonus and is pretty awful for anything but shooting down enemy planes, which it does very well).

AI improvements #1
The other day I ran a poll on twitter and 630 people voted for us to do special smaller AI diaries, so we will be kicking this off by including the first part by @SteelVolt here, but after that he will be posting them separately up until release (next one on friday). Initially he will be going over the patch changelog step by step (the whole log will get revealed the day before release, but I figured I’d point out where the stuff is coming from already :) ), so over to him:

Hey everyone!
This time around we thought we would tell you about AI fixes and improvements by looking at some points in the changelog and go a bit deeper into what they actually mean.

First of all, working on a game like Hearts of Iron is a real adventure. So many interacting systems leads to butterfly effects all over the place, sometimes in unexpected ways. And in no other area is this more clear than AI. Fix one thing, and something else becomes a problem. I will be sharing some stories from the trenches over these diaries, And I thought I would start with one from when we were working on Sunflower. When working with the balance of units in Africa (I think we can all recall those massive wars being fought in the deserts of north Africa). Making the AI a lot less interested in sending units there did indeed make them not put all their troops there. What we saw in our hands off runs the following days was that Germany struggled really bad with taking Europe. A lot more than it had before. It turned out that when the Allies no longer cared about Africa, they would send almost all their forces immediately into France to help them push back Germany. This even included Australia.
So in a sense, I am playing a super complex game of whack-a-mole with the code.

Anyway, since this is the first of these to focus on the changelog, I thought it would be a good idea to take a look at some of the straight up bugs that has been taken care of.

- AI now attempts to recover when units are unable to reach desired front location.
  • It turned out that encircled AI units tended to become overly passive. This was due to them playing it too safe and not being able to find a secure path back to the main front. Expect them to fight back a bit more now.

- AI no longer ends up in strange state where they are assigned to a root order but not a following attack order.
  • Reassignments could sometimes lead units to get stuck not being assigned to an advancement order. Since they were not flagged as unassigned (they were, after all, assigned to the root order), and given that orders often ends up being split, this was not always evident. This would improve the AI's ability to attack in general.

- Fixed strange bug in AI order assignment that left units assigned to a group but not an order.
  • The underlying cause is not as related to the previous one as it may seem, and the effects were even more dire. The tricky part here is that due to how the game works internally, some actions must be resolved in a central update loop before others can be done. This means that the AI is forced to set up their stuff in steps, but due to that the last steps changes MAY be outdated, the code to manage all this easily becomes a bit hard to follow. The fixes for this in particular should make the AI behave more reliably in relation to the plans it makes.

- Made sure AI is capable of calling subjects into wars even if they are not in a faction.
  • Another really basic one. Turns out the AI would not even bother considering calling in countries to wars if they were not in the same faction. There are, however, countries that CAN be called into wars that do not follow this rule: puppets. While most puppets are set up as being part of factions, at least before wars happen, this slipped under the radar for quite a while. The notable exception is Japan and its early war with China.

That's it for round one, and I have to tell you I am really stoked about getting the update into your hands. If your pet peeve was not covered in this text, just relax and wait for the other ones. The next will be more about bug fixes, and after that I will go into improvements.

Next diary (that isnt about AI) will go over achievements, some UI improvements and the full patch log with changes!

And don't forget today's World War Wednesday stream starting at 16:00CET on www.twitch.tv/paradoxinteractive. We'll be showing you Together for Victory features and answer as many questions about the expansion as we can during the stream.
You can pre-order Together for Victory here! If you are an owner of the Expansion Pass you'll already get it (together with the next 2 expansions). Owning Together for Victory will also grant you new forum avatars and an unique icon! (actually people with just base game will also get a few new ones as of today)
Last edited:
  • 110
  • 37
  • 1
  • 63
  • 1
  • 1
Great stuff, though manchukuo should probably start with lower NU, they are an artificial creation and never ceased to be through its lifespan.
  • 15
Nice! And check out those new avatars. ;)

By the way, you should perhaps change Mengukuo's name to Mengjiang. I believe Mengkukuo was essentially a bastardization of the official name, based on Manchukuo.

Nice to see the Reichskommissariats also, and I noticed in the last stream that the Yamato now has its own icon (and 3D model also?), and I think I saw one for the Baltimore class too... so it's good to see we're getting some unique naval GFX at last.
  • 4
  • 1
LOVE the anti-air changes, but are they part of the expansion or the patch?

Love to @SteelVolt, king of the bug smashers! Your post above explains a lot of what people were seeing in AI game play with the battle plan.
  • 2
Another thing: was anything done about the Japanese AI willingness to accept foreign volunteers, it's a bit of immersion breaker to say the least, not to mention balance breaking.
  • 2
My biggest pet peeve is that as the axis or comintern, you need to play whack-a-mole with the remaining allied nations once you defeat them. There's no way to force an early end to the war.
You may have defeated Britain, France, Canada and USA but until you siege down every last province of every last country you're at war with throughout Africa, India the pacific ocean, you cant end the war
  • 9
  • 1
Another thing: was anything done about the Japanese AI willingness to accept foreign volunteers, it's a bit of immersion breaker to say the least, not to mention balance breaking.

@SteelVolt @podcat or any changes about foreign volunteers in general. 12 American divisions serving as French volunteers, or 10 Soviet armor divisions in China is ridiculous. Either cap the total of volunteer divisions allowed or limit it to civil wars.
  • 14
@podcat, does New Zealand get a new infantry unit model? I noticed in the live stream they didn't appear to have one. The new ones you have are Vonboe's models, and he did make a New Zealand one too.
Purely from a trolling perspective I am hoping that a dev will state they get the australian one :D

Ah damn I'm too late..

but yeah that's got to sting
  • 2
Can the puppets (Reichskommisariat's for example) be set-up during an ongoing war or are we forced to finish it first to install our puppet as of now with peace treaties?
  • 6