Apart from things I mentioned in Forum:Improvements_in_AI, I think that there is one more thing how to improve the AI.
The point is that according to my experience, it is a big mistake to voluntarily wage wars except for these three situations:
1. My opponent is technologicaly extremely behind so I can conquer him easily
2. I have so little territory that there is no good chance to become a mighty civilization by improving rather than conquering
3. I have already developed Howitzers (or perhaps Spies would partly do).
I do not propose that AI strictly adheres to this principle but that it adheres to it often (if it did always, then human players would not need to protect their borders well).
Now there are some advices that I found useful by experience and I think that implementing them into AI would enhance it:
- As long as you can expand, make only reasonable amount of defensive things (phalanx, fortresses, city walls) and strike a balance between improving your cities and founding new cities (putting more resources into the later). Deviate from this only when there is a big reason (such as building the Great Library). At this early stage (when you need to expand and protect new cities as soon as possible), improving the existing cities should be aimed to gain an increase in production very soon. That does not mean building many improvements (except Barracks in the most productive cities), but mining hills and irrigating some tiles.
- After you have expanded as much as reasonably possible (it is a subtle question whether colonizing remote continents is reasonable), build many workers. Keep their number high enough when some of them die, with respect to how much work there is for them. When you have Engineers, then turning ocean into hills or grassland is very advantageous, so do it often.
- Then protect your borders by Walls and fortresses.
- Then put all resources into making buildings, science progress, Wonders that will help you in your situation and improving terrain.
- When you discover a civilization, put a high priority to making embassy and stealing technology. I think that the benefit of the following things is really worth programming:
- When the more advenced state is at cease-fire with you, use the short stages of war (which occur once each 20 turns) to steal as much as you can.
- If the prey is worth the risk, then you can steal even when you are at peace. Send many diplomats and then suddenly break the treaty.
- Both in the situations above and at war, unload diplomats to rough terrain and accompany it by good defenders.
Under the mentioned strategy, democracy is almost always the best government (after cities grow a bit) and AI should respect it (if you modify it to follow this strategy). Shakespeare Theatre (in an industry-rich port) under democracy is such big blessing that I dare even propose to include the instruction into the AI program: If you plan Rep/Democracy, do everything to build Shakespeare in such city. Then (almost) all your ships must have it as home city, as well as ground units which you intend to send to war.
Further, it seems to me that there is a certain "Optimal path" in choosing the advances and that it would be an improvement if AI more tended to follow it. (The path may be less optimal if the civization deviates from the strategy "No voluntary wars until you have Howitzers"). The path is:
1. Monarchy
around 2. Neccessary military units
3. Map Making, Writing, Trade
4. Head straight for Gunpowder
5. If you do not strongly need something else (wonders, government forms or better ships), head straight for Explosives and then Railroad (and perhaps Industrialization)
6. Head straight to Refrigeration (divert for military techs only if you need them or if the diversion is not too big). Refrigeration requires Electricity which obsoletes the Great Lib, so if you have this wonder and still get some use from it, then delay this branch of develoopment and go for Combustion or Tactics.
7. Then it depends, but perhaps Combustion and Automobile, because the enemy destroyers are more bothersome than ancient Galleons.
8. If you plan to conquer the World, go for military techs and especially Robotics. If you are sufficiently ahead from your least-developed neighbour, make sure that you invent Mech Inf and Howitzers before the enemy has Armors, and use them immediately. Otherwise, there is no simple rule I can tell.
I would like to hear your opinion. Do you think that these ideas are good and will you implement the easier of them into the code?
Reflame 07:51, 21 April 2009 (UTC)