2017 autumn patch - AI domination combat test

Not this patch but before, I tried a map where I crowded people in. I think it would have been Immortal with an extra civ and probably 2 extra CS. I go around to explore and see Gilgamesh and Qin near me. As I start walking my warrior home to defend, I notice that Gilgamesh has a lot of warriors around. He declares war, and then a couple turns later has them all at my city. A few turns later, I'm dead. I did not even get the chance to finish Code of Laws.

So if the AI is truly motivated to declare war and take your city, they can do it. Just because you declare war and have no troops it can still take the AI a little bit to essentially do the rolls in their head that they take you out. I mean, if I was playing a game and an AI attacked me without sending any troops, I might continue on my current strategy for a little bit.

You didn't have walls. As soon as the walls go up, the AI is too incompetent to commit to the focused attack necessary to take the city. Instead, they will move a unit next to the city, think "oops, I can't take this city with this unit", retreat, and then repeat this process with all their units for the next dozen turns, occasionally attacking with one of them and no more.

It's pretty funny how Game Boy Advance strategy games like Advance Wars had far better AI than a 2016 AAA PC game.
 
Speaking to 1UPT vs. doomstacks, I don't know why they haven't tried something in the middle, i.e. limited unit stacking.

I think they sort of tried this with the Corps/Army concept, but that's just combining like units into stronger ones. I think they should allow different types of military units to stack in the same tile, but limit how many can occupy a tile. It could even scale up with techs/civics.

Just having the ability to stack 3-5 military units on the same tile, regardless of type, would help to clean up the map and probably aid the AI's efforts to effectively campaign.

They'd have to rebalance certain types of units (especially ranged), but I think it could work.

It would open up some cool new tactical possibilities too. Like, do you spread out your melee infantry line to block off the battlefield or do you concentrate them into one stack to better batter through your enemy's line?

Do you mix melee with ranged in order to protect your archers, or do you stack like with like and leave your archers vulnerable?
 
I wanted to see Firaxis way of civ6 ;) so no mods...

It is a very clear situation: duel domination game:
AI and a one and last civ to defeat for victory - AI should realize this...

Do you have the deluxe edition? You could try the same test with Alexander and see if that makes a difference (assuming his AI is set up correctly to know he doesn't get war weariness penalties).

Yes, the AI would ideally be programmed to weigh diplomatic penalties versus it's chance at victory (in this case - diplo penalties 0 as there are no other civs!), but I don't know how much they've coded in victory specific logic in that sense.
 
Once at war these are the values that determine which city the AI attacks and partially how it attacks.

<!-- The following are used to determine which cities to attack, and how high to rate that attack in comparison to all other production or uses -->
<Row PseudoYieldType="PSEUDOYIELD_CITY_BASE" DefaultValue="300"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_DEFENSES" DefaultValue="300"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_DEFENDING_UNITS" DefaultValue="80"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_ORIGINAL_CAPITAL" DefaultValue="200"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_POPULATION" DefaultValue="125"/

War weariness and warmongering penalties influence diplomatic actions such as what to offer in peace deals. I don't think they have much effect on the how, what, when and where the AI attacks once at war.
 
@V. Soma : if its the military AI you want to test, I'd suggest to use a mod removing war weariness, in the base game taking cities, even more the last one of a civilization, is not really what the diplomatic AI should do (well it should in a duel domination, yes, but I'm unsure that's what you want to test)

Seems like a bit of a glaring flaw if an AI is unwilling to take an action that wins the game for it.
 
Seems like a bit of a glaring flaw if an AI is unwilling to take an action that wins the game for it.

Depends. The obvious way of coding, I think, would be "select a victory condition" followed by "if victory condition is domination, then do not care about warmonger penalties" or "if victory condition is not domination, care about warmonger penalties". And indeed, that does not include a seperate option "if only one other civ alive, do not care about warmonger penalties", because that's an edge case that would require different coding from "normal". With all these tests (that are all run within those test case lines) we may just be running into that problem.

I think that the simplest way to avoid this edge case is to start in classical era instead of information era and rush walls, with all other things the same.
 
Biggest problem with current AI I can see right now is the units gathering around a city but not actually attacking it even if they could easily capture it in 1 or 2 turns. They seem to lack ability to understand its worth losing a few units if you take a city, since, as AIs, they can easily replace lost units.

Second biggest problem is the Fortify mechanics. Basically under these combat rules it often makes sense to just park units in place and not move, because when you move you forfeit healing and defense. AI doesn't get this at all. IMO if a unit has been attacked in the previous turn, it should be considered to have been "disturbed" and unable to heal that turn. That would make the AIs tendency to charge with melee units make more sense.
 
Seems like a bit of a glaring flaw if an AI is unwilling to take an action that wins the game for it.
I'm unsure it could be coded directly that way and maintains compatibility with scenarios or mods (by directly I mean conditional coding like if.. then do...), the AI works with weighted decisions as explained by bbbt.

And yes, that's a flaw, my proposal was about trying to understand if it's a military AI flaw or a diplomatic AI flaw.

Edit: another suggestion: set AIOperationEvalLog to 1 in UserOption.txt and check the logs at the end of the test game.
 
Ran an AI only game, domination victory on prince difficulty. Left it running for about 3 hours. I return and not a single civilisation has been defeated. Borders had barely changed since the first half an hour. The game had pretty much stagnanted. Medieval units everywhere despite everyone being in the information era.
The game I finished up Tuesday night was crazy. Prince with 2 continents. Japan was extremely aggressive and I had to go to was with Gilgamesh against Japan and I had to take cities via diplomatic. I gave him back 2 cities but it was the most agressive I've seen the AI. Also same game ARabia on the other continent declared war on me and sent his troops across the ocean. If I had not been within a few turns of a score Victory he would have taken that city I believe.
 
I think the premise of the test is broken.

You declaring on the AI is the WORST POSSIBLE CASE for the AI, because it wasn't planning on fighting and has no desire to do so.

If you let the AI find and war you it's much more focused on fighting, resulting in them taking CS and other civs efficiently.
 
I've never had an issue with civs conquering one another. Happens multiple times a game. I actually take great pains to try and reduce this as much as possible.

Routinely Rome and Arabia are the biggest aggressors.
 
I was gonna say that maybe AI just can't do the war yet so they develop first, it would be stupid for you to make AI switch their entire economy to war rails simply because some far away civilization declared a war on them.

But then I played a bit more, in my game through entire siege of this city, they finished building mahabodhi temple and then built a catapult. So yeah, AI is completely incapable of switching to war economy mode even when in danger. Though I must say AI uses their units better now, it no longer suicides everything into you as soon as possible as much as they did before, AI gave me a fair defence at first and I had to do some sacrifices to win the war.

AC9BC555CF6CC525413FC1EB575CDB6A68DE0EF7
 
Last edited:
7 years of 1UPT, and still the AI is uncapable of playing it decently.

How long it will take to Firaxis to figure it was a CATASTROPHIC decision?

Pretty much the reason that I've given up on Civ6, I just cannot stand the AI ineptness when it comes to combat. The lack of any sense of balance between the civs and annoying game mechanics such as the ridiculous cost scaling doesn't exactly help either. I'd like to see a mod (tentatively called Civ 6.4) use the Civ6 engine but with Civ4 like mechanics. I'll be happy to join this mod effort if it ever happens.
 
I think I spent about 30 minutes of playing Civ5 until I discovered that it was total meh so I'll lean at Sulla's analysis http://www.sullla.com/Civ5/whatwentwrong.html for the major issues.
Being a hoppyist AI-programmer myself, I do understand that it is quite difficult to create a decent AI. Firaxis has made it even harder by introducing 1-UPT, which when coupled with a crowded map, creates an extra layer of ordering dependencies among adjacent units, which would not have existed at all if many units were to allowed to occupy a tile. This may seem trivial to humans, but it makes unit placement at least an order of magnitude harder in my opinion.
At this point I'd rather play Civ4 BTS with the AI focused mods like K-Mod or Colonization RaR at this point.
Sorry if I de-railed the thread btw!
 
Last edited:
Speaking to 1UPT vs. doomstacks, I don't know why they haven't tried something in the middle, i.e. limited unit stacking.

I think they sort of tried this with the Corps/Army concept, but that's just combining like units into stronger ones. I think they should allow different types of military units to stack in the same tile, but limit how many can occupy a tile. It could even scale up with techs/civics.

Just having the ability to stack 3-5 military units on the same tile, regardless of type, would help to clean up the map and probably aid the AI's efforts to effectively campaign.

They'd have to rebalance certain types of units (especially ranged), but I think it could work.

It would open up some cool new tactical possibilities too. Like, do you spread out your melee infantry line to block off the battlefield or do you concentrate them into one stack to better batter through your enemy's line?

Do you mix melee with ranged in order to protect your archers, or do you stack like with like and leave your archers vulnerable?

I agree. Other 4x games like Endless Legend does this limited stacking. It improves with techs so first you can stack 4, then 6, then 8. They also have certain unit types that cannot be stacked at all. Civ 6 could easily implement this if they wanted to, eg stack 2 after a tech, then 3, etc. Especially given how many other concepta they have already borrowed from EL such as districts..
 
This is not really the place, but the problem with stacks is that you just end up with fewer 'bigger' units. Say that you have a stack limit of 3, there are virtually no reasons why you want to have a stack of less than 3 units. So, if you can build archers and swordsmen, you have 4 possible stacks:
A: 3 Swords
B: 2 Swords + 1 Archer
C: 1 Sword + 2 Archers
D: 3 Archers
You'll notice that this is equivalent to having 4 different unit types (A, B, C, D) that you can build. Thus limited stacking, in practice, reverts to 1UPT with massively increased number of different unit types (and some minor strategic changes like distributed production). I simply don't understand why this is a good thing.

If you really want limited stacking to work you need to add another layer, such that a stack is somehow more than just the sum of its units. You need some reason to move around units and change the stack composition dynamically during the war; if there is no reason to modify its underlying composition then its simply one big unit with 1UPT. I'm not really aware of a game that does this well. CK2 and EU4 have interesting ways of resolving battles between stacks, and of dealing with attrition, but the stacks still all feel like a single big unit. In those games, stacking is really there to tie the military to the economic side of the game, it's not great in its own right.

There is of course Age of Wonders or Heroes of Might and Magic, which use a seperate Tactical Combat to resolve battles between stacks. Adding something like that, however, immediately makes a game much more war-focused, while Civilization is special in that it focuses less on war than most games of it's kind.
 
I always had an idea where you could stack as much units as you want but units suffer strength penalties due to overcrowding.
 
Back
Top Bottom