Thanks for the excellent feedback.
I'm planning to put out another minor version tonight, if all goes to plan, which should help address the Governor's Manor issue as the AI now correctly sees it as a production building, giving a hammer for each unhappy face. I think the fact that they're only -20% maintenance (and +1 unhappy) tends to make the AI not value them much until feudalism and vampires, otherwise.
Others:
1. Will look at this. This might help explain why the Luchuirp usually suck in my test games.
EDIT: Found (CvUnitAI::AI_workerMove):
Code:
if (!(getGroup()->canDefend()))
{
if (GET_PLAYER(getOwnerINLINE()).AI_isPlotThreatened(plot(), 2))
{
if (AI_retreatToCity()) // XXX maybe not do this??? could be working productively somewhere else...
{
return;
}
}
}
It needs to be determining whether it's likely to win the battle, not just whether it can defend (however poorly), as it is as the moment.
2. Pyre Zombies should not be considered for UNITAI_CITY_DEFENSE (due to giving no military happiness). Are these city defense warriors that are being upgraded? If so, something's not working quite right here or maybe I'm misunderstanding the upgrade system. Might be worth a Python check to make sure it keeps one living unit per city, anyway. (Edit: From reading your post again, I'm not 100% sure if you meant you'd tested these with my mod in addition to yours. If not, and it turns out not to be a problem, we can ignore this one.)
3. (Covered above)
4. I'm wondering if this could be partly due to the iBaseAttackOddsChange and iAttackOddsChangeRand values in the leader XML file. These artificially increase the odds the AI sees, sometimes by quite high values. The only purpose I can see for this is to make the AI stupider. Remove?
5. Agreed.
6. Could be tricky, could be extremely simple. I'll have a look.
