HOI4 - Together For Victory AI Update #3

  • 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.
- AI now attempts to detect and react to many encirclement opportunities, both against itself and against enemies. Includes evacuating dangerous areas and cutting off bottlenecks.
  • Detecting potential encirclement situations is a really hard problem. A human, with her superior pattern recognition abilities, can take a glance at a map and point out such situations in practically no time at all. A computer, not so much. The thing is that you need to consider the relation between at least five or so provinces to detect the smallest encirclements, and for large ones the number gets really big. Computers are inherently bad at considering more than one relation at a time. While the approach for narrower bottlenecks and larger encirclement patterns is somewhat different, and particularly the latter is not 100% accurate, but where to draw the line between potential encirclement is not always clear anyway. The type of reaction varies a bit depending on the situation detected, but all in all the AI is better at countering attempts at encirclement and to try to act on opportunities they get. Though there is of course room for some improvement I must say I am quite happy with the number of situations the AI is actually able to detect with relatively few false positives. I hope this makes the game both more challenging and engaging for you!
Imho you did a great job in that regard. The AI really has its moments sometimes. In one MP game I didnt notice the enemy player actually left the game as the AI actually gave me a harder time to encircle than the player.
 
  • 1
Reactions:
The NF/event/decision provides the player an incentive to go that route. Some examples of previous mods: 6 months bonus to movement, logistics and combat abilities while the Soviets get a malus. Some events fire like "surprise air attacks with random number of Soviet planes destroyed on the ground" (historical and makes perfect sense, think also of Israel's wars).

I'm a huge fan of choices and no railroading. Choices however (save for house rules) only work as intended when you give the player incentives to pick options that are not favourable without the incentives. From then on it's only a balancing act, one that can be gradually improved via customer feedback.

Should such a scripted auto-destroying Soviet planes on the ground also apply regardless of the actual situation in the airwar? If for example the Luftwaffe has been soundly beaten by the allies already ( say early US joining the war ), and they don't have a single fighter or bomber to spare for the East front, should Soviet planes still get destroyed on the ground just because the NF/script say so and why?

Heavy scripting that only makes sense in historically accurate situations while they do provide interesting depth and unique mechanics often risk ending up just not making sense when you deviate from historical situations.
 
Last edited:
  • 3
  • 2
Reactions:
Should such a scripted auto-destroying Soviet planes on the ground also apply regardless of the actual situation in the airwar? If for example the Luftwaffe has been soundly beaten by the allies already ( say early US joining the war ), and they don't have a single fighter or bomber to spare for the East front, should Soviet planes still get destroyed on the ground just because the NF/script say so and why?

Heavy scripting that only makes sense in historically accurate situations while they do provide interesting depth and unique mechanics often risk ending up just not making sense when you deviate from historical situations.

I guess the best you can do is add lots of conditions to such a set of events. Germany must have five thousand planes in Russian air zones for the events to fire, something like that.

It would be a shame for there to be no way to get historical outcomes because they might not make sense when players intentionally do crazy stuff.
 
  • 1
Reactions:
if you work with events they might be exploid.. why should a russian MP-player build aircraft if the planes (or a great number of them) would be destroyed by event? Could he "save" his planes if he build them but let them stay in "reserve" till the event fires? etc pp...

events are a quick solution for a lot of things.. but not allways the better ones...
 
  • 2
Reactions:
F.e. this could be solved if port strikes or airfield strikes work different and get a surprise bonus if some conditions are met.(maybe create an alert factor for planes and ships which work similar like dig in bonus) So the less alert, the less attrition and supply cost but higher casualties while getting attacked.......just brainstorming a bit.
 
F.e. this could be solved if port strikes or airfield strikes work different and get a surprise bonus if some conditions are met.(maybe create an alert factor for planes and ships which work similar like dig in bonus) So the less alert, the less attrition and supply cost but higher casualties while getting attacked.......just brainstorming a bit.

Implementing a mechanic for attacking and suppressing airbases would probably be way easier then trying to model all situations when it happened historically and are plausible to happen a-historically through narrow scripted events.

The amount of surprise and damage done should likely be heavily dependent on how much radar is present and how tightly packed (capacity used/capacity available) the airbases are and the AA present.
 
Because 20 cavalry divisions is a minimum of how many your going to need... Especially if you want the most Industry out of the occupied territory and run harshest occupation. As Germany I end up with around 150-200 cavalry divisions when I want to suppress partisans all over occupied Europe and a bit into Russia in 1941 with the somewhat inefficient garrison order, and building them 3 at a time @ 120 days would take me over 16 years to get enough suppression. Hopefully you agree with me that this is way way to slow rate of training?
I feel you are now mixing arguments a little -- there's quite a bit of difference between how many states Japan will typically capture, and how many Germany typically does. So while Germany might need many garrisons over the course of the game, it doesn't mean Japan is going to need large amount, especially from the get-go, too. And yes, due to the fact Germany captures more territory the rate at which they'd need to build garrison is higher... but at the same time don't forget Germany has also much stronger industrial base, which is more capable of coping with such orders.

Lets put it this way -- if the AI Germany is allowed to run unchecked, it starts WW2 with ~200 divisions, and around 1945-46 it has 500 or so divisions at its disposal (i can't remember exact numbers for JAP, but they too manage to expand their army considerably) That's with volunteer forces turned off, so it's all equipped with stuff they make on their own, despite the terrible job the AI does with keeping units equipped, etc. As such am not too worried about their ability to produce some garrison divisions in that mix, especially when, like mentioned, these divisions are quite cheaper to make than the regular ones.

My point was in the example where the AI makes zero progress and don't occupy anything. In these cases the garrisons are wasted.
If the AI never occupies anything, then under suggested approach it wouldn't produce any garrison units to begin with. Your point is about very specific and limited scenario where the garrison units become (temporarily) without use, and hinges on a very big what-if that's Japan failing to make any further gains after Sino-Japanese war. The catch is, if we want the AI to perform roughly along the lines on how it performed historically, then Japan failing to make any further gains is a sign the AI underperforms, and needs further fixes. If the AI performs roughly as it "should" then these units will be needed. Not to mention a human player in this situation would produce these units in advance too, wouldn't they? After all, it's not like the player in this scenario expects to fail to make any further progress.
 
Lets put it this way -- if the AI Germany is allowed to run unchecked, it starts WW2 with ~200 divisions, and around 1945-46 it has 500 or so divisions at its disposal (i can't remember exact numbers for JAP, but they too manage to expand their army considerably) That's with volunteer forces turned off, so it's all equipped with stuff they make on their own, despite the terrible job the AI does with keeping units equipped, etc. As such am not too worried about their ability to produce some garrison divisions in that mix, especially when, like mentioned, these divisions are quite cheaper to make than the regular ones.

It's not about if they can make them or not (which I have never argued they struggle with), but how fast they can make them.

Using your own example numbers here Germany builds 300 divisions between 39 and 46, over a period of 7 years, and in my experience they keep around 50 divisions in the training queue at any given time.

This means each of their 6 "batches" of infantry divisions deployed take over 1 year each before they leave the training queue!!! ( despite 90 days of training ), due to their massive equipment shortages.

That's the point I'm trying to make here.... If Germany starts to put cavalry in the queue when the first suppression needs arrive in late 1939 their first batch of cavalry divisions will be done early 1941, about the same time when Germany now controls all of Europe, and since they don't use any normal divisions for garrison duties in the meantime there is 100% revolts everywhere and hundreds of ruined factories, even worse then the current situation in 1.2.1!
 
Would it be possible to have a set of non-dynamic AI scripts to handle France as AI Germany, which would siphon a percentage of the units to stay in France while Germany is busy elsewhere and no core territories are occupied? This way, when the Allies land in France, the AI already has units in place and can then revert to the normal AI script in a more advantageous position.
 
  • 1
Reactions:
@SteelVolt - this is the best thing I've read since I got the game. Thank you for attending to this part of the game especially AI. I hope they don't pull you off to go work on something else because we need you to stay to keep iterating on the AI.
 
That's the point I'm trying to make here.... If Germany starts to put cavalry in the queue when the first suppression needs arrive in late 1939 their first batch of cavalry divisions will be done early 1941, about the same time when Germany now controls all of Europe, and since they don't use any normal divisions for garrison duties in the meantime there is 100% revolts everywhere and hundreds of ruined factories, even worse then the current situation in 1.2.1!
* production of the garrison units can be sped up if necessary, by giving it a higher priority to receive the equipment.
* production overall can be sped up by, counter-intuitively, reducing the number of units in the production queue -- because the AI distributes equipment evenly, 50 units in the queue take much longer to receive their equipment to proceed with training, than e.g. 10 units. At the very least, not adding further units if ones already in the queue are suffering equipment shortage would help things, too.
* the AI already completely fails to garrison the areas and does operate with 100% revolts most of the time; so even the worst production fail scenario isn't really making thing worse than they already are. If nothing else, it might make things better overall simply by not having units repeatedly pulled from the active fronts only to be sent back to fights after 1-2 weeks of strategic redeployment back and forth (and then you have the prospect of suppression actually kicking in eventually as the units get produced, even if it may take considerable time, vs the current behavior where it doesn't happen ever)

most importantly, with the way you form your point, i can't tell what you believe to be the preferable alternative. The AI producing large batch of garrison divisions in advance, before the hostilities break out? The AI producing instead the regular units, which is more costly and takes longer, and then using these units as garrison force? (which effectively means they are going to be stuck there as garrison units until the game is won/lost anyway, short of special case that's Japan taking over China early on) Leaving things as they are currently, even though it's painfully obvious it doesn't work?

"the AI cannot predict in advance how many garrison units it will need" and "the AI won't be able to produce garrison units fast enough if it doesn't make them in advance" combined together don't seem to leave much room for the AI to do anything at all about the issue, won't you agree?
 
  • 1
Reactions:
* production of the garrison units can be sped up if necessary, by giving it a higher priority to receive the equipment...
* production overall can be sped up by, counter-intuitively, reducing the number of units in the production queue...
* the AI already completely fails to garrison the areas ...
combined together don't seem to leave much room for the AI to do anything at all about the issue, won't you agree?

Yes I agree that all of the issues are possible to fix, to make it work. The point I was trying to make was that given other limitations of the AI your initial proposed solution would probably not work the way you thought and risk making the situation worse instead.

As it is now the AI does assign some units to partisan suppression & garrisoning duty from it's shared total right away, and due to the way the 1.2.1 AI works starting recruitment of specific anti partisan divisions when the need arise instead would risk leave the AI without any suppression at all for a very long time ( but with a bit stronger combat frontline ). If that is good or bad for the AI overall is hard to say, but it would not be good for it's ability to suppress partisans.

I think we have managed to prove the devs difficulties now in "fixing" the AI. Each idea, no matter how great on paper, leads to multiple followup issues in practice due to the AIs way of doing other stuff and how connected everything is. :)
 
  • 1
Reactions: