I've heared there's a capitulation bug...

Joined
Jun 27, 2007
Messages
2,248
Location
Hamilton, Ontario
If they only have 2 cities they will almost certainly cause the capitulation bug if you do vassalize them. The bug will basically block any other civs capitulating to you due to a really small oversight in the capitulate code.

AIs take into account the power level of other civs not involved in the war, for some reason this includes insignificant civs that will have absolutely no impact on any war. The biggest problem lies in it even considering the vassals of a person its at war with.
Its usually a result of having extremely weak civs on the map and usually thats the result of capitulating civs you've smahed into the abyss. It's incredibly annoying and really, really stupid....
TMIT knows more than me on this though ;)

But DEFINATELY wipe them out.

Is this accurate? Has any changes made in better AI altered this behaviour?
 
I would not call it a bug, but more a bad implementation....

A AI in regular BtS will never consider capitulating ( will redline capitulation and awnser in the hover "We are doing fine on our own" ) if it has more than 2/3 of the power of the potential master or if has more power than the average of the alive civs. This looks sensible.... until the game starts having badly crippled civs ( like defeated vassals ), that makes the power average far lower ( simple averages, like the one that Firaxis used in this part of the code, are very sensible to extreme values ), hence making extremely hard to vassal more people without cripling them too, that worsens the problem even more.....

That is why a lot of people advocate not acepting small vassals ;)
 
Bug aside another thing is that civs seem to capitulate much more readily in 3.17 than in 3.13, i thought they had the balance perfect in 3.13 on that front, i find people seem to give in too readily now
 
Perhaps the part that compares against all other alive civs should be a comparison against all other civs that aren't vassals.
 
I agree with r_rolo ... bad implementation. Average is a good idea for the first vassalization, but after that it gets less meaningful. I think a better version would be to take the average ignoring those civs who are already vassals.

With this though, the average bar gets a little higher as more civs become vassals ... in 3.13 civs kept fighting if they had 3/4 * average, which is why civs held out longer (its now just average). I think it makes sense to go back to a fraction of average, I'll try 4/5 and see how that feels.
 
Well, jdog, I would not cut vassals completely, but I would definitely make their power less valuable in terms of the average calc ( maybe cut it by half or any other factor and add it to the master power and then calculate the average of the free civs power? ), because vassals are not always meaningless in terms of warfare ( I've had games where my vassals combined power was bigger than mine and with them making most of the dirty work, due to geographical considerations ) and pushing them out of the equation would make huge distorsions in that kind of situations.

That or get a more center-weight average formula and continue using the alive civs...
 
For RevDCM I think it would be best to cut vassals, minors, and rebels entirely from the calculation.
 
The current formula generates an average power value that is considerably lower than the actual effective average power in the world.

Eliminating all vassals from the calculation is one possible solution. We'll call the value it would generate as an average X.

Adding a fraction of vassal power to its master will generate an average that is slightly higher than X. In other words, where the vassals don't have effective power it will distort the world in the other direction slightly, making capitulation slightly more likely.

I think what we really want to have here is the overall average power of independent actors in the world, if that makes sense. The people who are still movers and shakers, who are sources of protection and people to be protected against. In that respect vassals don't really count on their own, but should contribute some to the power of their master, who is still an independent agent.

My proposal would be something along these lines: Capitulated vassals have 1/N (1/3, perhaps- this value would need to be tweaked) their power added to their master's for purpose of this calculation, and should otherwise be discounted (iow they don't count in the total number of civs for purposes of taking the average- they are wholly subsumed into their masters). Voluntary vassals, however, should get a different formula, IMO, since they can become independent actors again. In fact I would just leave it alone, with voluntary vassals. Part of me wanted to say have them count as 3/4 of their own civ and 1/4 added to their master, except of course that when calculating an average that's the same thing as just not doing anything.

So the average power calculation would be:
(Sum(Free Civ power) + 1/3*Sum (Capitulated power) + Sum (Voluntary power))
------------------------------------------------------------------------------------------
Number Free Civs + Number Voluntary Vassals​
 
That is a pretty much what I was thinking on ( I would probably do 2/5 instead of 1/3 , though ), but even that can lead to problematic situations when there are small civs that aren't capitulated vassals ( either free or voluntary vassals ). I still think that a more normalized "average" would be in order, but that requires testing ;)
 
Well, if there's a small civ that is free and on its own, then it is something that the target Civ could be looking at saying 'if they can do it, so can we!' or even 'hey, they look small enough to bully around later...' Certainly it would be an improvement, in any case- while having a small civ around might skew the capitulation chances from where we think they should be, it doesn't mean that the act of capitulating a civ will make another civ's capitulation less likely in the long run.

I suppose it would mean that if you knock a civ down to 3 cities you would really want to either finish it off or vassal it, though. Leaving it free willed and that small would also be a drag on the average.

Of course, another possibility is to not use average at all, or tweak it in another way. Two possibilities: use the median instead (a small civ will still be a drag but how small it is will no longer matter) or calculate an average or median, pick a threshold, and then eliminate from consideration any civ whose power is below that threshold, and then recalculate the average. For instance, let's make a threshold of 1/5. Our Civs have as power 380, 700, 1500, 2500, 3000, 3400. Average power is 1913. 1/5 of the average power if 384ish. Now we ignore the 380 Civ and recalculate the average, and our average power for purposes of capitulation is now 2220- still dragged down by the 700, but we're discarding the 380 as being essentially too far out of range.

1/5 is probably too small for this purpose.

(The median in the case of those civs would have been 2000.)
 
On vassals (capitulated or otherwise) Isn't the vassals power already considered to be part of the Masters power?
If so, we'd be counting the vassals power twice if it were added to their masters.

On the rest, I think KISS applies. Don't worry so much about the (comparably rare) situations in which there is a tiny civ not a vassal to anybody despite Feudalism being around; it will be either wiped off the map or become a vassal soon enough. And don't worry about a voluntary vassal with a lot of power, if it becomes high enough chances are it will break free soon enough away.
 
Basically exactly one of the suggestions in this thread. The average calculation averages over the "free actors" in the game (non-vassals and free vassals), then counts 40% of capitulated vassals power in with their master.

The second change was to allow a civ to feel like it still had a fighting chance if it was above 80% of this average power threshold (100% before). This setting is closer to what was in 3.13 (75%).
 
OK, I think this "bug" may be a myth. I was sceptical before because I had never seen it before, but now I've seen things directly contradicting it. In my last game, which was better AI 0.60, there were two civs with one city each. One was a colony that lost a city to culture flip and the other was a one city capitulated vassal. There were several capitulations happening after those one city civs existed. One had five cities and the other was actually the master of the one city capitulated vassal. Rome had America as a vassal but after taking about half of Romes cities they capitulated to me, releasing America the single city vassal. If America and Byzantium with their one cities were bringing down the average like has been implied, then Rome would have never capitulated. Also the Inca were a Roman vassal with five cities and they were ready to capitulate right after Rome did, and there was Mongolia capitulating to Egypt.
So either this bug never existed or some change in Better AI from 0.60 or earlier already changed how it worked.
 
Believe me, it is not a myth.My SGOTM team ( specifically me and Niklas ) studied the relevant code for SGOTM 8 ( we were trying to make a cap chain ;) ) And BBAI had not made changes in that code before this thread, so I can only say that the situation in your game could be less extreme than you are painting ( there seems to be a lot of civs in your game , that obviously dilute the low power of the refefered actors. And civs with a extremely high power have a even more drastic effect in the the average power than civs with low power , so that is also a factor to have in mind )

Anyway jdog seems to not agree with you, given that he changed the code for this 2 versions ago ;)
 
The base game also has the amount needed to capitulate reduced if the target is a "land target" of another nation at war with it.

I like the idea of removing vassals from consideration in this check. Or possibly allowing them to count a fraction of their power toward their master, but removing this "land target" check, because that essentially allows weakling civs that do nothing to influence cap chances.

Although to be fair, I'm not certain if such changes would strengthen the AI. IMO, the AI is more dangerous when it avoids taking capitulations and ends up HUGE, since the typical vassal does not have good tech for long or a high enough unit prob (or war planning) to be a serious threat in war. Without re-working the AI-AI vassal teamwork, it'd be hard for an AI-vassal to operate anywhere near the capability of an AI by itself with the same land.

I don't have a good answer here, but IMO it's probably at least best if the vassal averaging thing wasn't such a prominent part of war planning.
 
Although to be fair, I'm not certain if such changes would strengthen the AI. IMO, the AI is more dangerous when it avoids taking capitulations and ends up HUGE, since the typical vassal does not have good tech for long or a high enough unit prob (or war planning) to be a serious threat in war. Without re-working the AI-AI vassal teamwork, it'd be hard for an AI-vassal to operate anywhere near the capability of an AI by itself with the same land.

I agree. I think capitulation is rarely a better move than just finishing the civ off.
 
Back
Top Bottom