Peace negotiation: There were problems with the UWAI component refusing to make peace or unreasonably insisting on reparations. (Some reports in that vein:
1 2 3)
• When multiple AI civs are at war with the same civ, each of them (usually) assumes that it will be the primary target of the shared enemy. (Previously, AI civs often assumed that a stronger enemy posed no immediate danger because it would go after a different target first.)
• The AI may make a small payment for peace to a stronger war enemy that probably poses no immediate danger but could be very dangerous in the medium term. (Offering a token of goodwill might help and can't really hurt.)
• The AI may pay a human player for peace even if it thinks that both sides want peace. (It's not a reasonable position to insist on a square peace treaty when continuing the war is disastrous for one side and merely inconvenient for the other.)
• Made the AI a bit more generous when paying for peace in situations when the war is going badly but not extremely badly. (For extremely bad wars, the AI still assumes that peace is unlikely to last and therefore not worth very much.)
City safety calculation (evacuation): [advc.139] Discussion
1 2 3
• The AI updates the safety status of its cities in response to moves of human war enemies. This way, the UWAI component is always up to date about city safety when asked for a peace proposal.
• The safety calculation now accounts for unassigned promotions of the city defenders and for units in production that will appear at the end of the turn.
• Made the AI less likely to leave behind more than a couple of defensive units when evacuating a city.
In the city safety calculation and most other AI code that evaluates the strength of unit stacks: [advc.159]
Per-unit strength values are taken to the power of 1.25 before getting summed up. For war planning (UWAI component), such an adjustment had long been in place, but, for tactical decisions, the implicit assumption was still that e.g. two Swordsmen are an even match for one Cuirassier.
Increase the impact of
NoWarAttitude (
Civ4LeaderHeadInfos.xml) probabilities that are near 50%. (UWAI doesn't treat those as probabilities; they get factored into the war utility value as part of an "affection" cost.) This should make about a third of the AI leaders noticeably more reluctant to start wars when Cautious, approximating their BtS personalities more closely. Previously, Cautious vs. Annoyed attitude rarely made a significant difference in AdvCiv apart from worst enemies.
Only AI civs in the upper third of the scoreboard consider stage 2 of the "Domination" victory strategy (was upper half). [advc.115]
Diplo memory decay:
• Simplified and corrected the decay formula for multiple remembered diplo actions. For example, two declarations of war (in short succession) are now fully forgotten by the target after an expected duration of 150+75 turns on Normal speed. Three declarations after 150+75+50 turns, etc. (geometric progression). [advc.130r]
• Memory about tech trades ("you're becoming too advanced", "you shared your discoveries") are exempt from the above, i.e. they decay as in BtS with a per-turn probability that doesn't depend on the memory count. [advc.553]
• "You shared your discoveries" is now easier to get (increased relations modifier per tech) but more difficult to sustain (faster memory decay). [advc.553]
• "You gave us help" now decays faster, i.e. with a (base) probability of 1/150 instead of 1/200. [advc.144]
AI civs contact human players more frequently with offers for resource trades. Several players had reported (mainly
here) that the AI made such offers only (very) rarely. I've tweaked the heuristic for deciding whether one side needs a resource (much) more than the other (and more than other potential recipients). [advc.036]
Tribute demands: [advc.104m]
• A tribute demand may consist of multiple resources, and they don't have to be surplus resources.
• The AI takes into account its war utility value when deciding how much tribute it should at least demand.
• The order in which the AI goes through the different types of tribute demands is now properly randomized. This may lead to more demands for gold per turn – I'm not sure that these ever occurred in AdvCiv 0.96.
Air recon: Fixed a BBAI bug that had caused the recon target to be chosen randomly with a bias only for maximal distance from the airbase. And made several tweaks (Git commits
1 2). The modified code isn't used much by the AI, it's mainly for automated human units, so this is really more a UI than an AI change. [advc.650]
City placement:
• Exploration units now prioritize the surroundings of (tentative) city sites. Previously, early AI cities were often founded without exploring the full city radius, which had lead to cities that clearly weren't locally optimal. This change should also make human exploration more rewarding as AI scouts won't reach the human player as quickly and will be slower to find Tribal Villages. [advc.031d]
• AI cities cancel settler production when all city sites are taken. This should lead to fewer AI cities in poor locations that the AI normally doesn't bother to produce settlers for. [advc.031b]
• Numerous tweaks to the evaluation of city sites (Git commits
1 2) [advc.031]
Tech evaluation: slightly higher value for early-game resource yields – to account for the fact that, in the early game, owned resources are almost always workable. Prompted by
this post. (More remains to be done on that front.)
Improved the evaluation of the Pyramids ability (was still as in Vanilla Civ 4). The AI will build them much sooner now than in K-Mod. Actually, I had to make the AI underrate them again quite a bit to keep them viable for human players. May still go as early as 1000 BC; seems to vary a lot. [advc.131]
Removed or tweaked various conditions under which workers build roads and railroads while moving toward a target tile – so that improvements (and railroads on Mines, Lumbermills, Quarries) get built earlier. And other tweaks for railroad construction following (some) suggestions by Elkad. [advc.121]
Discussion
Placed a limit on the number of units that the AI may delete per turn in response to financial trouble. The AI tries to avoid deleting units that are headed for enemy territory. [advc.110]
Discussion
Revised the AI estimate of units needed for revolt suppression. Hopeless cases are disregarded. [advc.099c]
Damaged AI units consider tile defense when deciding whether to heal. Inspired by similar changes by
@Tholal in the "More Naval AI" (MNAI) mod. I've also adopted a few other tweaks (AI and other) from that mod, by Tholal and
@lfgr: Git commits
1 2
I've only gone through a small portion of the MNAI commit history; there's probably a good deal more that AdvCiv could adopt.