#7 on that list is frickin' vital.
So you're saying it worked correctly and all my new build units would have the promotion, whereas the gazillion units I already had were SOL?
I guess I could buy that. Offhand I can't recall building any more naval units in that game, so I wouldn't know if that was the case. Regardless, that would certainly be counter-intuitive. Another situation of poor text xml descriptions I suppose.
Wodan
Hi Solver. It would be helpful to the discussion if you specified which ones you want to include (so we don't have to flag our support of a won cause) and which ones you don't (so we can ask why and possibly see it from your side).Thanks for the list, Xenomorph. Some of those I'll want to include but not all of them.
...I feel #8 is the most important fix, but #1, #3, #4, #5, and #7 seems to be uncontroversial improvements that begs for inclusion too...#1 Vassal's spies will no longer be "caught" in your territory
#2 Mouse-over for Join City now displays extra bonuses for Great People
#3 Vassals freed by Capitulating Master no longer refuse to talk
#4 Automated Workers will no longer idle in cities within 2 squares of a hostile border
#5 Stolen techs can no longer be traded with No Tech Brokering enabled
#6 AI Civs under Theocracy will no longer accept gifted Missionaries
#7 Tweaks/bugfixes to improve starting city locations (thanks SevenSpirits)
#8 Rivers added for starting locations will generate flood plains if they pass through desert tiles
Yes, rolo, I would, or would at least not use it, if that meant the AI would be winning an AP diplo win next round. The thing is, we humans can adapt to these things, but todays AI can't because it would be to complex to implement and take too much cpu time. In the meantime, just not accepting them under theo fits realism and, way more important, gameplay.C'mon, if you were in theo and a AI gifted you a AP religion missionary, would you auto delete it? )
I want that the AI decides to use or not the missionary based on her own interests ( and that passes, OFC , by not letting anyone else to win via AP ). Like I already said some posts ago, there are some situations where the AI will benefit from using the missionary and blocking them because of the AI not being smart enough today ( your example probably could be avoided with a check on the AP members screen and a line of math ) especially when the game developers didn't showed any kind of will of changing that ( and they already rewritten Theo stuff code once, so it is not just lazyness ) is simply a bad idea IMHO.Like I said, that is not a problem of the AI receiving the missionary or not, but of using it. IMHO BH in that simply covered with a prohibition a lack of AI finesse
Solver are you able to include some of the the fixes from the Better BTS AI mod? I understand you've been consulting with the authors but I'm not sure what you and them plan to do about sharing the bug fixes. In particular the following two bugfixes are not in your patch:
- Fixed bug in player closeness calculations causing the AI to be blind to its actual proximity to other players (CvPlayerAI::AI_playerCloseness, used Option A from Unofficial Patch discussion thread)
- Fixed bug with needed defenders where the AI would choose to defend a recently captured holy city less than a normal city
Hi Solver. It would be helpful to the discussion if you specified which ones you want to include (so we don't have to flag our support of a won cause) and which ones you don't (so we can ask why and possibly see it from your side).
In the meanwhile...
#1 Vassal's spies will no longer be "caught" in your territory
#2 Mouse-over for Join City now displays extra bonuses for Great People
#3 Vassals freed by Capitulating Master no longer refuse to talk
#4 Automated Workers will no longer idle in cities within 2 squares of a hostile border
#5 Stolen techs can no longer be traded with No Tech Brokering enabled
#6 AI Civs under Theocracy will no longer accept gifted Missionaries
#7 Tweaks/bugfixes to improve starting city locations (thanks SevenSpirits)
#8 Rivers added for starting locations will generate flood plains if they pass through desert tiles
...I feel #8 is the most important fix, but #1, #3, #4, #5, and #7 seems to be uncontroversial improvements that begs for inclusion too...
I'm in touch with the authors. We have similar goals to improve the AI, but their mod can afford more experimental changes than I can at the moment. Specifically,
-(player closeness bug)
This is a good thing to fix but the fix itself leads to rather complex consequences. The Better BtS AI guys haven't fully tested the results yet. I'll definitely want to include their fix as soon as its consequences are better understood.
I have included a fix for this bug.
Generally speaking, the fixes from Bhruic's list will probably have to wait a bit longer. I'd need to look at Bhruic's code for it, no point redoing it myself, but I don't have 3.13 code to compare against at the moment. I actually like the changes after further consideration, though I do not want to include #5. That isn't how Theocracy was supposed to work, and that had also been discussed internally.
I didn't like #5 initially but now I figure it's a good change. The description of #7 is too vague. If that's a fix for the excessive forestation issue, good, I want to fix that. It's the exact changes that matter here.
iCollateralStrength = ((((getDomainType() == DOMAIN_AIR) ? airBaseCombatStr() : baseCombatStr()) * collateralDamage()) / 100);
if (iCollateralStrength == 0 && getExtraCollateralDamage() == 0)
{
return;
}
if (iCollateralStrength == 0)
{
iCollateralStrength = baseCombatStr() / 2;
}
iStrengthFactor = ((iCollateralStrength + iTheirStrength + 1) / 2);
iCollateralDamage = (GC.getDefineINT("COLLATERAL_COMBAT_DAMAGE") * (iCollateralStrength + iStrengthFactor)) / (iTheirStrength + iStrengthFactor);
int iModifier = getUnitInfo().getCollateralDamage() > 0 ? (100 + getExtraCollateralDamage()) : (iCollateralStrength * getExtraCollateralDamage() / 10);
iModifier *= (100 - pBestUnit->getCollateralDamageProtection()) / 100;
if (pCity != NULL)
{
iModifier *= (100 + pCity->getAirModifier()) / 100;
}
EDIT: Oh and Dan, I have changed that stuff again. I went back to re-add *collateralDamage() to the initial formula to be closer to how it all was originally done. Which probably means that iModifier should again start at 100 with the extra damage added on later. Really, gotta run the maths on this myself.
Ah silly me. Didn't realise that was the same bug.The defender bug should be in the changelog. Ah, there it is: "Fixed AI defender bug for newly captured cities."
Though I mentioned this in the Better BTS AI thread already, there was one overseas attack on me but it was pretty underwhelming. I could post the replay file if you wanted to see an example of the game flow with that change (this was v0.1 of their patch).As for AI player closeness, don't worry. We're on the same page, I also think it's a very important thing to fix so I will definitely be including it. But the AI war declaration code is quite complex, it's still possible there there are negative consequences to it. For example, testing needs to ensure that the fix doesn't mean that the AI would never declare on a faraway civ, so you can't be assured of never being invaded if you're on a separate landmass. I'm following the situation
I could post the replay file if you wanted to see an example of the game flow with that change (this was v0.1 of their patch).