=== Holistic Culture 0.32 ===
This mod is the cultural model from my mod, Mylon Mod, as of about version 0.32 of that mod. The only other change of this Mod is that the cultural levels all follow the same formula despite game speed: 50 - 250 - 1250 - 6250 - 32150 - 156250. This is an unfortunate limitation due to the inability to call the culture needed for each level in Python. Without the other cultural changes of my mod, a cultural victory will probably be nearly impossible, however since there is one more cultural level the net effect should not be too different.
Feel free to incorporate this into your own mod (with credit given, of course), or play as a standalone mod.
This is how the cultural model is intended to work currently (there may be bugs, as this isn't a finished release).
Brief version:
Culture spreads organically. As a city converts and the nationality of the city is mixed, the culture generated by the city is also mixed. This means border cities will spread culture to inner cities and those inner cities will eventually spread culture further into a civilization. It is important for inner cities to produce culture now because they are what keep the border cities more pure and able to better extert influence on contested land.
Culture also spreads by means of trade. Trade routes listed on a city (taken as export trades) are cities that are influenced by the selected city and given culture, again based on the nationality of the trade city. Trade is a means of spreading culture far and wide.
Also, citizens produce culture naturally. This presents that culture comes not from buildings, but from people. The buildings are really there to facilitate culture and spread it better, but it still ultimately comes from people.
Religions spread culture at an incredible rate. Each religion generates culture for the owner of the holy city. Religion is one way of spreading culture.
This also means that captured cities will generally not start at 0 culture.
Detailed version:
Culture is generated at to Culture Rate * ( 0.3 + 0.7 * Nationality% ) (So it generates at a rate of at least 30%) for the city owner and Culture Rate * ( 0.7 - 0.3 * (1 - Nationality%)^2 ) (so it caps at 70%) for everyone else.
Trade spreads culture at the rate of trade value * 2 * Culturerate / 100. A city generating 50 culture and trading 10 commerce per turn will export 10 culture per turn to the city it's trading with. This is split by nationality like above.
Each citizen adds +2 to the base culture rate.
Buildings that only generate culture for their original builder (most notably wonders) have their culture value subtracted from the calculations where culture is split according to nationality and instead their culture is added to the city directly for their owner. This should include even when the city is under foreign control.
Religions generate 3 culture per turn for the owner of the holy city. This number is multiplied as appropriate with any modifier the city may have.
Culture is assigned by the normal method (which cannot be stopped without the SDK, it seems), subtracted, and then reassigned according to this code. Also, the code manually reverses culture assignment to plots (which determines city nationality and plot ownership) and reassigns it according to the formula: [CultureRateOfSpecificNationality * (0.70 ^ ( Plot distance from city ) ) ^ ( 0.8 ^ (Culture Level - Plot Distance from city) ) + 1]. The old method was [CultureRate + 20 * (Culture Level - Plot Distance from city) + 1]. The radius for each civilization's culture in a city is tracked separately. The old method gives a bonus to the inner plots of a city with a wide influence, but this kind of bonus would override the maximum and minimums set forth in earlier formulas. In other words, a recently captured city of only 5% nationality would only further slip under enemy control because of the radius bonuses using the old formula.
To do:
The UI needs to be updated to reflect these changes. The amount of culture generated per turn is not correctly reported to the player.
A civilization's ability to control territory and flip cities only extends to the reach of it's own cities. As much as one may have a cultural dominance over a remote city, the city will not flip. This needs to be changed.
Add more means of spreading culture abroad. Possibly by making trade more valuable culturally through adjusting the formula, adding buildings that amplify the trade culture affect, or some other means.
Change the formulas until a nice balance is reached. Ideally, a player should be able to achieve a "cultural victory" by converting enough cities across the globe to achieve a domination victory. This would totally eliminate the need for the arbitrary cultural victory and instead give it a more meaningful feel and a less "all or nothing" approach.
Maybe change some features of how culture is tabulated or include means of spending culture. One bothersome aspect of the game is that with how culture is accumulated, the amount of culture generated needs to be increasingly inflated for civilizations to have any chance of converting an old culturally established city. This might be able to work if buildings had a multiplicative modifier effect instead of an additive modifier effect. (That is, two cathedrals would yield a 125% bonus instead of a 100% bonus, a third would yield a 237.5% bonus instead of a 150% bonus) Other ideas include making plot culture entirely based on current culture rate (and not have it accumulate), which would support the rapid spread of radical ideas but trivialize old influences.
This mod is the cultural model from my mod, Mylon Mod, as of about version 0.32 of that mod. The only other change of this Mod is that the cultural levels all follow the same formula despite game speed: 50 - 250 - 1250 - 6250 - 32150 - 156250. This is an unfortunate limitation due to the inability to call the culture needed for each level in Python. Without the other cultural changes of my mod, a cultural victory will probably be nearly impossible, however since there is one more cultural level the net effect should not be too different.
Feel free to incorporate this into your own mod (with credit given, of course), or play as a standalone mod.
This is how the cultural model is intended to work currently (there may be bugs, as this isn't a finished release).
Brief version:
Culture spreads organically. As a city converts and the nationality of the city is mixed, the culture generated by the city is also mixed. This means border cities will spread culture to inner cities and those inner cities will eventually spread culture further into a civilization. It is important for inner cities to produce culture now because they are what keep the border cities more pure and able to better extert influence on contested land.
Culture also spreads by means of trade. Trade routes listed on a city (taken as export trades) are cities that are influenced by the selected city and given culture, again based on the nationality of the trade city. Trade is a means of spreading culture far and wide.
Also, citizens produce culture naturally. This presents that culture comes not from buildings, but from people. The buildings are really there to facilitate culture and spread it better, but it still ultimately comes from people.
Religions spread culture at an incredible rate. Each religion generates culture for the owner of the holy city. Religion is one way of spreading culture.
This also means that captured cities will generally not start at 0 culture.
Detailed version:
Culture is generated at to Culture Rate * ( 0.3 + 0.7 * Nationality% ) (So it generates at a rate of at least 30%) for the city owner and Culture Rate * ( 0.7 - 0.3 * (1 - Nationality%)^2 ) (so it caps at 70%) for everyone else.
Trade spreads culture at the rate of trade value * 2 * Culturerate / 100. A city generating 50 culture and trading 10 commerce per turn will export 10 culture per turn to the city it's trading with. This is split by nationality like above.
Each citizen adds +2 to the base culture rate.
Buildings that only generate culture for their original builder (most notably wonders) have their culture value subtracted from the calculations where culture is split according to nationality and instead their culture is added to the city directly for their owner. This should include even when the city is under foreign control.
Religions generate 3 culture per turn for the owner of the holy city. This number is multiplied as appropriate with any modifier the city may have.
Culture is assigned by the normal method (which cannot be stopped without the SDK, it seems), subtracted, and then reassigned according to this code. Also, the code manually reverses culture assignment to plots (which determines city nationality and plot ownership) and reassigns it according to the formula: [CultureRateOfSpecificNationality * (0.70 ^ ( Plot distance from city ) ) ^ ( 0.8 ^ (Culture Level - Plot Distance from city) ) + 1]. The old method was [CultureRate + 20 * (Culture Level - Plot Distance from city) + 1]. The radius for each civilization's culture in a city is tracked separately. The old method gives a bonus to the inner plots of a city with a wide influence, but this kind of bonus would override the maximum and minimums set forth in earlier formulas. In other words, a recently captured city of only 5% nationality would only further slip under enemy control because of the radius bonuses using the old formula.
To do:
The UI needs to be updated to reflect these changes. The amount of culture generated per turn is not correctly reported to the player.
A civilization's ability to control territory and flip cities only extends to the reach of it's own cities. As much as one may have a cultural dominance over a remote city, the city will not flip. This needs to be changed.
Add more means of spreading culture abroad. Possibly by making trade more valuable culturally through adjusting the formula, adding buildings that amplify the trade culture affect, or some other means.
Change the formulas until a nice balance is reached. Ideally, a player should be able to achieve a "cultural victory" by converting enough cities across the globe to achieve a domination victory. This would totally eliminate the need for the arbitrary cultural victory and instead give it a more meaningful feel and a less "all or nothing" approach.
Maybe change some features of how culture is tabulated or include means of spending culture. One bothersome aspect of the game is that with how culture is accumulated, the amount of culture generated needs to be increasingly inflated for civilizations to have any chance of converting an old culturally established city. This might be able to work if buildings had a multiplicative modifier effect instead of an additive modifier effect. (That is, two cathedrals would yield a 125% bonus instead of a 100% bonus, a third would yield a 237.5% bonus instead of a 150% bonus) Other ideas include making plot culture entirely based on current culture rate (and not have it accumulate), which would support the rapid spread of radical ideas but trivialize old influences.