
Victoria 3 – Dev Diary #185 - AI Update & War Support Rework
Forum post link HERE
Happy Thursday everyone! We’re now properly back from the time of vacations and ready to share more about what’s coming next for Victoria 3, starting of course with the much anticipated 1.14 “AI Update”. This update was first mentioned in Dev Diary #183 and then expanded on a little in Dev Diary #184, and now it’s time to finally properly lay it out for you in terms of what changes you can expect and when you can expect them.
So, what’s going to be in the AI update then? For the broad goals, I’m going to simply refresh you on what I wrote in DD#184, since this vision hasn’t changed:
- Deepen AI strategic region stances and use them to give the AI a much better understanding of how it should view and act against other countries in a particular region
- Give the AI a proper understanding of where it should and should not be interested in territory - improve border gore and prevent nonsensical aggression such as the US puppeting Italian states
- Fix the persistent issues with war starting/ending - make the AI properly understand when wars are worth going into and getting out of
- Improve the AI’s economic development by fixing some systemic issues that are holding it back, particularly when it comes to understanding how to plan its economy around the availability of goods and the world market
- Make the AI more transparent in its reasoning and behavior across the board
Something that’s worth pointing out though, is that meeting these goals isn’t always about changing the actual, literal behavior of the AI. Often, problems with the AI’s ability to use a feature comes down to the way the feature itself is designed. For this reason, the AI update isn’t strictly limited in scope to the game AI itself, but will also involve tweaks, touch-ups and reworks to some such features. To add a bit more meat to this dev diary, I’m now going to show off some of those touch-ups and reworks that are currently in development and will be coming with the AI update.
War Support Rework
For the very reason I just mentioned, one of the larger features in the AI update will be a rework of the war support/war exhaustion system, which has long been a source of poor AI performance. The AI has numerous issues with the system, but by far the most visible problem is the limitation on war support not being able to drop below 0 unless all wargoals against a country are contested. This causes the AI to get stuck in stalemated wars and expend huge amounts of resources and lives to no gain, and can also frustrate players to no end when their AI ally adds an inconsequential war goal that turns an otherwise winnable war unwinnable.
So how will it work going forward? Quite a bit differently! First of all, war support has received a major overhaul. There are no longer two separate concepts of war support and war exhaustion, just a single “war support”, which goes from 0-100% (rather than -100 to +100) and which can both go up and down during wars. The reason for the change to 0-100% is that “negative war support” never really made too much sense - zero war support should indeed mean, zero support for the war.
Many factors which were previously part of the rather nebulous “peace desire” system have now been rolled into war support directly, and several new factors added outright.
Here is a list of some of the factors that can now cause war support to increase or decrease:
- Occupying the enemy and being occupied
- Controlling war goals
- ‘Flipping’ war goals (more on this below)
- Suffering casualties
- Devastation
- Financial situation
- Winning/losing battles (scaled by battle size)
- Being at war with rivals
- Lobbies
- Length of war
War Support also had a natural drift towards 50%, though this is designed to eventually be overpowered by ‘length of war’ to ensure wars don’t remain deadlocked forever.
Another important change is the removal of the aforementioned “war support can’t drop below X” mechanic, along with the removal of auto-capitulation. To replace auto-capitulation, there are now instead political and military consequences to continuing to fight while at low war support, with increasing radicalization of the population as war support ticks down, and (at very low levels) an additional escalating impact on military effectiveness as the common soldiers stop being willing to die for your grand ambitions.
The way the AI decides when it wants to make peace, and what peace it wants to make, has also been redesigned. Previously it would take into account a combination of their own war support and ‘peace desire’, which factored a number of things such as length of war that are now part of war support instead. The country’s war support is still the baseline, but instead of peace desire the AI now considers the difference between the average (weighted by country importance) war support of the two sides to decide how equitable a peace should be reached.
In other words, if one is tired and demoralized while the other is fresh and ready to fight on, then the natural outcome would be a peace deal favoring the side that’s going ‘put me in coach’, while a white peace or minor swap of war goals might happen in a case where both sides have exhausted themselves. Of course if both sides are ready to fight on, then there’d be no peace deal at all and the war continues until one side’s had enough.
War Goal Flipping
So that’s all well and good, but the war support rework is only one half of this rework, and arguably the less important one in terms of how it’ll change the dynamics of war. Enter war goal flipping.
For all the frustration and player pain it caused, the old “don’t let war support drop below 0” system did serve a purpose - it prevented you from being able to conquer territories you had no way to reach, and to impose war goals that you had no real way to contest. It also (at least in theory) rewarded setting more limited aims for your war and made it possible to snatch away distant territories from powerful empires without having to launch a full-scale invasion of their metropol. These are all valid concerns, and to address them, we’ve introduced “war goal flipping”, or the ability to enforce war goals while still at war.
The vast majority of war goals (there are a handful of exceptions such as Cut Down to Size) now have their own independent enforcement bar, which starts ticking as soon as the war goal is captured. For example, let’s say you’re the US and you want to take Cuba away from Spain, so you start a war with a ‘Transfer Subject’ war goal against Cuba. You send a fleet with some marines, occupy Havana, and take control of your war goal. An enforcement bar now starts filling towards 100%, and unless Spain can regain control over Cuba or reach a peace settlement before that bar fills, the war goal gets automatically and fully enforced while at war.
Okay, so the war goal is enforced, Cuba is now a US subject - does that mean Spain has now effectively lost the war? Not quite. When a war goal is enforced during war, something we call a “mirror war goal” is created, meaning that Spain now gets an (infamy-free) Transfer Subject war goal against Cuba. Effectively, the situation is now reversed, with the US controlling Cuba and Spain aiming to take it back. If Spain then proceeds to get the upper hand and hold Cuba they can then enforce their war goal, regain their suzerainty, and hand the “Transfer Subject” war goal back to the USA - hence the term “war goal flipping”.
Any gains from wargoals enforced during a war are by default kept at the end of the war, unless the peace agreement says otherwise. A white peace thus becomes purely “status quo” rather than “status quo ante bellum”. To take the US-Spain example above, if Spain improves its position enough in the overall war, it could theoretically press its “mirror” war goal in the peace deal and regain Cuba, but any peace which does not explicitly hand Cuba back to Spain is one in which the US has a brand new colony liberated subject territory.
All of this should hopefully serve to make wars more dynamic, less frustrating, and lead to far fewer pointless but oh-so-bloody AI-AI conflicts.
AI Territorial Ambitions
Moving on from AI-adjacent things to actual fully-AI things, the next thing I want to show off is the work we’ve been doing on the listed goal of “give the AI a proper understanding of where it should and should not be interested in territory”. There is a system for this right now in AI strategies, called “state value”, but it’s a bit of a mess to work with and poorly visualized in-game, so we decided to start by actually tackling the visualization problem by introducing a new map mode for AI territorial ambitions. In this map mode, you can see which states an AI is interested in, how much they are interested in them, and why they are interested in them.
Aided by this map mode, we plan to extensively tune, tweak and introduce more factors to AI state values to inject some proper sense in the AI’s territorial ambitions and stop the US from subdividing Mexico into a collection of disjointed exclaves every single campaign. In general, we’re also looking at breaking up some of the logic in the AI strategy file to make it easier to work with - both for our own sake, and for the sake of modders.
Hiring & Wage Tooltips
While only tangentially related to AI, I also wanted to show off some UI improvements we’ve made to the building hiring and wage tooltips. Previously, buildings would frequently communicate the wrong information entirely about why they were or were not hiring, and wouldn’t really tell you anything at all about their plans for wages. As with the AI territorial ambitions, exposing this is as much about giving ourselves better debugging information as it is about improving the user experience. This is where the AI tangent comes in, as better debugging information will be helpful to us when we’re working to improve the AI’s economic performance. As an added bonus, this has already resulted in a number of old hidden bugs in the wage setting system being fixed.
Open Beta
Last but not least, when talking about the AI update in DD#184 I mentioned I would be looking into the possibility of doing an open beta for it, and I’m happy to tell you that we will indeed be doing just that! The open beta will take the form of a staged rollout, with an initial more limited set of changes, and new changes/improvements dropped every week based on both existing plans and incoming feedback.
The Initial Open Beta Branch will be available 1st September, with weekly updates for the open beta.
- Open Beta Update 1, 8th September
- Open Beta Update 2, 15th September
- Open Beta Update 3, 22nd September
More information on how to opt in to the beta and where to put feedback will be shared 31st August.
Well then, that’s all for today, but we’ll be back next week with a look at the more explicitly AI-oriented changes that will be part of the initial 1.14 rollout, and the week after that you’ll have the chance to try it out for yourself. See you soon!