Here is the commit with my quick fix in the DLL code.for bow i removed setttler sea from carrack.
I wouldn't have guessed that this can be done in Python. Platy sure is crafty. Looks pretty easy to merge. Here's a link.Platyping has a python based mastery,
It should be easly merged.
Seems like it's mainly an improved Time victory. I had always assumed that it would end the game when a player reaches a point threshold or gets far enough ahead of everyone else. That would make more sense to me.Sevo said:Mastery Victory is determined ONLY at the end of the time-span of the game.
I don't see any in the standalone versions. But e.g. RoM/AND or C2C might have AI code.But tge thing with added vic types that the ai doesnt know them. Theres a dll mastery version, not sure how the ai deals with it.
Thanks for the offer. You've already been helpful by reporting AdvCiv/DotO issues in our private conversations. The bugs that I introduced I should better fix myself. The other – nonurgent – issues discussed in this thread anyone could collaborate on of course. Hard to say if and when I'll get to them on my own.F1rpo,
Let me know if i can assist in someway to debug it or anything.
Thanks – also for the helpful bug report and the suggestion.I can relate with wtha you're experiencing, as a game dev: just a random bug report can spark a prethora or little findings! Glad you spotted the issue and probably will fix it (although very uncommon), along with the other annoyances. Loving your work! It would be just perfect with the Mastery Victory mod imho!
super, thanks.Here is the commit with my quick fix in the DLL code
yes, he is a python civ4 maser.. Platy sure is crafty.
hehe me too...reaches a point threshold
humm...good luck scouting their enormous codeRoM/AND or C2C
always my friend, its the least i can do and contribute.Thanks for the offer.
with timeHard to say if and when I'll get to them on my own.
I only checked this version for BtS 3.17. This here is supposed to fix a bug with the spaceship; comprises code from Community Civ V and Quot Capita. Atomic Gamer link.in my first modding years i had the sevo mastery mod for quite a while. have you checked the sdk code? some versions came out .
Full-text search for "mastery" on CvPlayerAI.cpp and CvTeamAI.cpp: Nothing in C2C, one line in AND's CvPlayerAI.cpp. Woot. Of course there are other modpacks that include Mastery; but I'm not going to chase that rabbit now.humm...good luck scouting their enormous code![]()
The lists of Unit AI types in XML aren't exhaustive – the DLL may decide that additional AI types make sense for a particular unit, and would probably do so for Settler_Sea and Carrack. Setting a "NotUnitAI" type would work I think. Why does it happen – well, it doesn't anymore.so now for questions -
why is there problem with settler sea and explore sea?
i checked the xml and saw that only Carrack has this combo, why does it happen?
i changed the settler sea , would that have "fixed" this bug?
"For everything there is a season and a time for every purpose under heaven."with time![]()
totally...not worth it. personally like i said, i would only play the normal vics, mostly domination.but I'm not going to chase that rabbit now.
clearer now, thanks.he lists of Unit AI types in XML aren't exhaustive – the DLL may decide that additional AI types make sense for a particular unit, and would probably do so for Settler_Sea and Carrack. Setting a "NotUnitAI" type would work I think. Why does it happen – well, it doesn't anymore.In short: The AI won't normally upgrade Settler_Sea Carracks because Frigate isn't a better unit for transporting Settlers than Carrack. So BBAI added code that allows unneeded Settler_Sea Carracks to switch to other AI types – including Explore_Sea. I added code to allow unneeded Explore_Sea units to switch to other AI types – including Settler_Sea – and wasn't really aware of the BBAI code.
"For everything there is a season and a time for every purpose under heaven."
Thanks. It was easy enough to reproduce. I introduced that bug long ago when I turned Heal into Sentry-Heal. Fortunately, AI units aren't affected; still – this renders explore automation pretty much useless. So I guess I had better upload a fixed DLL in the near future.I'm having an issue with units on explore not healing. They stop and just stand in place forever.
I'll try to get you a save.
// advc.tmp: Disabled temporarily b/c of possible oscillation between UnitAI_SETTLER_SEA and UNITAI_EXPLORE_SEA
/* if (kOwner.AI_totalUnitAIs(UNITAI_EXPLORE_SEA) == 0)
{
if (kOwner.AI_unitValue(getUnitType(), UNITAI_EXPLORE_SEA, pWaterArea) > 0)
{
AI_setUnitAIType(UNITAI_EXPLORE_SEA);
AI_exploreSeaMove();
return;
}
}*/
Still needed unless you've merged this commit. But I think the much simpler temporary bugfix is fine.about this one - do we still need it? // advc.tmp: Disabled temporarily b/c of possible oscillation between UnitAI_SETTLER_SEA and UNITAI_EXPLORE_SEA[...]
It's probably the K-Mod change that removes the upper bound on the cities counted for maintenance (was 6 originally as far as I recall). That's a pretty crude change. I could well imagine that it needs to be adjusted to the map size or crowdedness. What would be a sane value for the number-of-cities maintenance of the 37th city? Distance maintenance is reasonable I hope(?).Wow. Maintenance is insane. New cities (in former enemy culture) are costing north of 30gp/turn.
Huge map, I'm only at 37 cities.
These problems do have a history. E.g. there's this BBAI commentOne more. It's been here a long time, (K-Mod? earlier?). Sometimes blockades aren't cleared off tiles. Annoying.
Should be pretty easy to test; I'll give it try.I have no idea what causes it. Possibly capturing a city that is being blockaded by a 3rd civ (who you are at peace with?).
That should be doable. Ideally, save/reload shouldn't affect the game state, especially for testing. But one could always have an XML setting "RECOMPUTE_BLOCKADES_ON_LOAD" or so. Of course I'd prefer a more proper bugfix.If nothing else, can you force it to recompute blockades on game load or something? You could save/restore to fix it
Tile culture accumulates over the course of a game; no way to reset and recompute that. Tile ownership (based on the culture percentages) should already get updated every turn. There are some odd rules though, like tiles remaining unowned for a few turns after city conquest.Culture has some oddities as well at times. They fix themselves eventually, but a recompute on that on load would be useful.
I have some hope that this is fixed on my end. I'll see if I can include the trade bugfixes in the next mini update of the DLL.Yeah, I'm still (on 0.96) getting cancelled trades which the AI will then renegotiate immediately. My Iron+Horse for 2 happys, he'll cancel and then accept again every 10t, and maybe throw in a couple coins he wasn't before.
You could also try disabling colony maintenance through AdvCiv\Assets\XML\GameInfo\Civ4WorldInfo.xml. A bit of a shame to disable vassals mainly to eliminate colony maintenance.Re:Maint. Partially my own fault. I've got vassals on (unusual for me) and I'm paying a huge amount of colonial maint.
Next game I'll turn vassals back off and see how it goes.
I think I'll give this a try. Since relations bonuses from Open Borders with faraway civs now tend to take much longer to build up, it could make sense to let the nearby bonuses not just increase faster but also up to a higher limit. For me, that higher limit is probably going to be 3. A higher limit for DP is also interesting, especially because this won't normally make it easier to get to Pleased – that's what was too easy in BtS. However, if relations from DP play a bigger role, then the AI behavior for signing a DP may have to become a bit more sophisticated. An AI civ that isn't threatened at all should require a one level higher attitude for signing and/ or should count the years spent in the pact more slowly. Likewise, an AI civ that actually benefits from a DP should be more willing to sign one and/ or count the years faster.I actually went through the leaderhead file and changed the bonuses for open borders to range from 2 - 4 and defensive pacts from 2 -4, depending on the close borders penalty and share war bonus. I never liked the concept that you are almost always penalized with your early trade partners because you also share close borders (up to a -4 penalty for close borders!). This arrangement effectively negated most of the open borders bonus for most leaders.
As a basic principle, it makes sense to me that civs have the best relations early on when they're close enough to trade (maybe via Sailing) but not close enough for a war of conquest. Like the Mesopotamian civilizations trading with the Indus valley. Among themselves, the Mesopotamians traded and fought wars; can't really have both in Civ, at least not in quick succession. Gotta have some early warfare though imo.I also thought it was ahistorical as many civilizations developed intricate and close relationships despite sharing a territory (see e.g. the Sumerians and Akkadians). I think maintaining open borders and sharing defensive pacts should allow substantial bonuses.
The system I came up with goes as follows: [...]
So you had already been playing with the changes to OB/ DP modifiers and earlier DP, and the AI still rarely became Friendly?I've been playing with these changes for awhile and I like it. Permanent alliances happen more often, which are fun to me. Just some things to think about.
i think so too.I think I'll give this a try. Since relations bonuses from Open Borders with faraway civs now tend to take much longer to build up