CIV 4 - AI Requests

dexters

Gods & Emperors
Supporter
Joined
Apr 23, 2003
Messages
4,182
Location
Canada
v0.04
last updated: Feb 06, 2005

Preamble
--------------
Borrowed from Sirian's post in the thread below
Improving the AI isn't just about making it more competitive. There is also making it behave more in line with the game's context.
AI is part of the experience. It's not just about winning... The AI impacts the "atmosphere". The more life the game maker can breathe into his or her design, the more engaging the game could be...The difficulty levels exist to hand the AI a handicap so it can continue to provide a fun experience even ...THE AI IMPACTS EVERYBODY. It's the partner, the opponent, the rival, the animation of gameplay.


Guiding Principles
--------------
1) No going back -The AI in Civ 4 should not regress back to a pre Civ 3 level.
2) The AI should at least be at good (in terms of overall performance) as the Civ 3 AI
3) Superficial Intelligence (see point 4 under Game Wide issues)

Game wide issues
----------------
1) Every game feature available to the human player should be available to the AI. And the AI should reasonably be able to use it (please, no SMAC style gameplay where there are lots of fun features that the AI can't handle) or more recently, C3C style issues such as lack of army usage, artillery usage etc.

2) Cheating to a minimum. See guiding principle #1. Civ3 AI cheats somewhat in that it knows locations of resources and your units. This is to help keep it reasonable competitive. Civ 4, if the AI is to cheat, should cheat in similar fashions. That is, cheats that are essentially heuristic shortcuts that grant AI some competitiveness in doing things that may simply be too abstract to program into an AI routine (clearly, settling on a piece of land with the expectation there may be a resource is probably a concept the AI can't grasp)

3) AI priority in expansion - Assuming the border/culture system returns, and I suspect it will (maybe it won't be called culture) then the AI should expand much more in a human fashion. That is, the top priorities would be to expand in areas that give synergy to its current empire configuration.

All to often, Civ3 AI expands (correctly) for the sake of expansion. There is a problem however. This sometimes leaves them open to sprawling swiss cheeze empires where one civilizaiton have several isolated pockets of cities. That's not to say such configurations is neccessarily wrong. But the AI doesn't distinguish been conquests that adds to its borders and extends its core outwards vs. taking cities half a continent away. To the AI, it would appear all cities are equal regardless of distance and 'fit' to its current empire configuration.

4) Intelligence. or at least the ability emulate what a human might do. I was so impressed with the way Sirian described his ideal AI (see Preamble) that I think he puts perfectly the little things myself and many others have wanted but never quite managed to put into words.

5) Forecasting. Use past Data to forecast and allow the AI to see trends and take action. Most basic flaw currently in the Civ3 AI is the AI superpower's inability to see threats coming from a middle of the pack human player who is slowly gathering in strength and knocking off rival after rival.

Human players play with a keyboard and mouse and can thus very easily see visually a lot of information, such as a rival's growth. The AI however remain oblivious and beat on each other senseless.

The idea is for the AI to recognize threats as they emerge. Once recognition is made, the difficulty setting may enter. On Chieftain, there may be a grace period before the AI will act on this threat on higher difficulty levels the AI will have less telorance for waiting. As always, this shouldn't just be geared to scoping out the human player (as this would break guiding principle #1 on regressing back to Civ2 level AI of ganging up). Giving the AI the ability to check up on all their rivals is integral part of the request.

Ultimately, no one wants a 'Big Blue' type AI. It's probably impratical. What would be interesting would be to throw in more layers of humanity into AI actions, in how it manages diplomacy, trade, war, peace and alliances. The Civ3 AI still feels very much a cold crunching machine. A good example is troop management. Rather than sending stacks of forces to be slaughtered by a human bombardment gauntlet or predictably pulling troops or ships that have been damaged, the AI should be able to asses the situation more broadly and potentially still send in damaged troops "sometimes" based on a broad set of variables that the developers can keep hidden. This would remove much of the predictability of an AI and introduce a much more human set of reasoning and introduce challenge not by being a superior tactician, but by simply being less predictable.


Unit Specific Issues
------------------
1) The Naval Factor - I was very impressed with the modifications to AI behavior vis-a-vis navies in C3C. However it still was very much limited by a date AI engine and had severe limitations... like the inability to hold on to beach heads. . The biggest problem right now is, once the massive landing happens, and the first few cities are taken, AI forces quickly fans out. Failing to secure their beachheads. Making it all too easy (even for the AI victim) to retake the beachheads and you end up with 20 turns of fighting over the same peice of land.

What I'd like to see is a much more intelligent AI that can distinguish between troops landing on beach heads and vs. troops moving over land. Perhaps if it decides to make amphibous landings, the game could mark the tiles it has decided to land on with a special flag that would indicate ' Amphibious Landing Here' this would in turn trigger a subsystem of AI would would take care of resupplying forces, reinforcing forces and fortifying existing forces at that location.

Governor Issues
-----------------

- City needs communicated to workers. I mean that if a city is drowning in food, the workers should know to mine more. If the city has lots of mountains/hills, the workers should know to irrigate around that city. Definitely non-trivial but feels like straight-forward calculations that the computer should be good at. (comment: I recall Soren's interview on Apolyton back in 2001 where he describes the AI being multilayered. A Leader AI for empire wide management, City AI for city management and Unit AI for unit management so something like this may already be implemented)
- City placement. They seemed to have this down in PTW and regressed in C3C. Hard algorithm to write, I know, but it should be better.
 
The AI will be moddable by Python, according to Soren, so you might as well address these at the modding community along with the dev team itself. ;)
 
ohhh god plz no python. I have experience with that stuff. Save our soules and hope for a good editor (and GOOD AI)
 
I frankly see no improvement in civ military AI from civ 1 --> civ 2 --> civ 3. When an offensive unit is produced it is immediately sent out the door to seek out the enemy. That has to be the laziest AI one could program.
 
eg577 said:
I frankly see no improvement in civ military AI from civ 1 --> civ 2 --> civ 3. When an offensive unit is produced it is immediately sent out the door to seek out the enemy. That has to be the laziest AI one could program.

There is. I have only played Civ on the SNES but comparing Civ 2 to Civ 3, the AI has improved abilities to mass troops.

Granted it works on a basic premis of overwhelming the enemy through sheer numbers (aka the Powell Doctrine) this is vastly different from what I saw in Civ 2. Actually, my first few games on Vanilla Civ3 were real shockers. I remember commenting how it felt like wars were real events compared to Civ2, even when I was playing on Chieftan settings. Having the Aztecs declare war and send about 30 of their jaguar warriorns and 5 more each turn towards my lines were quite a surprise.

----------------

On the moddable AI issue. I'm not sure what python is, but my only concern with this is it could lead Firaxis and Soren to end the patching of the AI with a 'it's good enough' attitude. Although C3C has many bugs, what I've liked about the whole Civ 3 experience was that for better or worse, AI got better with each patch and as someone who doesn't mod his games and play single player epic games (that's bread and butter for me) I expect a level of completeness and competency in the AI that should be present without a mod. If I decide to mod it, it should be my choice and not something more like a user created patch for gaping holes in the AI.

Although I kinda wish users could mod C3C to fix the barbarian/army/sub bugs that annoy so many and Firaxis seem content to left broken.
 
dexters said:
--------------
1) No going back -The AI in Civ 4 should not regress back to a pre Civ 3 level.
2) The AI should at least be at good (in terms of overall performance) as the Civ 3 AI

I agree. There should be no regression to pre-Civ3 levels. A lot of people complain about how stupid the Civ3 AI is but it really is a huge improvement over the Civ2 AI.
 
eg577 said:
I frankly see no improvement in civ military AI from civ 1 --> civ 2 --> civ 3.

I disagree. In Civ3 the AI will escort its settlers and transports. If it knows you are militarily weak it will declare war. It will often try to invade you on your weakest spot. And when it invades you it will invade you with all it has got. I've also seen it send cavalry behind the front lines to harass some of my cities deeper in that were poorly defended.
 
I would really like to see a smart AI rather than one that has to cheat. The bonuses the AI get are just to offset their lack of real intelligence. It changes the whole nature of the game that the AI doesn't play by human rules - the tech pace, building, and wars are all dramatically different. I'd really like to see a level playing field with some real AI, even if I have to wait longer to play..
 
Psychonaut777 said:
even if I have to wait longer to play..

Years. First Firaxis would have to build the game and tune it multiplayer and get the fine strategies from the top players down. After a couple of years of this (and closing the loopholes and cheesey exploits) they could get most of them and formalize the best strategies. Then they could write an AI that uses these techiniques. Then they could release the game to the population at large.
 
Okay, you're right...Civ3 AI is *better*, but it is still far off from being satisfactory. If you strip away the AI bonsuses and only consider the AI there isn't anything there worth praising.
 
eg577 said:
Okay, you're right...Civ3 AI is *better*, but it is still far off from being satisfactory. If you strip away the AI bonsuses and only consider the AI there isn't anything there worth praising.

Even if you strip away the bonuses, Civ3 has by far the best AI of any game in the series.
 
warpstorm said:
Even if you strip away the bonuses, Civ3 has by far the best AI of any game in the series.

I definitely agree with that. IMHO the AI would just need a little tweaking, like using armies, navies and artillery properly, to become much more formidable.

Having said that i'd really like to see a real Artificial Intelligence facing me but i guess we'll all have to wait a while...
 
With or without AI bonsues the civ3 AI is the best so far but that still doesn't mean it is anything great. The regent level I believe gives the AI no production or research bonuses and it is an extremely feeble opponent. A regent AI that makes armies and artillery wouldn't be that much better either. I think the civ3 AI could have been so much better than it is now while still staying "hardcoded" (and obviously there are too many moves for the AI to play like a chess program).
 
none of us are professional code writers either. They are really doing some incredible things with AI these days and maybe it would take years with a team of 5 people but with 50 it would take much less. I'd be willing to pay more and wait longer for a better product I could enjoy longer.
 
Psychonaut777 said:
none of us are professional code writers either. They are really doing some incredible things with AI these days and maybe it would take years with a team of 5 people but with 50 it would take much less. I'd be willing to pay more and wait longer for a better product I could enjoy longer.

Two fallacies here.

One, some of us are professional code writers (some of us are in the games industry even).

Two, 50 AI coders will get the job done significantly faster than 5. In reality, they'd end up getting in each others way and coordinating them would be a nightmare (if a company could even afford to have that many specialized ($$$) programmers on staff). Nine women can't have one baby in one month.

Bonus fallacy, Firaxis will even have a team of 5 AI coders. They might have the budget for 2 people to dedicate to this. Maybe.
 
I just want as much of the AI exposed to modding as possible. If it's Python, it's Python. I don't care what the language is, as long as it can be semi-controlled. Simply controlling exploration, city build orders, MGLs, artillery, and when-to-attack code would make the Civ3 AI a whole bunch better.

Simply having Python scripts run the AI, though, doesn't do a whole lot necessarily. If the script says "Do AI moves" and calls a C function, it's probably beyond any of us to mod that intelligently. But if it's broken down into small enough steps, there's definite potential. We'll just have to wait and see. I want as fine a granularity as they can stand, though. :)

Arathorn
 
Arathorn said:
I just want as much of the AI exposed to modding as possible. If it's Python, it's Python. I don't care what the language is, as long as it can be semi-controlled. Simply controlling exploration, city build orders, MGLs, artillery, and when-to-attack code would make the Civ3 AI a whole bunch better.

Simply having Python scripts run the AI, though, doesn't do a whole lot necessarily. If the script says "Do AI moves" and calls a C function, it's probably beyond any of us to mod that intelligently. But if it's broken down into small enough steps, there's definite potential. We'll just have to wait and see. I want as fine a granularity as they can stand, though. :)

Arathorn

I guess that would help a lot mod-makers who would not have to spend days or months just trying to figure out why the AI builds what units it builds. If the AI can be (even remotely) accessed that would be a great boon for everybody.
 
I don't know what you all have in mind when you talk about the difficulties in programming a better AI. No one is asking for an 'intelligent' AI which can react like a human and thinks about it's move by evaluating different possibilities. A great AI could simply be one that has smart play hardcoded directly into it. It wouldn't be that hard to program an AI to play the early expansion phase like a human does (or similair to how a human does) if you hardcode how the AI should play. e.g., just instruct the AI how to make a 4 turn settler factory using 2 food bonsues and how to make a 6 turn factory using 1 bonus, etc. On the other hand, it would be almost impossible to make an AI that could figure out how to make a settler factory from simply "analyzing" all the possible options available to it.
 
Back
Top Bottom