Concerns about difficulty vs. AI.

There is no ranged attack for cities and unwalled settlements are very easy to conquer. Defence now actually requires a noticeable army, while in civ VI you often had 1-3 turn grace period before a city was actually in a real threat.

That is why the new scout unit is really important, especially the lookout option that will allow you one more turn to react to an army (since generals seems rather mobile with the correct options).
 
Unfortunately, without access to the code and the ability to release dll mods (something that was, sadly, not possible in Civ6), modders will have limited tools to help the AI on the military front. Playing with priorities can help the AI economy but other than producing more units or being more aggressive, it won't change how it plays militarily (or will it, i've never delved that far into modding). With the AI already receiving such a large strength bonus, adding more bonuses is also virtually impossible (there's a point when combat will simply be impossible if you just add more str). What we really need is for the AI to stop being stupid when moving their units, and sadly that's not really something modders can do (at least, not without changing the code) unless combat AI was coded with something similar to neural networks and we can change the weights to affect it's behavior.

I guess we'll see soon enough. Hopefully leaving commanders undefended is something FXS themselves patch sooner rather than later, like they did for the settlers in Civ6 (you could still find unprotected settlers after they changed the AI behavior of course, and maybe it was a design choice, but at least they would no longer send all of their settlers without escort even when they were already at war like they did on release day)
Yes if the source were available like in civ5 that would be even better but I don't really agree only being able to modify values is as limiting as you think if the goal is to provide a challenge. Unless the AI is very idiotic, if values are editable you can punish some of the common tools that the human use or improve the one the AI chooses. As a simple example, boosting melee and/or nerfing range in civ5 goes a long way into making warfare more challenging. Or since science was king in that game, boosting science flavor for every AI would make sure it would tech well and have better units on the playing field.

Also my point was to make the game more challenging and not necessarily the AI more intelligent. These are 2 different things. I'm interested in the challenge but have completely abandoned hope the AI in this series will be competent (and present a challenge without bonuses).

We will ultimately see what the game offers for mods. Most likely not the source code like civ5 sadly but maybe enough to provide a higher challenge and more interesting game.
 
Last edited:
One of the things I have to point out - I wouldn't want a perfect tactical AI. It's quite good what AI sometimes lets player snipe out commanders. It should be fun to play. And for the challenge numbers seem to be good enough.

I also think we'll have two parallel processes here. On one hand, players will discover more tricks soon, making higher levels easier. On the other hand, I expect developers to continue tweaking AI and difficulty levels. For example, the build everyone will be able to play, will be 1 month after the one used in press build, so I expect some solid patch applied.
 
One of the things I have to point out - I wouldn't want a perfect tactical AI. It's quite good what AI sometimes lets player snipe out commanders. It should be fun to play. And for the challenge numbers seem to be good enough.

I also think we'll have two parallel processes here. On one hand, players will discover more tricks soon, making higher levels easier. On the other hand, I expect developers to continue tweaking AI and difficulty levels. For example, the build everyone will be able to play, will be 1 month after the one used in press build, so I expect some solid patch applied.
I would gladdly allow Firaxis to access some informations about my games (anonymously, of course), if that can allow enough data to improve the AI through machine learning. But I don't think this is the direction they chose, most likely because AI were most likely not up to it when they began the development of CIV7...

Maybe for one of the DLC, who knows? But I fear not all users would be ready to share data...
 
I would gladdly allow Firaxis to access some informations about my games (anonymously, of course), if that can allow enough data to improve the AI through machine learning. But I don't think this is the direction they chose, most likely because AI were most likely not up to it when they began the development of CIV7...

Maybe for one of the DLC, who knows? But I fear not all users would be ready to share data...
Would be great but 100% unlikely in 2025. ML for game AI is not a field mature enough that would allow a traditional/non-ML development company to develop an AI for their game at a reasonable cost. And that's not even talking about the hardware impact.
 
Would be great but 100% unlikely in 2025. ML for game AI is not a field mature enough that would allow a traditional/non-ML development company to develop an AI for their game at a reasonable cost. And that's not even talking about the hardware impact.

The field is mature enough from a tech point of view. We have chess engines like Stockfish that use ML and are virtually unbeatable. The cost-benefit ratio is not worth it imo. The truth is that most civ players are casual. They don't want a super competitive AI. So spending a ton of money to develop a super strong AI that maybe only 0.01% of civ players would enjoy or benefit from, is simply not worth it.
 
I would gladdly allow Firaxis to access some informations about my games (anonymously, of course), if that can allow enough data to improve the AI through machine learning. But I don't think this is the direction they chose, most likely because AI were most likely not up to it when they began the development of CIV7...

Maybe for one of the DLC, who knows? But I fear not all users would be ready to share data...
1. Making "strong" AI is a wrong goal. It has quite weak correlation with the game being interesting. One of the main initial complains about Civ5 AI was what it plays to win too much.
2. Using machine learning for training AI for game like Civilization is also not a great idea. At minimum, it will be unable to handle game updates well.
 
The field is mature enough from a tech point of view. We have chess engines like Stockfish that use ML and are virtually unbeatable. The cost-benefit ratio is not worth it imo. The truth is that most civ players are casual. They don't want a super competitive AI. So spending a ton of money to develop a super strong AI that maybe only 0.01% of civ players would enjoy or benefit from, is simply not worth it.
Maybe that wasn't clear. I am not saying it's not mature so that it's not possible or tools don't exist at all. I am saying it is not mature for a company like Firaxis to develop at a low cost. There is not enough standards for off the shelf solutions to be used. Game AI requires an heavy investment in custom solutions and it has therefore been traditionally attempted by the research team of very large companies or universities and not the game developers themselves. And they will choose a game not due to be patched in 2 months. Therefore as you say, that would require an investment that is far too much to be worth it (in talent and hardware).
 
1. Making "strong" AI is a wrong goal. It has quite weak correlation with the game being interesting. One of the main initial complains about Civ5 AI was what it plays to win too much.
While i generally agree with that, the AI needs to be be "strong enough" that it's not totally useless at fulfilling it's goals. To me those goals are :
  • Give some challenge to overcome. While i don't think the AI should necessarily play to win, i think it shouldn't allow you to win if you don't try to. If i was interested building my world with no competition at all, i would be playing some sandbox city builder (i also play those, so i also like that sort of gameplay, but that's not what i expect from Civ)
  • Make the world more living, more believable. Provide immersion. I think this is a very important goal for the civ AI and the reason why i also disliked the Civ5 AI at release. It was playing as a human trying to win, rather than the leader of a civilization.
  • Provide emergent narrative. Something often overlooked by those players who just want as tough a challenge as possible, but something i find important.
However, when Alexander the Great, one of the most famous conquerors of history declares war on his neighbor, and completely fails to even threaten a single city, then begs for peace when the floor has been wiped with his army, it fails at all 3 of those goals. Not only did it fail to provide any challenge, a warmongering civ that doesn't pose any threat because of total idiocy of it's move is bad for immersion. It doesn't feel like Alexander is in the game, but rather some of those trope interns pretending they are great historical figures while wearing a funnel as a hat. I know those are just AIs and not Alexander, but they need some level of competence. I'm not asking for miracles, but shuffling units around rather than killing a wounded enemy is so blatantly stupid it shouldn't be allowed.
From what i've seen, the AI seem once again completely idiotic in it's movements of troops and unfortunately no amount of parameters tweaking will fix that, at least not at the cost of interesting and enjoyable tactics. Hopefully FXS will improve the AI behavior as they did with previous versions to a point where it can at least provide some illusion of common sense, but they really need to figure how to get immediate tactical movements right. I'm not asking for the AI to plan 20 turns ahead, i know it's not realistic for a game that should run on PCs and consoles rather than NASA grade supercomputers, i just wish they don't loose so many turns doing nothing in the middle of a battle. Just watch Inquisitive Otter's last video for some facepalm moments 🙄
 
Generative AI is not a good fit for modern game AI. A new game does not have millions of existing playthroughs to train on. Coding an AI for a game that's already been out for several years is not useful even if it was possible, but since modern games are constantly changing with fixes and updates, even that is not really a practical possibility.

From what I've seen in the available videos, the AI seems somewhat tactically inept but at least it's very aggressive and pumps out a lot of units. I think that's the best we can hope for right now. I was worried that without city attacks the AI would be completely helpless even on defense, but that doesn't seem to be the case.
 
1. Making "strong" AI is a wrong goal. It has quite weak correlation with the game being interesting. One of the main initial complains about Civ5 AI was what it plays to win too much.
I agree that players (in general) don't want an AI that can beat them but they do want a challenge - especially on higher difficulty. The problem is if the only way the AI can provide that challenge is through buffs and not improved play then that makes some strategies unviable and therefore limits my choice of how I play. For example a +8 combat boost for the AI means that defensive strategies in the antiquity age will often be the smart/realistic choice (hopefully I am wrong about this but this is my impression from the previews at least). Not a problem if you want to play defensively anyway but a bit of bummer for the rest of us who like to mix it up. I realise that the reality of developing a game is that it is almost impossible to make a competitive AI that doesn't cheat for a game like Civ. I hope at least some of the things mentioned in Marbozir's video like leaving commanders vulnerable should be fixable post-release :)
 
I agree that players (in general) don't want an AI that can beat them but they do want a challenge - especially on higher difficulty. The problem is if the only way the AI can provide that challenge is through buffs and not improved play then that makes some strategies unviable and therefore limits my choice of how I play. For example a +8 combat boost for the AI means that defensive strategies in the antiquity age will often be the smart/realistic choice (hopefully I am wrong about this but this is my impression from the previews at least). Not a problem if you want to play defensively anyway but a bit of bummer for the rest of us who like to mix it up. I realise that the reality of developing a game is that it is almost impossible to make a competitive AI that doesn't cheat for a game like Civ, but hopefully some of the things mentioned in Marbozir's video like leaving commanders vulnerable will be fixable post-release :)
Yes, it should provide challenge and yes, I'm not a fun of challenge by stat boosts. On the other hand, challenge by numbers could be really fun. I totally enjoy repelling waves of attackers by using clever tactics which they lack.

So, I really don't see that big problem with commanders left for sniping, as long as overall challenge is good.
 
AI playing to win or not is a matter of personal preference. Some people like to roleplay and city-build/nation-build. Other plays, like me, like to win. Sometimes i'll go for science victory type, other times for culture, and so on. But when I play to win, it makes for a more interesting and more exciting game when I know my opponents are also playing to win. And when I know they're actively trying to prevent me from winning.

So, my ideal AI would scale with difficulty. At low difficulty levels, the AI would not play to win so much. At mid level difficulties it would. And at highest level difficulties I wouldn't mind if several AI opponents ganged up on me if they see me as the biggest threat and the most likely player to win the game.
 
After watching more videos, my main concern with +8 is that it is a counter to their being too many ways to get global CS buffs against the AI (war support, military aid, leader/civ buffs) and that victory will have more to do with orchestrating a way to nullify the AI buff, rather than fighting a moderately stronger AI.
 
Generative AI is not a good fit for modern game AI. A new game does not have millions of existing playthroughs to train on. Coding an AI for a game that's already been out for several years is not useful even if it was possible, but since modern games are constantly changing with fixes and updates, even that is not really a practical possibility.
That is not a problem. By now during developement AI could played against itself million of times.

Also the second part is not a problem at all. That AI decission making does not have to apply all of the decissions. For example some facts about combat do not change that much. Ai could have learned that finish units is always good. AI could have just learned that proecting commanders is good.

Not all parts of the algorithms need to be AI generated. But some parts can be.

Making combat against humans by giving +8 is stupid. I hate that. I never play anything like that.
 
That is not a problem. By now during developement AI could played against itself million of times.

Also the second part is not a problem at all. That AI decission making does not have to apply all of the decissions. For example some facts about combat do not change that much. Ai could have learned that finish units is always good. AI could have just learned that proecting commanders is good.

Not all parts of the algorithms need to be AI generated. But some parts can be.

Making combat against humans by giving +8 is stupid. I hate that. I never play anything like that.
It's really not that simple with the modern AI.

1. The amount of data to process. Neural networks operate with matrices and in transformer architecture you have a matrix with the size of your context on each dimension. Most advanced modern models are trained with about 16K tokens size of context (GPT-4 uses special tricks to handle 32K, but it's math uses 8K) and they have train cost comparable to the total AAA game development budget. Civ6 standard map size is 85x54, meaning it's 4536 tiles. So, to process the map, you'll need at least 4536 parameters for each layer - base terrain, resource, city/district, military unit (actually 6 layers with commanders enabled), civilian unit (even if joined with religious in Civ7), natural disasters, maybe something else. That's 11 layers for Civ7, requiring 64K context, which is way bigger than any modern hardware could handle. And that's standard map, not big.

2. Amount of turns to process. On top of this, AI will need millions of playthroughs for each possible setup, each of the playthrough containing dozens of turns (considering AI would lose badly and will not have full game most of the times). That's much more than usual generative AI training.

3. The question of who to play against. You need to actually train several AIs (at least 2, the more the better) and teach them to play against each other. So, multiply the numbers.

There are other "minor" things like setting actual goals for AI to train against, but with all this it doesn't matter anymore. If Firaxis had that kind of budget, I'd suggest that instead of developing Civ game, they'd develop immortality or colonize Mars...
 
I wouldn't want a self learning AI for Civ AI for the reasons other said, and I'll give another example why.

OpenAI wanted to showcase their AI (OpenAI Five) by creating a Dota 2 bot, and had teams play against it. However, it was a different version of Dota 2 to simplify it:
- Each player had their own courier to deliver their items (At the time each team had only 1 and had to share)
- There was a smaller list of heroes to choose from (IIRC it was 20, opposed to the possible 100+)
- The bots were given a reaction time of 200ms.

The bots were able to easily beat some of the best players in the world, but when they opened up the bot to the public, people quickly figured out the best way to beat them is by choosing a strategy it has never been trained for, which was Riki Radiance to push lanes*. Against humans, that strategy would never work and would easily be beat down. For the AI to learn how to beat that, they'll need way more games and data where they play against that, and even if people only played that against the AI, there still wouldn't be enough games to let the AI learn in any meaningful time.

* It's an incredibly dumb strategy which uses an invisible hero to push lanes passively. The bot very likely couldn't tell what was happening since it acts on known information, and probably couldn't make conclusions from it. As a far off civ example, imagine if you can make Civ AI's happy and friendly by just gifting all your gold, even if they hate you.

I know Civ 7 and Dota 2 are completely different games, but it's going to be expensive trying to fix cheese strategies that come up. Much better to use resources to manually adjust how their AI works directly.
 
The field is mature enough from a tech point of view. We have chess engines like Stockfish that use ML and are virtually unbeatable.

Chess and Civilization are very, very different games in terms of complexity. Chess has all information out in the open the whole time, has very strict and limited rules as to how you can move pieces and engage with the enemy, and has almost complete coverage of all possible movements (for the opening phase at least, and then still very thorough coverage). It is basically perfect to train on. As Archanist said, even a game as 'simple' in terms of interactions as a MOBA leads to issues where new strategies break the AI, and Civ is much more complicated to get a good AI for - especially as you can't just rely on giving the AI near-superhuman reaction times to make up for decision making issues.

That is not a problem. By now during developement AI could played against itself million of times.

While it is possible to develop a self-supervised algorithm, it's incredibly difficult to do so in a way that doesn't lead to tremendous issues in something like Civ. You'd really, really want a baseline set of data to train off of that is drawn from real games. For a very simple example, if the AI is developed entirely by playing against itself, you can have a situation where the first AI to have good success does so starting with a pair of scouts - even if it's just random chance causing the victory and not the scouts, like spawns/goody huts/etc. The AI then builds from there, and all AI vs AI matches start with a couple of scouts on either end. This can easily get to a point where you have a functional AI, so long as those assumptions (that everyone starts with a few scouts) holds true. Then the players get the game, start with 2 warriors, and conquer the AI without any resistance, because the AI was never trained on this strategy. The best way to avoid this is to train the AI separately many times, and then have each of those compete with each other at different points, but then it starts getting far more computationally expensive - and if the AI needs to be retrained because of a balancing issue (which should be done in any meaningful patch), those costs continue to spiral. Don't use ML algorithms to develop the AI for a game like Civ.
 
Chess and Civilization are very, very different games in terms of complexity. Chess has all information out in the open the whole time, has very strict and limited rules as to how you can move pieces and engage with the enemy, and has almost complete coverage of all possible movements (for the opening phase at least, and then still very thorough coverage). It is basically perfect to train on. As Archanist said, even a game as 'simple' in terms of interactions as a MOBA leads to issues where new strategies break the AI, and Civ is much more complicated to get a good AI for - especially as you can't just rely on giving the AI near-superhuman reaction times to make up for decision making issues.



While it is possible to develop a self-supervised algorithm, it's incredibly difficult to do so in a way that doesn't lead to tremendous issues in something like Civ. You'd really, really want a baseline set of data to train off of that is drawn from real games. For a very simple example, if the AI is developed entirely by playing against itself, you can have a situation where the first AI to have good success does so starting with a pair of scouts - even if it's just random chance causing the victory and not the scouts, like spawns/goody huts/etc. The AI then builds from there, and all AI vs AI matches start with a couple of scouts on either end. This can easily get to a point where you have a functional AI, so long as those assumptions (that everyone starts with a few scouts) holds true. Then the players get the game, start with 2 warriors, and conquer the AI without any resistance, because the AI was never trained on this strategy. The best way to avoid this is to train the AI separately many times, and then have each of those compete with each other at different points, but then it starts getting far more computationally expensive - and if the AI needs to be retrained because of a balancing issue (which should be done in any meaningful patch), those costs continue to spiral. Don't use ML algorithms to develop the AI for a game like Civ.
You seem to be trying to solve "whole AI" again with this. It is difficult and maybe not even wanted because of reasons for example mentioned in thread.
AI playing against itself would provide data collection possibilities of solving some smaller problems where decissions need to be made and human has previously written the decission algorithm.
 
You seem to be trying to solve "whole AI" again with this. It is difficult and maybe not even wanted because of reasons for example mentioned in thread.
AI playing against itself would provide data collection possibilities of solving some smaller problems where decissions need to be made and human has previously written the decission algorithm.
Trying to generate an ML algorithm to facilitate better responses from the AI for specific areas is definitely a better bet than getting the whole AI from such an algorithm, but the major issue with this is that it's entirely reliant on the starting conditions for those decisions remaining the same. ML is very sensitive to changes in the way the input is formatted, and typically sensitive to changes in the input itself. If you've trained an ML algorithm to take over when a commander deploys units to attack a city, and it was trained with a commander able to have up to 6 units stored, an ability that lets the commander have 8 units stored can cause all manner of unexpected issues. If the AI is trained with all units fitting into the categories of 'infantry', 'cavalry', 'ranged', and 'siege', then you'll run into significant issues if you create a unit that breaks those assumptions - maybe an infantry unit with a ranged attack, or a ranged unit that is good against quarters and defences. All of this means that, even if the algorithm could be trained to attack the city better than the typical AI behaviour (which I don't think it necessarily would be able to do), you'd have to be constantly working around it and trying to babysit it (or more likely, paying the time and cost to retrain it) every time you touch a part of the game that exists near the algorithm. It'd also be truly horrendous for modding - both because you wouldn't be able to retrain it as a modder and therefore would need to be working around it constantly (and testing heavily to see if you accidentally broke the AI), and because it'd massively restrict what you'd be able to do. Want to add in a unit ability that isn't a close copy of one that already exists? Better hope the AI can somehow handle this, because it might well have broken everything.
 
Back
Top Bottom