We are excited to be able to share with you the patch notes for today's patch! This patch was planned for day 7, but we were able to get it to you on steam a bit early, and just in time for the weekend. For those of you who are on the Microsoft Store, the update will be coming out next week!
- increased thrust of late game engines, balance multiengine thrust, Improved SE.100 template engine - Increased Transport plane IC cost 4>20 - Minors and Puppets will now go back to trying to support their faction members with warscore, rather than striking out on their own. Silesia and Kashubia are now considered unlikely tags to be released. - Reduced speed gain from excess thrust - guided anti ship missile module is now unlocked by advanced rocket tech - balance pass on thrust and ic cost for engines - Increased base point calculation for winners in peace conference by 10% of base. This should result in fewer instances where original countries are left around. Several cost modifiers have been altered which should also result in it being slightly less expensive to make full demands in ordinary circumstances.
################################## # AI ##################################
- Soviet Union prioritizes upgrading manpower over blowing up railways now
- Civil war can get complicated regarding characters. Add keep_all_characters parameter to start_civil_war effect. Target country will keep all characters, none will be transfered to revolter. It's then up to script to do the full dispatch of the characters.
- Fixed wrong speed modifier calculation in special cases for armies. - GiE templates no longer transferred to new country when releasing or through peace conferences - Changed a leader trait depending if LaR is installed or not - Fixed wrong description for SwapIdeas Effect, when same category of bonuses are defined both in the idea and the idea's trait. - Added a loc string to every language file - Changed Italy's ai strategy, so they shouldn't lose to Yugoslavia. Also rearranged the strategy plan for Balbo slightly - Italy has an ai atrategy that will be able to withstand the Yugoslavian onslaught and push them back and even conquer them - Fix freedom level calculations when creating a new puppet with an autonomous state allowing no other autonomous states than itself - Independence focuses in the Italian Civil War branches now requires Italy to not be at war at all. - Fix the supply consumption stat in the plane designer. It now displays the value for a full air-wing. - Fixed scope issues in remove triggers for several state modifiers. - Fixed issue in which Italian marine 3D models did not have an MG weapon with the latest infantry equipment tech researched. - Fixing missing description for Focus 'Total Defense' in Switzerland. - Fixing initial positioning of Switzerland's Focus Tree - No plane templates without BBA dlc - Added missing Remove Times in Absolute Neutrality Decisions in Switzerland - Removing Political Power Cost from Back channel Negotiations in Switzerland - Changed 'Reclaiming Ethiopia' focus condition so that Ethiopa (or an ally) only needs to control any Ethiopian state to allow the focus - Decision Show of Defensive Force in Switzerland now gives the correct modifier. - Corporatist trait now reduces Democracy instead of increasing Fascism. - Changed Rally Workers Decision so it doesn't increase Communism. - Danzig for guarantees now correctly gives cores on Gdynia again - Fixed icon for Eidgenoissiche F+W in the air designer - Removed a DLC lock requiring NSB for a decision category so that Poland actually gets a reward for completing 2 separate focuses - Fixed an instance where Expand military staff did not show up - List of names for generating Swiss characters expanded. - the Spanish Civil war now ends even if for some reason more than one Spain survives and are at peace with each other - Dismiss council tooltip should now target the incoming president and not the current one - Preventing overflow in war score when lendleasing too much fuel - DFC console command no longer causes countries to capitulate forever, every day that they are alive - Polish general Wincenty Kowalski now uses his new portrait from No Step Back. - LoN non interference correctly removed when Ethiopia get peace - Certain political branches in the Italian Focus Tree will now hide if they are no longer relevant when custom game rule "Show obsolete branches in Focus Tree" is set to "Hide". - Italian Monarchist and Christian Democrat AIs will now be more inclined to ban fascism - Ethiopian states will go to the fascist side of the Italian civil war if Italy is still fighting a war in Ethiopia when the focus Defy the Duce is completed and the civil war starts. - Germany can now invite Poland into its faction after successfully trading Danzig for Slovakia - Added a missing state to Bulgaria's "Dominance of the Black Sea" - Added a national focus to Soviet's historical ai strategy so that it can approach Germany and complete its strategy - Fixed some 3D planes not showing up in-game. - Fixed state of Afar not being included in the arrangement when Italy withdraws from Ethiopia. - Fixed issue where Equipment and Experience would be lost when turning Swiss Citizen Militias into Regular Infantry. - Fix create_operative_leader effect so that triggers with character scope using the resulting operative leaders work properly (ex: can_gain_xp in traits for operatives) - Fixed Balance of Power requirements in Historical Focuses. - Fixed issues with character split in Italian civil wars. - Fixed typo in Swiss Infantry Divisions. - The Italian AI should not push as hard when wanting to discredit Mussolini - Fix crash at the end of peace conference when player is in observer mode - Fixed minor typos in two Italian focuses and in Vittorio Emanuele's National Spirit description. - Italian focus The New Emperor of Ethiopia now grants some ideology support for Non-Aligned. - Iberian countries should no longer be rude and leave the Italian faction after deciding to join it via the Italian focus Iberian Protection. - Italian civil war cosmetic tags Republica Sociale Italiana and Regno del Sud now use the appropriate flags. - Ethiopia can no longer use Arms Purchases decisions when the LoN has become inactive - Adjusted the likelihood for the AI to accept giving territory to Switzerland across all branches. - Adjusted the time it takes for the incompetent Councilor to be assigned, made it so it wouldn't trigger once Switzerland is centralized. - Reduced the Political Power penalty for the incompetent Councilor in Switzerland. - The Balance of Power is now removed once Rudolf Henne takes power in Switzerland. - Removed conditions related to Balance of Power towards the end of the Fascist Branch of the Swiss Focus Tree. - Changed the Spirit of Helvetia Entrenchment Modifier to Entrenchment Factor in Switzerland. - Councilors in Switzerland do not change the Balance of Power when hired after the Balance of Power is no longer relevant. - Fixed bug where Political Advisors couldn't be removed after centralizing Switzerland. - don't send countries into exile in a country that is not major - New Zealand now gets their tac bombers from the NZPAF if they have BBA enabled - Hungary will bypass 'Join the Comintern' focus if they're already in a faction with Soviet - Changed the condition that Yugoslavia only needs to own a state to that they need to control the state to add improvements there - Fixed AI weights for occupation laws. They will now follow resistance levels more appropriately - Italy starts now with a production line for Ca.111 so that the initial wing at half-strength gets eventually fully reinforced - Fixed the event sent to France when Germany integrates Alsace-Lorraine to be sent to the Franco-British Union instead if that exists - correctly end paradrop mission after units are delivered - Flags for democratic Italian Empire updated with correct images - Losers in peace conference reset GiE status and rechecks major status - Gdynia now becomes a German core if ceeded by Poland in Danzig For Slovakia - The capitulation of Germany will now make Republica Sociale Italiana to become free and take over the Axis if they were a German puppet. - The Netherlands now bypasses either "Protect against Britain" or "Germany is the Greater Threat" if its in a faction with the country in question. - Fixed issue where AI Switzerland would not train any Militias. - Fixed issue where AI Switzerland would build a Silo that it doesn't need right away. - Adjusted some AI weights in Switzerland. - Compliance discount for peace actions now applies to all types of peace actions and not just Take States - Fixed issue where Swiss Focus would not show effects after completion. - Foreign countries can now properly get rid of the mafia state modifier in their controlled states. - Fixed Suez canal being locked for antifascist Italy if Fascist Italy was sanctioned by the League of Nations - Officine Mechanice will no longer be visible if BBA dlc is not active. - Fixed minor typo in Italian Tankettes focus - Fixed issue preventing the Italian Blackshirts branch (Security Militias) from being available if BBA was not enabled. - His Holiness will no longer demand Palestine to himself. - Fixed typo in War Escalation tooltip. - Sylvia Pankhurst should now have a portrait without MtG DLC if you are playing as Ethiopia - Added war escalation variable to Ethiopia when BBA is not enabled. Allows war escalation to continue functioning as expected for Italy. - Fixed a few Italian Generals getting generic advisor portraits when promoted. - Fixed broken advisor portrait when promoting Ethiopian General Nasibu Zeamanuel - Added a requirement for capital to be a core state when inviting members to the Organization of African Unity. This prevents countries like Belgium being eligible when they capitulate and move their capital to Africa. - Fixed issue where Germany would not get opinion modifier from Switzerland in Frankfurter case - Italian missions Conquer Northern Ethiopia and Conquer Southern Ethiopia should no longer fail if Ethiopia is defeated and puppeted while active. - Fixed issue in Italian mission Pacify Ethiopia checking for 70% Compliance in Ethiopia instead of the promised 60% - Fixed issue where Show Defensive Force decision in Switzerland deducts its cost at the end and not the beginning. - heavy mg air tech is now correctly located in the tch tree - Fixed issue where Citizen Militia Dynamic Modifiers were not properly removed from Switzerland when Militias are turned into regulars. - Fixed stacking of enemy air superiority modifiers in land combat when multiple countries are at war with the country. - Fixed fullscreen setting triggering weird monitor resolution changes and weird UI selection on DX11 - Fixed issue where player couldn't trigger the emergency president event through decisions. - DX11 should now handle failure to create textures more gracefully. You should still probably update your drivers... - Switzerland: Added a few compliance bonuses in alt ideology branches to compensate for the big loss of compliance every time ideology is changed. - Removed DLC locked sounds for Planes in BBA. Replaced using Base Game sounds. This should fix a common error log in live build - Capitulating England (or other majors) will no longer cause them to go into exile in Canada. They would rather die.
Hope you all have a fun time playing the game during the weekend!
You might have already seen two forum posts made by our Game Director and Tech Lead, about how to assist you with common issues. I have made this post to cover all of that in one single place, and to also invite you all to our open beta!
Open Beta
For the open beta, all you have to do is to select the correct branch. You do this by right clicking the game in your library, going into properties, then beta versions and selecting open_beta as the beta branch that you would like to participate in. Then the game will simply update, and then you just launch the game like normal, and poof you are playing in the open beta! Do remember that all encountered bugs and issues should be reported through the same bug reporting forum as always.
Why aren’t these fixes on the live version?
We’re still undergoing comprehensive testing on everything in here, and for stability’s sake we want to finish that process before going live. We are confident in the majority of the fixes included in this open beta branch, but there is always the possibility of encountering unexpected behaviour - this is worth being aware of before opting in.
You are welcome to reply to this thread with issues that pertain explicitly to the fixes mentioned in the open beta patch notes, but for items not mentioned, please use the normal reporting process.
New DirectX11 Renderer (and how to revert to DX9 if you have issues)
As mentioned in the previous dev diary, with the Avalanche update the default renderer is now DirectX11. If you were using DirectX9 previously, the launcher will perform a one-time upgrade to DirectX11 the first time you open it.
While we are fairly confident our DX11 renderer works fine (we have been using it internally for a year now), some issues might arise on specific hardware or configurations. If that is your case, please first make a bug report so that we can address those issues!
Here's what you can do to try and solve the issue:
First, make sure your video drivers are up-to-date. Some GPUs are known to have issues on older drivers with DX11 that might not show on DX9.
Second, if you are playing in fullscreen, toggle it to borderless fullscreen.
This is known to fix the issue where using DX11 makes the UI click "away" from where your mouse pointer is
Finally you can try reverting back to the older DX9 renderer by changing the settings in the Paradox Launcher: Remember: the upgrade to DX11 was one-time so if you set it back to DX9, it will remain that way until you change it again.
Finally, keep an eye on this forum for new patches announcements and the known issues list.
Experiencing Issues launching BBA? Please run through this checklist first!
Some users are reporting being unable to launch the game, not seeing content in the game at launch, or graphical oddities.
Before filing a report, please take the time to confirm that you've run through these steps. It may seem tedious, but the vast majority of reports are fixed by one of these solutions.
Confirm that you are not opted in to any rollback branches in Steam or other platforms
Change your renderer from DirectX 11 to DirectX 9 or OpenGL. Some hardware can experience issues running DX11, we have more information here. Some users have also reported that using fullscreen windowed mode solved the issue for them.
Ensure that you have no mods that do not directly support this game version loaded. This solution accounts for the vast majority of bug reports we receive: outdated, enabled mods can occasionally carry over to new versions without the user being aware.
If the above steps do not yield success, you can try clearing your Documents/Paradox Interactive/Hearts of Iron IV/ folder. This will delete save-games and reset user-settings, so take a backup of anything you consider valuable.
I hope this post has been able to assist you! Hope you all are having a fun time playing By Blood Alone.
As is tradition, we’re releasing the upcoming patch notes for the Avalanche update along with By Blood Alone ahead of the time with release later today.
Undoubtedly there may be some missing items here, and we’ll keep a log of anything we missed in an edited spoiler below the main one.
Hello, and welcome to this week's Dev Diary! I am HOI’s 2D artist and am the one who makes the little buttons, icons, and whatever gets thrown in my way for you to look at and push on, and today I have gotten the opportunity to talk about my work! So let’s start at the beginning, how does a project start, and how and when do artists get involved?
Being an artist on a project such as Hearts of Iron is not an easy piece of work. You need to be on your toes and ready to adapt to whatever task your colleagues want help to solve. It usually involves a bit of text and a ton of reference material. And to gather all of these things we use a tool called Miro.
It’s essentially an online whiteboard that can be used however fits you and your team best. On our Miro, we separate the features into columns that give you a quick overview of what we need to complete for the upcoming update. The columns are usually divided into Focus trees and Features that are expected to get art during the project. As the project starts it’s not uncommon for the Miro to be a bit empty. A lot of the research for what can be used, artwise, is a pretty heavy task to bite into with all copyrighted photos out there. Our amazing content designers spend quite a lot of time on valuable research, sorting out what is necessary for the game to make sense as well as adding flavour to your gameplay. And yes, this takes a fair amount of development time to gather all this valuable information as well as imagery that will communicate the right thing for you when you play HOI.
As time goes on, more art tasks will fill up the Miro board. So, for an artist at the beginning of a project, it can range from doing some cleanup work on older icons or portraits, starting to work on loading screens, continuing setting up the Miro board for the DLC to their taste or helping with another project that needs some extra art-hands.
But back to BBA and our work there! We already know what kind of art we want to have for each focus tree, it's more the quantity that is a fluctuating number at this point and it's still uncertain how much we can make in-house. I always try to convince my CDs to ask for art to their heart's content because we always prioritise what needs to be done so the things that matter the most get the art it deserves first. When all High Prio art is done, if time allows we continue with Medium and last of course the Low. We also have, for whenever we manage to wrap up art in a timely manner, a special section that is called a “wish-list” or Corner of Shame. It's essentially Low Prio art but stuff that maybe was more of an afterthought or just forgotten for a Feature or a Tree that would be extra sweet if it got some new shiny textures.
Without giving too much away, here's a heavily zoomed-out version of how a Miro board can look like that I as an artist work with. And yes, I was in charge of all the Focus trees and the Plane Designer for this DLC (granted I did not make all the art, we also outsource).
We use a colour code to communicate what's going on on the board! All of them also have a little stamp on them to mark what Prio it has as well as a text section where CDs write what they want to communicate with the icon they request. As you probably can see, there's quite a lot of information that needs to be shared between the departments before art can be worked on. It’s our transparent way to communicate with each other, CD’s can see how much I have done and how much I have left. They can also see my schedule on what I’ll be working with each day. This means that CDs can also ask to get prioritisation over each other if their Focus tree or Feature requires art sooner rather than later and this is constantly brought up and talked about on our syncs together. Communication 👏 is 👏 key!
Here is an example of how a request turns into an icon (that you may or may not already have seen): This is a typical request. It has an in-game name displayed, reference images provided as well as a description of what my CD wants out of the icon. It is also prioritised!
And this is how it ends up looking! Since we have quite the large art-library by now I can quickly iterate on what type of background works the best as well as reuse different layer styles to make the icon feel cohesive and on-style with the rest. I also made sure to hit all the marks from the requests such as;
At least one donkey
The donkey should carry (at least) a supply
Add wheat bundles without overcrowding the icon.
When the icon is in either a conceptual phase (putting the requested items together without rendering it further) or simply put together from our art library, I of course share the progress with the CDs so they can have to say their yay or nay. If I hit or missed the mark with the request if we need to re-think the icon in itself or just a 10/10 beautiful icon, ship it! 🚢 Also, one thing to keep in mind when doing these types of icons is remembering their size. All the things that a CD may want in an icon may not fit in the end or make it more or less unreadable because all the things together will just create noise. That's when we artists step in and “take over” so to say with simplifying without losing the information that the icon should communicate.
This is also a typical request when a CD isn’t 100% sure on what would or could look the best and leaves that up for me to figure out: Icons are requested the same throughout the art process, so name, description, and prio are all there. It's just that this time I didn’t get any reference material and that's perfectly normal!
And this is the result!
I have the silhouette of Africa
Railroad
And industry
And of course, a background to frame it all on
Had I added coins to show off investment I would have crowded the icon. We usually have a rule of max three things in one icon to communicate what's necessary. After three it can start to become muddy. Example of adding coins to this icon to communicate investment:
Immediately crowded
Silhouette of Africa is no longer a focus and is hidden
The coins stealing the show
So the TL;DR of this section is;
Use good Tools for communication, whatever that may be for you and your team. Be honest and transparent with what's going on, what you need to do your part, and when you need it to estimate the time left on the project. CDs do research, CDs request art, Artist look at the requests/ask questions, Artist make art, Artist share art with CDs and so the circle is complete.
Now when you kind of know how artists, or at least I, do work with content and for the project I would also like to share how the loading screen got worked on for BBA!
Ahh shit, here we go again. Yes, I was thinking that we could get a little re-cap on how it is to not just make icons and portraits, but also be flexible and knowledgeable enough to pull off a loading screen. We artists are a jack of many trades so to speak and we do need to be able to adapt to a lot of different types of art tasks that need to be done for a project.
So, how is a loading screen created? It usually always starts with a prompt or a vision from one of either designers or content designers that are heavily involved in the upcoming DLC. Essentially we want the loading screen/splash screen to communicate something in relation to the DLC, this time we want to focus on Italy and planes. Mostly because Italy has been heavily requested and we want to shine a spotlight on the country as well as showcase the plane designer!
The prompt is “Italian and American fighters incoming in a dogfight over Italian landscape”
Cool. Let's go ahead and make some thumbnails then!
Once again several thumbnails are presented for the others to choose from. Typical hierarchy methods are used here, black = most visually interesting, grey = further away and white/light grey = low focus.
The last one, A3+5 was chosen and started to get some more details in a simple greyscale set-up. This time I quickly wanted to take it into colour and started to experiment with what kind of setting looked best.
After going with a more sunset/evening vibe, because it looks more epic, I started to experiment with the range of those colour schemes as well as trying out some different styles. Here you also can see that I had no idea I was painting the wrong plane but that doesn't matter because we are still very early in the process and just trying to find a good mood.
I also noticed that the balancing of the image was off since we need to take into consideration the different kinds of resolutions it's gonna sit on. So to solve this I pushed the whole image down and (thankfully) it was just drawing more sky this time! (still, the wrong plane, don't worry about it)
The render phase is coming up and I’m not gonna lie, I’m not too excited to draw hard surfaces. But luckily we have a fantastic 3D artist on the team that needs to model some planes for the DLC anyway! He was generous enough to pose the plane for me on top of my background and now it's just painting over them a bit to make them blend into the image and look cohesive. (3D render of the planes)
(3D render on top of WIP background)
What's needed now for the next step is to make the planes work together with the background as well as paint more details in the clouds. I also need to add details such as motion blur to make the planes go woosh, which is a dilemma. How much do you paint before the details you put in get lost from said motion blur? Let's find out… the hard way 😌
Along the way, I also realised… what if we tilt the plane some more to have the wing cut through the cloud better. Needless to say, I asked our 3D artist to tilt his model and render a new one which he so kindly did. Looks nice 👌
But back to figure out the BG again. After some back and forth with rendering in and out clouds as well as doing some touchup to the landscape I think I finally landed on something that I was happy with. Adding motion blur, air trails, and a propeller as well as bounce-light and painting in the sky in the plane's window I think I made it work nicely together. And the loading screen is done ✨
And now for something completely different! I was thinking that you guys might be tired of reading about the art process now so I’m just gonna drop a bunch of art stuff for you at this point. Please, enjoy the small selection of what's to come for BBA!
Cute misc icons:
Focus icons:
Portraits: Italy:
Switzerland:
Ethiopia:
Achievements for BBA:
Why yes, we can’t forget about the achievements for BBA now can we? We always think about what type of achievement can be done for each DLC. This time around I hope you guys will have a few laughs and also maybe think “well that's easy” or “oh no… how?”
…and you get a canton, everybody gets a canton! As Switzerland, have 24 states.
I’m not locked in here with you… As Switzerland, declare war on Germany and win.
Swiss Cheese As Switzerland annex 5 states that are not contiguous with each other or Switzerland.
You Shall Not Pass As Switzerland, win a defensive war without ever losing Western Swiss Alps, Eastern Swiss Alps or Ticino.
The Lion that Roared As Ethiopia, without being in a faction, force the Italians to make peace. Again.
The Lion King As Haile Selassie, declare yourself “King of Kings” and control Kenya and Tanzania.
This time for Africa As Ethiopia, found the African Union and have it encompass at least 13 different countries with capitals in Africa.
Crusader Kings IV Take Jerusalem as Ethiopia and move the capital there.
The Red Sea As Ethiopia, go communist and take all the states that border the Red Sea.
Holy, Roman, and an Empire As the Pope, restore Rome.
Pizza Time! As Italy, occupy New York, Chicago and Hawaii.
Collect all the Romes As Italy, continue holding onto the First Rome, and gain the second and third Rome.
Nothing personal, Adolf As Italy, take Austria before the Anschluss and never enter a faction with a fascist Germany (before 1945).
Not today As communist Italy, save Gramsci from the brink of death, make him the leader of Italy and form the Italian National Union.
This time it will stick As any Allied Nation (in faction with a democratic Britain), enforce a peace deal on Germany that disarms the Rhineland and makes it a demilitarized zone.
By Beer Alone As Germany, control Budweis, Tsingtao, and Guinness directly or through a faction member.
By merit alone Promote a Unit Commander to a general, and reach max level.
Snakes on a plane As Brazil, capture Rome with paratroopers.
3D art for BBA:
Of course, we need to show, last but definitely not least, the 3D art that was made for BBA \o/ (some are still WIP 🤫)
T-posing soldiers o7
Cute tanks ❤️
Adorable planes 🛩️
And with that, I’ll wrap up this week's, and last DD for By Blood Alone! Thank you for hanging around for this long, I truly hope you enjoyed getting a peek behind the curtain of a HOI4 production!
Bonjour friends, it’s your favourite Tech Lead again! Last year already I wrote to you in the final weeks leading to the release of the Barbarossa patch, and we draw close to the go-live of the Avalanche patch, here I appear again.
Old Platforms Retirement Plan
Like the future, technology is always in motion. As new platforms arise, olders need to be taken behind the barn and put down.
Don’t worry, we’re not talking about Windows 7 (yet 😉). Despite the release of Windows 11, we have not elected to make a push to Windows 10 since Microsoft’s support for new tech on older releases is still fairly good.
The same cannot be said for Mac and Linux, sadly. And so, starting the new 1.12.0 release, the minimum OS versions will be macOS 10.14 (Mojave) and Ubuntu 20.04 LTS (Focal Fossa). You will still be able to play older HoI versions on older operating systems by rolling back to previous branches, but Avalanche will refuse to start.
Those updates are done in order to introduce new tech to our games (not just HoI) and ensure that all can be built on the same infrastructure within the studio.
New Defaults
Last year we introduced the option to run the game with DirectX11 rather than the venerable DirectX9. After a long period of observation and very few issues observed, we have decided to make it the default.
The first time you start the Paradox Launcher on Avalanche, the game will perform a one-time upgrade of your settings from DirectX9 to DirectX11. New installations will also default to DirectX11.
If you notice any issue due to this change, first, please make a bug report, and then simply go to the settings page and set the renderer back to DirectX9.
Visually the game should look absolutely the same, but internally the tools that come with DirectX11 have helped us find a few sneaky graphical bugs that will be fixed in Avalanche, such as weird white squares appearing on the side of some tank models.
Performance Improvements
This is I bet the bit most of you were waiting for, the usual question of “will the new patch make the game run faster than previous versions?”. And I’m happy to say the answer is yes.
The biggest improvement has been made to the map icons rendering (unit counters, factories, supply hubs, you name it). The number of icons potentially displayed on the map had grown a lot since HoI’s release 6 years ago and the historical algorithm wasn’t cutting it anymore.
For example, here are what the FPS and frame time look like on Avalanche on my work desktop (i7700, NVIDIA GTX 1060, vsync off and 150 fps cap): Avalanche default zoom
And fully zoomed out: Avalanche zoomed out
Finally zoomed back in, but with Speed 5: Avalanche at speed 5
(If you forgot last year’s dev diary, you can pop up the ingame profiler by typing imgui show profiler in the debug console).
Contrast those numbers with the ones from the current live build (Barbarossa 1.11.13): Barbarossa default zoom
Note that Barbarossa denotes rendering performance in “render time” rather than “frame time”, which is only the GPU part, while Avalanche counts both CPU and GPU rendering time, so the numbers look different. Barbarossa zoomed out
Barbarossa at Speed 5
Since PDS games from HoI’s generation tie up rendering and game simulation, this will translate in faster tick speed (on top of a few smaller performance optimizations we added to the simulation itself). Although, to be clear, faster rendering does not translate perfectly in faster game speed. It mostly means a more fluid experience when playing (especially unpaused in Speed 4-5), and then some improvement to the speed of the game simulation.
Speaking of which, I have read and seen a bunch of “guides” to HoI performance over the past months sharing tips & tricks on how to improve the game speed, so let me give you mine: consider disabling VSync in your graphics settings, unless you have a high refresh rate monitor. The way the game simulation waits for rendering to be done to continue, with a slow refresh rate your CPU might end up spending precious time waiting on your monitor VSync which is not ideal. This root of the issue is difficult to address on HoI4 especially with DirectX9, but with DirectX11 becoming the default we will see if there is a way we can address this in the future. No promises though.
Final Thoughts
Last year I had some extra French content to show, but I’m afraid this patch I was a bit short on time to bring you more. Although if you like Tech and History, I recently wrote a technical presentation on how to crack Enigma on a modern computer, with a focus on bringing the works of Marian Rejewski to light (as he and the Polish Cipher Bureau tend to be left aside in favour of Alan Turing and Bletchley Park in many stories). There’s no recording available yet, but I’m scheduled to deliver twice more this year at tech conferences so they’ll be on Youtube eventually.
Speaking of Poland, have you all found my secret event in Barbarossa yet? 😉
That’ll be all for today, but I’ll be happy to answer your questions, tech or otherwise!
Today we go to the drawing board and the planning table as we take a look at the Divisional Command changes as well as the Plane designer with Peter Nicholson and Gabriel Blum.
--------------------------------- Paradox on YouTube: --------------------------------- ParadoxInteractive - http://youtube.com/ParadoxInteractive Trailers, Feature Breakdowns, Dev Diaries, and more.
Today we have quite a number of items for the dev diary. We’ll be covering some new additions to the career profile system, followed by some new tools coming for modders in the Avalanche update.
To begin with, I’ll hand over to our designer on the career profile:
Hello!
Ingevar here with an update regarding new features coming to the Career Profile. Since the release of Career Profile earlier this year we've been working on the next iteration that will bring more stats, non-ironman achievements, and some profile customization.
Let's look at it in detail.
Playthrough Overview
When BBA is released, every player will find the playthrough overview available in the ESC menu when playing the game.
This familiar window will contain some numbers for your current playthrough, including new stats and awards.
New Stats
We are adding more stats to track combat efficiency like the amount of offensive and defensive battles, the ratio between them, or the ratio of battles versus encircled divisions. We want these stats to be a better depiction of each player's playstyle and will continue to add more, so if you have any suggestions, please tell us in the comments.
Stats for Modded Games
Previously we gathered numbers only from the vanilla version of the game, but now we've added a separate set of data for games played with mods.
Both base game and modded games stats are working in single-player games, at least for now. We are looking into making MP counts as well, so stay tuned for future updates on that topic.
Awards
Awards are medals and ribbons: new kinds of in-game achievement that don't require you to play in Ironman mode.
Medals have three grades: bronze, silver, and gold. Each grade is harder to get than the previous one, with the aim that bronze is something you can get just by playing the game, while gold will require a dedicated effort and might not be achieved from the first try even by the most experienced players.
Ribbons have no grades, but the difficulty is there for most of them.
Awards won't work with most mods, cause you can never predict what the mod changes and therefore if the award required any challenge at all.
At the same time, we know that mods are an essential part of the HoI experience, so together with the base feature, we're introducing support for modded awards. Any modder will be able to use all existing UIs for creating a list of unique awards that can be tracked, awarded in the game, and then displayed in the Career Profile.
Profile Customization
Every grade of medal you get and every ribbon will also award you with some Career Points.
Career Points are used to unlock Profile Pictures.
Some Pictures are unlocked after you get one or two medals, but others will be available only to players who dedicate a substantial amount of effort to getting lots of gold medals.
Friends
All this comes together in the last feature I'd like to show today.
We're adding a Friends list to the game. You'll be able to find it in the main menu when BBA is out.
Friends window will have all your friends from Steam or Xbox and for now will only be used as a shortcut to viewing each other's Career Profiles.
By default, every profile in the game will be viewable by all your friends, but you can choose to make it private, this option will be available right in the Career Profile window.
TL;DR
All these features will be released together with the avalanche update. So any player who has the base game will be able to access Playthrough Overview, Awards, set their Profile Pictures, or view the Friends list.
The story of Career Profile just starts here and we plan to add more awards, stats, and profile customization to the game based on the feedback we get from you. Hope you like this when it's out.
Modding In-Game Achievements
One of our new features for modders is a system to support custom achievements.
The feature aims :
to allow mods to define their own achievements
to display them and their completion status in-game
to save them when a player completes them so that they appear as achieved when starting a new game
Hard limitations :
the achievements will not be displayed on steam (or other stores)
no way to know the completion rate among players
We have joined forces with Red King and their career profile to present those achievements in the prettiest way. Also the new Ribbon system will allow modders to easily illustrate their achievement without any graphic skill ! Of course if you are a master of the 64x64p icon, you can emulate our classic achievement illustration. The Awards screen with mod achievements. Icons or ribbons, the choice is yours.
A sample of script to define achievements
Behind the scenes, these achievements are earned and stored based on the game’s modset. Modifying the modset should clear achievements, but if the modset remains constant, any achievements earned will be persistent to that combination of mods.
Unit Medals and Units
Arheo back now to go over some more details on the script accessibility for our new features.
As mentioned briefly last week, unit medals are being added in BBA. These are fully scriptable, and take a similar form to regular database objects you’ll be used to working with.
Since the modifiers that can be applied via medals take a different path to regular modifiers, the list of possibilities is somewhat shorter than in other modifier scopes.
We’ve added a list of options at the top of the medals file, though we’re open to future suggestions if you find yourselves in need of something new:
You’ll note that the leader modifier is unused in the vanilla game. This modifier will translate over to army generals if the leader is promoted, and exert effects on the entire army.
The one_time_effect field will run an effect in the unit scope, though you should be able to scope to a unit’s owner and run effects on a country from this block.
Working with units is, as previously mentioned, new to script in the avalanche update. For the time being, only army units are accessible through script, though this may be expanded upon in future updates. The following effects will be available to you:
random_country_division every_country_division random_state_division every_state_division reseed_division_commander destroy_unit add_history_entry change_division_template add_unit_medal_to_latest_entry #usually used in combination with add_history_entry, otherwise you may not guarantee a valid entry. add_divisional_commander_xp
The Balance of Power feature is built in a way that makes it extremely flexible, and therefore probably very useful for modders. Any given country can only have one Balance of Power at any given time - but there’s nothing stopping you from having several that you switch between as things evolve.
The definition might seem a bit tricky at first, but that’s only because it is extremely flexible. It starts like this:
This example is from Ethiopia - you set the id of the Balance of Power, the starting position, and the two starting sides. The sides are defined further down, and you can replace them with other pre-defined sides using script. This means you can, instead of changing the entire Balance of Power, just replace one, or both, of the sides should you want to do that instead.
You also define a decision category as the Balance of Power category, meaning that you can script Balance of Power decisions the same way as you would script normal decisions. The will then appear in the Balance of Power UI. So basically anything you can do with decisions, you can do in the Balance of Power UI…
Each side is further divided into ranges with a min and max value, and a set of modifiers that are active when you are in this range. Again, the ranges are customizable, so you can have basically as many or as few as you like (within reason).
As you can see from this example you can also run effects when the range becomes active or when the balance shifts away from it.
You can also set/change the graphics of the side as you like:
What else? Well you have triggers based on the Balance of Power, so you can lock Focuses, decisions, events, or whatever behind the Balance of Power being at a certain level. You can modify the balance either with one off values or with a ticking score. And you can of course remove it altogether.
In all I expect to see some wonderful applications of this in mods going forward.
Peace Conferences
Peace conference modding has now become somewhat simpler, as well as being more consistent with the rest of the game’s scripting standards albeit at the cost of some rather verbose dotscoping chains.
Peace conferences now primarily work on a per-state basis, with the exception of ships and stacked bids (which due to technical limitations are not very accessible to script).
Every turn, each state will be subject to two evaluations for the country from whose perspective you are playing or viewing. The first evaluation will define the bidding cost per action type for a state, and the second will define the ai desire to bid on said state. These two values do not correspond, but are affected by each other.
In the entry above, this cost multiplier will be applied at point of bidding for a country that is either NOT puppeted, or is bidding for itself, to states which are their cores.
You can add categories here which will consolidate their values in the tooltip for that state during a peace conference. This cost multiplier will only work on bids of the ‘take states’ type, but multipliers can be made to affect any combination of bid types if treated as an array.
A state can be subject to multiple cost reductions, which stack multiplicatively.
The evaluation of AI desire works in a very similar way:
Instead of affecting the cost, this affects the ai’s subsequent evaluation of the cost when deciding what to bid on. Here, the AI is subject to a -75% desire to liberate tags that belong to the is_unlikely_country_tag scripted trigger. In short, it means the AI will prefer not to release certain wacky, wonderful tags. AI desire can also be subject to multiple modifier entries, and these will also stack.
The AI evaluates costs with a bucketed per-type approach, rather than simply bidding on the best cost*desire entries. This goes some of the way towards reducing bordergore, and effectively takes a sample of the desire of bids of the same type and target - France for example, would consider all Puppet Switzerland bids to be of the same value to try and avoid leaving holes.
Debugging Tools
We’ve expanded the options in our imgui during By Blood Alone, and now this handy air region tool will be in your hands:
You can access this with the console command imgui show air, followed by selecting an air region. This will give you up-to-date information on the details of the wings present in the area and their efficacy.
—
And that’s all for this week! Next week there will be a break in dev diaries, but tune in in two weeks for a round up on the technical situation and changes coming in the Avalanche update.
Today we take a dive into the various alternative futures that can unfold in the coming expansion! Explore the focus trees for Italy, Switzerland and Ethiopia with Game Director Peter Nicolson & our Hearts of Iron IV development team.
--------------------------------- Paradox on YouTube: --------------------------------- ParadoxInteractive - http://youtube.com/ParadoxInteractive Trailers, Feature Breakdowns, Dev Diaries, and more.
Due to a misplaced carrier pigeon, today’s dev diary will not be on modding changes, but will instead focus on a variety of minor and QoL changes coming in the Avalanche patch accompanying By Blood Alone.
This list is by no means exhaustive: we’ll cover the more impactful changes here and still give you plenty of juicy items to discover in the patch notes.
Armor Piercing
Those of you who routinely peruse the forums may have noticed me discussing details on our change to the piercing formula, but it serves to draw attention to it here, in a more visible light.
In the Avalanche update, we’re reworking the binary nature of the piercing vs armor calculation to act in a somewhat more realistic way, as well as to make designing your divisions and equipment a little more nuanced.
Prior to BBA, the damage of divisions making attacks against an armored target would be reduced by 50% if their piercing stat was less than the armor value of the target. In BBA, the thresholds described above will be in play.
There have been some minor changes to piercing values on equipment, but we intend to avoid making any major changes here until we see the effect of this change on player habits. Any balance changes will of course be applied in our regular patching schedule.
Piercing also plays an important role in naval combat, and we haven’t forgotten about it here. In naval combat, the piercing vs armor mechanic affects the critical hit chance (simulating penetration hits) of individual naval guns against a target, and we’ve added the following thresholds:
You’ll notice we’ve added an extra threshold here. This goes some of the way towards simulating extreme overmatching, and brings a small extra potential bonus for super heavy guns (assuming you hit what you’re aiming at).
These values can of course be modded, and support the addition of new thresholds for those in need of atypical or more gradual curves.
Design Comparison
The ship, tank, and plane designers now have access to an additional tool when designing equipment:
This comparison window allows you to select a variant to compare against the variant you are designing. The comparison variant does not need to have the same equipment type as the one you are designing, and assists in the creation of specialized variants with a frame of reference. The stats comparison markers are displayed in context to the design you are editing: Here, we’re comparing the German starting heavy tank to the Panzer II light tank.
You can select a comparison variant from among any types you own or have licensed or captured, and for owners of La Resistance from among any countries which you have matched the highest corresponding intelligence tier for.
In short, this gives you a tool with which to plan your designs in order to counter your opponents’ equipment.
War Support
In Avalanche, we’re making some significant changes to war support. Over the course of the game’s lifespan, war support has gradually plummeted in terms of relevance both due to power creep in country content (something we’re starting to take an active interest in addressing in general), and due to the ease of trading in political power thanks to war propaganda.
War support is intended to serve as an abstraction of a population’s willingness and capability to engage in the war effort, on a military and civilian level. As such, war support has one important new effect:
Note we have also improved the tooltip for war support and stability to include the base value plus any changes from events and focuses.
While at war, war support has a scaling negative effect on the stability of a country, simulating the dissatisfaction of the civilian population at the predicament they have been placed in. War support is now something you will need to care about during a war, and further changes have been made to accentuate this:
All sources of ticking war support (weekly) have been removed or changed into flat bonuses.
Taking casualties during war will now contribute to a gradual ticking war support malus replacing the malus that was previously only used by abilities such as Force Attack.
The war support malus from strategic bombing has rebalanced to be in line with the above.
The war support malus from sunk convoys has been rebalanced to be in line with the above
The three components described above are now the main sources of reduced war support while at war, and give you a strategic reason to pace offensives and conduct campaigns in an intelligent manner.
‘Infinite’ war propaganda decisions have now been removed. This was a trivial way to increase war support in the mid-late game, and combined with the availability of political power, resulted in very little meaningful way to reduce a target nation’s war support.
Instead of war propaganda against countries, war support decisions now target one of the three main maluses:
These decisions will offset the maximum negative trend of each of the three negative components, and gradually increase it to a maximum of zero. In short, war support can no longer be arbitrarily increased outside of focuses, events, and unique decisions - it must instead be managed.
As you will note, the base, generic war propaganda decision currently remains, but may only be used to increase war support if below 50%.
This is a significant change we will continue to monitor, but we are happy with the results we’ve seen so far.
Armored Trains and Logistics Strike
Since the release of NSB, we (and many of you) felt that the Logistics Strike air mission was too strong. This is, in part, due to an oversight which did not apply state-level AA disruption effects to it - this has been fixed.
Correspondingly, a further issue with armored trains has been fixed, meaning that they will once again be vulnerable to damage from Logistics Strike, albeit at a much reduced rate compared to other varieties of train.
However, to further balance this out versus the current live version, armored trains have now learned to use their AA guns:
We previously decided against this approach due to the relatively minor impact that armored train AA had on the grander aviation situation in the war, however thanks to the ministrations of one of our excellent coders, we have arrived at a solution whereby armored trains will only inflict damage to planes actively attacking them on a logistics strike mission. You will be able to track this explicitly in the air region details menu:
AI Tank Strategy
You should now notice a somewhat more sensible use of armored divisions by the AI. The AI can now be encouraged to use tank divisions on any particular frontline, and we have added some generic situation triggers to make this happen more regularly.
Note this does not yet translate to using tanks in the same sort of pincer-encirclement that players tend to use. This is a notably non-trivial problem to solve, but is on our wishlist for future investigation.
Allied Logistics
You will now be able to open the logistics menu for subjects and faction members through the diplomacy menu. This gives you a better real-time view of your allies’ equipment situation, and helps plan a better lend-lease strategy:
It goes without saying that any actions usually available through this menu (destroy equipment et al) will be locked for observing countries. While we toyed with the idea of making this available based on intel, this proved to be far too powerful a tool in the wrong hands.