After some analysis and thinking and experimenting, there are two points which I think must be addressed.
Distance corruption in C3C beta 1.12
First, by focusing on rank corruption, distance corruption must not be neglected. And there are some indeed important changes made to that. To check how the system works, I did the following experiment with two cities (capital and another city), tiny map.
1) Varied distance from Palace to the second city to get corruption.
2) Varied government
3) Varied difficulty level
Some data are posted in the end as plots. The following were conclusions that were made:
1) For distance corruption purposes, the distance from the Palace is measured in increments which are seen in Plots 1 and 2. The distance is more conveniently tabulated as a grade (to make it different from rank).
grade distance
1 2
2 3
3 4-5
4 6
5 7
6 8-9
7 10
8 11
9 12-13
10 14
11 15
12 16-17
13 18
14 19
15 20-21, etc.
Distance corruption is proportional not to the distance but to this grade to encourage OCP and flexibility in building cities. Same goes for RCP 8-9, 12-13, etc.
2) Distance corruption is calculated as percentage of total corruption.
3) Difficulty level has no effect on distance corruption.
4) For each grade at distance less that half of map size, distance corruption is increased by 3.3% in Democracy, by 4.0% in Republic/Feudalism/Fascism/Monarchy (R/F/F/M), and by 6.4% in Despotism. Also, in Despotism, Corruption reaches maximal 96% earlier. See Plot 3.
Rank corruption in C3C beta 1.12
Second thought is about rank corruption. If getting abstract from how to determine rank, it looks like having corruption proportional to rank or rank/2 is a bad idea. It rapidly reaches 95% even in rank<OCN layout even if production is as high as 20 shields. In another words, you get to 95% corrupt cities even if you did not reach OCN when distance corruption is added. The distance component is added to rank component (I don't know if there is more complex relationship in these), there is obviously either some typo in Tavis posted code or some misunderstanding. To check it out, I have done RCP9 ("grade"6) on a tiny map (default OCN 14 was changed to 7 by switching to Sid level). Knowing the distance component of corruption, and assuming that total corruption is sum of distance + rank corruptions, it is possible to calculate impact of rank corruption.
Results for tiny map size/Democracy are shown in plot 4 for Chieftain and Sid levels. At Chieftain, player has corruption increased by 2.26% for each rank. At Sid, loss is 4.54% per each rank.
To see the effect of OCN, similar study was then performed for Standard map size with OCN 20. Map contained plains modified to produce 25 shields/tile. Population 5 towns were used for overall production 150. 32 cities were placed and connected by roads to the capital. Results for Chieftain and Sid levels are shown in plot 5. For Chieftain, rank corruption increases before OCN at 2.28% per rank and soon after OCN, at 3.3%/rank. For Sid level, corruption increases before OCN at 4.5% per rank and after OCN, at 9.0%/rank.
It is evident that 75% maximum is not indeed the maximum because it has added 20% distance corruption component to give total 95% corruption. Thus, total corruption is apparently not asymptotically reaching some limit, it just continues to grow to some unlimited number. That is why corruption-fighting improvements have no effect. Corruption can be as high as 200% or 2000%.
The mostly striking is that rank does not depend on map size. This is indeed a thing which unbalances the game. Also, as it was noted before, rank corruption is the major component versus distance corruption at non-OCP built cities. Even in OCP-built cities it is rapidly overwhelming.
Is this intentional? Does it have to be fixed?
It seems reasonable that rank corruption coefficients have to depend on map size. Also, this results in extremely unbalanced game on higher levels. Not only cost of production is decreased for AI, but human player gets a huge corruption penalty. This penalty is unrelated to map size, however. It is also evident that playing on tiny/small maps is more easy than on huge maps mostly because of this.
For files and Excel spreadsheet with extensive description and numbers please e-mail me.