Added in Unofficial Patch v 1.10
Bugfix
- Fixed bug (introduced) in CvPlayerAI::AI_diploVote where getMasterPower() was used incorrectly
- Fixed bug in CvPlayerAI::AI_civicValue where part of logic for valuing trade routes was actually applied to all civics
- Fixed bug (introduced) in CvTeamAI::AI_getWarSuccessCapitulationRatio where wrong form of getTeam was used (bug had minimal effect)
Victory strategy AI
- Added new hash variable infrastructure to store AI strategies for going for victory in save games
- Added framework for computing when AI should go for various victory strategies based on combination of game state and personality/traits
- Added victory strategy flags
War strategy AI
- When considering whether to accept capitulation, AI is now okay with its vassals capturing cities from enemy, but will still accept capitulation to block other civs from capturing many enemy cities
- AI now will accept capitulation if its doing badly in other wars, to lose an enemy and gain an ally
- AI no longer auto accepts capitulation if it has other wars, if it's doing very well then it may keep fighting
- AI is now more willing to finish off very small civs rather than accept their capitulation, war mongers in particular
- When AI is close to cultural or space victory, it now defends the cities crucial to victory much more
- Added CvTeamAI::AI_getEnemyPowerPercent() to compute relative power of enemies
City AI
- Blocked circumstance where small AI city with nothing else to do could start building spaceship parts, even if it would take forever
- AI cities now more likely to build gold instead of research, since generally get more research from pushing up research slider
- Introduced a couple new functions to compute quantities used in determining which plots to work which are of broader interest, like city target size, weights on different yield types, etc
- Cultural victory cities now will not distract themselves with filling needs for aircraft when not on defensive
- AI at peace will now have cities which give air experience fill more needed aircraft slots
- Changes to AI's determination of the desired size of its cities when choosing tile improvements. No longer effected by espionage missions, much less effected by bad health from industrialization. (helps stop cottage/workshop changes)
- Adjusted AI drafting strategy to match new valuation of Nationhood as a civic. AI will now draft more aggressively if it's in big trouble overall, or if it has citizens working worthless tiles.
- Fixed major cause of cycling between cottages and workshops in CvCityAI::AI_bestPlotBuild. AI now consistently values cottages as average between cottage and town, removing asymmetry that led to cycling.
Gold AI
- When making gold hurry decisions, AI now considers how much money it needs to save for unit upgrades
Civic AI
- Adjusted meaning of AI_bestCivic, it now gives the civic with the highest value of the CivicOptionType instead of first weighting the current civic higher. Works logically in the couple places where this function is used by the AI.
- Using new meaning of AI_bestCivic, the AI now can easily consider more reasons for holding back on civics changes.
- Adjusted AI valuing of legal civics to make AI run nationhood when in or preparing for a tough war (previously rarely happened). Made Free Speech a little less appealing so that civs who do not yet have the towns to benefit from it won't all jump to it.
Barbarian AI
- Barb player no longer wastes CPU time considering changing sliders, civics, or religion
- Barb cities will now replace defenders to the initial handicap number, instead of being content with fewer
General AI
- Added CvTeam::getCurrentMasterPower to get current military power of master of a vassal
- Modified CvTeam::getAtWarCount to optionally ignore war with vassals
- Added Maniac's code for supporting canMoveAllTerrain transports in mods
Tech Diffusion
- Revamped existing Civ4 system for increasing tech rate based on how many civs you know who already have what you're researching. New system increases tech diffusion rates based on open borders and vassal agreements, as well as fixing a dependence on the total number of civs on the map.
- Added a tech welfare system to boost research rates of technologically backwards civs to help keep them relevant to the game. Designed to keep tech stragglers from being quite as far behind, without making living off tech welfare a viable strategy.
- Tech diffusion is equal for AI and human players in the same circumstance, but has been setup such that if one player (usually the human player) starts to pull far ahead in tech then all others will start to get a boost so that the game remains interesting. The other civs will still be behind, but hopefully not too far.
Customization
- Added several setting to control the new tech diffusion logic to GlobalDefinesAlt.xml
- Exposed additional research rate controls to GlobalDefinesAlt.xml. Since AI tech rates have improved, some tech timing balancing has been done through these settings and customization of research rates is now very easy.
Debug
- Changed and improved debug display for players, long lists of units, and cities
- In debug mode, plots where AI is planning on changing from one improvement type to another are now highlighted to help track down issues with oscillation in improvements
- In debug mode, debug plot circles now updated at end of each player's turn, so they can be watched while in automation
- Many additions in CvCityAI to aid debug display