Corruption
Posted: Tue Jan 16, 2018 5:30 am
This wishlist revolves around two large problems with the current corruption system:
1) Output_Waste_By_Dist breaks without a government center
2) NoTradeSize and FullTradeSize server options depress early gameplay in pre-modern eras.
1) Output_Waste_By_Dist has no real method to cap it, and can scale indefinitely.*
The request is for an Output_Waste_Max effect value. This would place a cap on Waste, allowing prevention of situations where it might be /advantageous/ to remove government centers without breaking the game. (If you replace a By_Dist value with a large flat waste value when lacking a government center, the Waste_By_Dist will still eventually exceed it at extreme distances, making it worthwhile to remove all government centers in that case.)
Would instead be something like this (Note that I don't know where all the referenced waste_max would need to be included.):
*(Well, except for the trunk's scale by distance feature with OUTPUT_WASTE_BY_REL_DISTANCE. Note that a default factor of 50 to give it the same scale as the non-relative distance also prevents ruleset editors from controlling the scaling too: We can multiply effect values by 50 times easily, but dividing values into fractions cannot be done.)
2) Using NoTradeSize and FullTradeSize are great in late-game, where it prevents smallpoxing. But at the beginnings of games it can very easily be game-breaking because they block gold and bulbs needed for upkeep of improvements, research, and possibly units. I've not really any good ideas other than simply adding an effect that can be toggled, ie allowing it to not apply to despotism and maybe monarchy.
1) Output_Waste_By_Dist breaks without a government center
2) NoTradeSize and FullTradeSize server options depress early gameplay in pre-modern eras.
1) Output_Waste_By_Dist has no real method to cap it, and can scale indefinitely.*
The request is for an Output_Waste_Max effect value. This would place a cap on Waste, allowing prevention of situations where it might be /advantageous/ to remove government centers without breaking the game. (If you replace a By_Dist value with a large flat waste value when lacking a government center, the Waste_By_Dist will still eventually exceed it at extreme distances, making it worthwhile to remove all government centers in that case.)
Code: Select all
if (gov_center == NULL) {
waste_all = TRUE; /* no gov center - no income */
} else {
waste_level += waste_by_dist * min_dist;
if (waste_by_rel_dist > 0) {
/* Multiply by 50 as an "standard size" for which EFT_OUTPUT_WASTE_BY_DISTANCE
* and EFT_OUTPUT_WASTE_BY_REL_DISTANCE would give same result. */
waste_level += waste_by_rel_dist * 50 * min_dist
/ MAX(wld.map.xsize, wld.map.ysize);
}
}
Code: Select all
if (gov_center == NULL) {
if (waste_max == 0) {
waste_all = TRUE; /* no gov center - no income */
}
} else {
waste_level += waste_by_dist * min_dist;
if (waste_by_rel_dist > 0) {
/* Multiply by 50 as an "standard size" for which EFT_OUTPUT_WASTE_BY_DISTANCE
* and EFT_OUTPUT_WASTE_BY_REL_DISTANCE would give same result. */
waste_level += waste_by_rel_dist * 50 * min_dist
/ MAX(wld.map.xsize, wld.map.ysize);
}
}
if (waste_max > 0 && waste_level > waste_max) {
waste_level = waste_max;
}
2) Using NoTradeSize and FullTradeSize are great in late-game, where it prevents smallpoxing. But at the beginnings of games it can very easily be game-breaking because they block gold and bulbs needed for upkeep of improvements, research, and possibly units. I've not really any good ideas other than simply adding an effect that can be toggled, ie allowing it to not apply to despotism and maybe monarchy.