Tavis, let me start off with much thanks for your close ties with
the community, and for being so upfront about corruption thoughts!
Let me review the goals and effects, and make a suggestion...
Principles of Corruption and of any Design Changes/Fixes
* First do no harm
Fix the existing palace rank bug and RCP exploit, but don't 'overhaul' things.
* Corruption is a good thing
Corruption is a hugely important game element, whether people like it or not

It breaks a positive feedback loop leading to runaway wins, where the biggest and
toughest and most aggressive civs would continuously increase their capacity to wage war
* Corruption can be annoying the the player and can hinder AI effectivness
For a game of empire building, to see new cities in "your subcontinent" that are
essentially useless is no fun. The AI doesn't care about fun but its hard to know
how to manage cities that are corrupt. They can't easily tell when a courthouse would
fix things or whether they should irrigate to the hilt and hire taxmen.
* The hope (and implementation) of some device whereby once corrupt cities are
redeemed is highly gratifying (and effective to the extent that its placement is good)
The original Forbidden Palace and its ability to turn things around, and to create a
second 'core' of productive cities that you now build up, is a great system.
I don't thing there's any real disagreement with these points within this thread.
The question is in the details of implementation, so lets look at more detailed
objectives, given as pairs of axioms and conclusions.
* Adding a Forbidden Palace should never increase corruption in ANY city
--> A single ranked list ordered by distance to nearest palace is insufficient.
Why? A productive city a given distance from the palace could be quite lower in ranking
when the FP has several cities more closeby
* Adding a Forbidden Palace should offer distinct help to cities near it
--> A single ranked list ordered by distance to true palace is insufficent
We're partly seeing the effect of this in v1.12 (though bug is not identical). Having
a brand new FP and seeing cities right next to it with 50% corruption is disheartening.
If you agree with the two axioms above, the combined conclusion is:
No single ranked list can guarantee a new FP will decrease corruption in any given city.
The next set of principles and conclusions depend on what your design goal is:
- If you want/expect the FP/SPHQ/etc to be full equivalents to the palace
--> Corruption in a city is a 'local' phenomenon, not dependent on what's up 'further out'
--> Have 'n' separate rank order lists, and consider key distance as to-nearest-one
--> If you're not precomputing ordered lists, Sir Pleb nailed it with the line:
if this.ClosestPalace() <> pLoopCity.ClosestPalace() then Continue
- If you want the building of a FP/SPHQ to provide a generic corruption boost in all
cities, but nothing special for the cities near the FP itself
--> FP is some magic increase in govenment efficiency but its location is irrelevant
--> FP would solely increase the OCN (and optionally reduce that city's corruption)
- If you want the FP to have a regional effect, but less powerful than the palace itself
--> A corruption 'boost' but only up to to ~50% not ~100%, over a region
--> post-correct the cityCorruption value by a value of, say 2 for FP and 3 for SPHQ
- If you want the FP to have strong local regional effect, but less than the true palace
--> if ClosestPalacer() <> TruePalace() then: Use an effective OCN = Real OCN / 2
--> Full strength corruption reduction in a multi-ranked list, but for fewer cities
Of these, the first makes the most sense to me,
which makes this post a long-winded way
of saying that SirPleb's change would result in distinct lists for each palace that would:
avoid an FP build ever increasing corruption, provide a local/regional second core
in a way that makes the smallest possible change to the code base.
The only major objections I'm seeing to this solution are these two:
i) the AI doesn't know how to place a Forbidden Palace well and it gives the human too
big an advantage.
ii) The Palace jump, which the AI never does, is exploitative and this doesn't "fix" it
With respect to point i, after being in dozens of succession games I've NEVER heard
people lament how disappointing the game became after the FP turned them into a monster.
Of COURSE the human is going to do a better job, in fact, deciding WHEN and WHERE is
a major key element to becoming a good player, and a key challenge of the game. (The
ability to jump the palace however, takes away the concern and skill. Plop one next door
to capital and hop your palace around wherever you like later to fix poor choices)
That can be compensated if it isn't already by AI suffering small small amount less
(say a 0 to 30% OCN increase, depending on difficulty) to account for their less than
perfect FP placement.
On point ii, there are several possible solutions. 1) Eliminate abandoning the city with
your capital. 2)
Whenever a palace shift occurs by capture or abandonment, throw the
government into a period of anarchy. 3) Have the anarchy only come with an abandonment.
(I don't follow discussions on Palace Jump, so there are probably other concerns and
options here)
Looking forward to the new patch anyway, and good news on the regular updates!
Charis
PS Sheesh! A guy goes on vacation for a week and a half and comes back to find a 12 page
thread on corruption started by the developers!
