I write the current most used AI mod in Civ 6, and have been doing Civ AI since 4.
The poor AI in Civ is repeatedly based around smart systems stacked on top of each other.
So imagine Software Development, you decide you want to add 10 AI systems to run aspects of the AI. You build all 10 AI systems, each one doing a thing.
Then you add them all together, and they all clash. That's Civ AI.
It's almost deterministic in that, all the AI systems fight each other in a consistent way, so you could have just ignored writing all your complicated AI, and made the AI just follow a single decision tree, and it would be the same results. Except a single decision tree would follow logic. Random systems competing with each other, has no real logic.
Then when AI problems come about, the programmers tweak the systems to fix a single problem, which can maybe work, but will break many other things in the process.
So each Civ game, to fix the AI, you start by shutting off all the AI systems one by one. The goal being when I ask the game to do X, X occurs.
Once you get all the stuff removed so you can actually make the game do something, you then create actions that make things happen.
That can make the game has significantly insanely good AI. The best example of this is a mod in Civ 5 called Vox Popeli which has the most profound Civ AI anyone has come up with, and takes ideas from all the Civ modders.
To get the AI to a point where the Human thinks it's good is not particularly hard if you focus on simple, easy to understand concepts, and not large systems that are supposed to cover every possibility organically.
The poor AI in Civ is repeatedly based around smart systems stacked on top of each other.
So imagine Software Development, you decide you want to add 10 AI systems to run aspects of the AI. You build all 10 AI systems, each one doing a thing.
Then you add them all together, and they all clash. That's Civ AI.
It's almost deterministic in that, all the AI systems fight each other in a consistent way, so you could have just ignored writing all your complicated AI, and made the AI just follow a single decision tree, and it would be the same results. Except a single decision tree would follow logic. Random systems competing with each other, has no real logic.
Then when AI problems come about, the programmers tweak the systems to fix a single problem, which can maybe work, but will break many other things in the process.
So each Civ game, to fix the AI, you start by shutting off all the AI systems one by one. The goal being when I ask the game to do X, X occurs.
Once you get all the stuff removed so you can actually make the game do something, you then create actions that make things happen.
That can make the game has significantly insanely good AI. The best example of this is a mod in Civ 5 called Vox Popeli which has the most profound Civ AI anyone has come up with, and takes ideas from all the Civ modders.
To get the AI to a point where the Human thinks it's good is not particularly hard if you focus on simple, easy to understand concepts, and not large systems that are supposed to cover every possibility organically.