Lists of proposed changes to income simulations +misc

I have been experimenting with income simulations since it tends to give me 60% wealthy population. I got some ideas while looking through disposable income tab, with some thoughts regarding poverty & unemployment.

Summary of adjustment lists

  • Wage-to-low/middle-income links now have a second factor - Unemployment. High unemployment will make wages meaningless.
  • High poverty will lead to the poorer elderly.
  • The retired relying on private healthcare will become increasingly poorer.
  • Several wide & strong income boosts are now considerably weaker. Especially tax cuts will have smaller impacts on income since it was so easy for them to exceed the tax paid.
  • Slightly higher taxation income loss.
  • and misc. changes for flavor.

Here’s the results.

Example A is a very stratified country. Wage level is mediocre at best and unemployment is sky-high 72%. The only welfare is Food Stamp but the poor may benefit from religious institutions since the government is handing out very generous grants to them. It taxes its people really small (25% flat tax) but you can’t expect any state-funded public program except for scientific ones. However, as you can see from the pic above, it has a massive wealthy class with minimal people in relative poverty. Something you wouldn’t expect for such countries.

But, with my income sim changes, it becomes properly polarized. Many of them are still living decently thanks to faith schools, which are cheaper than non-religious private schools, with the hyper-riches at the top. The poor are having hard time paying their education, healthcare, and housing expenses on their own, with almost guaranteed poverty after retirement. Wage level isn’t that bad but it’s meaningless as the poor can’t find any job at this high unemployment.

Example B has a government that tries to redistribute the wealth and provide strong & wide social security net. You may not like it if you earn a lot of money since it has a very progressive tax system with 60% statutory income tax rate & additional tax on the wealthy. It also funds a wide variety of public programs (except for the rail :P) and intervenes in markets to keep wages high and maximize employment, though the latter wasn’t that successful (42% unemployment). Thanks to all these efforts, there’s virtually zero person in poverty & a large number of the wealthy, who are content with the gated community policy.

With my adjustments, the curve turns into something similar to normal distribution. 95% people are in the middle class. There’s relatively less wealthy citizens compared to the example A and it makes sense. The middle income voters aren’t that happy with tax rates but the government keeps them happy with other means, which are definitely not just the gated community. While high level of wages doesn’t benefit all the poor people because of unemployment, it does boost their income in general unlike the case of example A.


Lists of proposed changes

Major Changes

HostName TargetName Equation_old,inertia Equation_new,inertia description
PovertyRate Retired_income none 0-(0.24*x),16 while there’s no poor retired subgroup, giving general income drop to all the retired would be enough to make some of them poor for not having a decent private pension. Currently the retired always get their private pension benefits even if most of the people are in poverty and thus they are mostly unable to afford it.
PrivateHealthcare Retired_income_fixed none 0-(x^0.5)*10000,4 another link introduced to make the retired more poor in general. may need to tone it down a bit.
Wages _LowIncome -0.25+(0.5*x) -0.25+(0.57*x)*_inv_Unemployment low income will be more vulnerable to unemployment. unemployment of 12% or higher will make the equation harsher compared to the old one. super high unemployment will effectively neutralize the impact of wage to low income.
Wages _MiddleIncome -0.13+(0.26*x) -0.15+(0.4+_inv_Unemployment)*x*0.27 middle income will be relatively less vulnerable to unemployment. unemployment of 29% or higher will make the equation harsher compared to the old one. high wage will have an impact even if unemployment is super high.
+made this a bit steeper to boost middle income in general. though they will still become increasingly poor if wage or unemployment isn’t favorable to them.
EnterpriseInvestmentScheme _HighIncome 0+(0.12*x) 0+(0.06*x) since this is a tax cut, too big income boost looks awkward.
EnterpriseInvestmentScheme SelfEmployed_income 0.01+(0.09*x) 0.01+(0.06*x) self-employed income boost is way too strong in this game.
FaithSchoolSubsidies Religious_income 0+(0.08*x) 0+(0.03*x) way too large and wide income boost. it doesn’t take that much to turn FSS into UBI. FSS income should be something comparable with private school costs, in my opinion.
FoodStamps Equality 0.02+(0.08*x) Poor_perc*(0.08*x)+0.02 changing ‘Food Stamp’ into more residual welfare by introducing poor membership to the equations. no substantial osillation was observed in my test runs.
FoodStamps _LowIncome 0.03+(0.04*x) Poor_perc*(0.08*x)+0.06 changing ‘Food Stamp’ into more residual welfare by introducing poor membership to the equations. no substantial osillation was observed in my test runs.
FoodStamps PovertyRate -0.03-(0.12*x) Poor_perc*(-0.24*x)-0.06 changing ‘Food Stamp’ into more residual welfare by introducing poor membership to the equations. no substantial osillation was observed in my test runs.
FreeBusPasses _LowIncome 0.01+(0.04*x) DELETE turned ‘Free Bus Passes’ into elderly welfare. also its income boosts were so huge compared to others.
FreeBusPasses Retired_income_fixed 250+(2000*x) 50+(600*x) turned ‘Free Bus Passes’ into elderly welfare. also its income boosts were so huge compared to others.
HybridCarsInitiative Environmentalist_income 0+(0.05*x) 0+(0.01*x) another waaay too large & wide income boost.
MarriedTaxAllowance Religious_income 0.05+(0.05*x) 0.005+(0.025*x) too large for a tax cut. plus to that, to be fair, parents income boost instead of religious one might be better.
MicrogenerationGrants Environmentalist_income 0.02+(0.05*x) 0.01+(0.03*x) another waaay too large & wide income boost.
MilitarySpending StateEmployees_income_fixed -1000+(6500*x) -1000+(x^0.65)*3500 made state employees income boosts less effective at high slider scale in general.
MortgageTaxRelief _MiddleIncome 0+(0.09*x) 0+(0.02*x) too large for a tax cut.
HealthTaxCredits _HighIncome 0+(0.06*x) 0+(0.03*x) too large for a tax cut.
HealthTaxCredits _MiddleIncome 0+(0.08*x) 0+(0.02*x) too large for a tax cut.
SchoolTaxCredits _HighIncome 0+(0.06*x) 0+(0.04*x) too large for a tax cut.
SchoolTaxCredits _MiddleIncome 0+(0.08*x) 0+(0.04*x) too large for a tax cut.
PoliceForce StateEmployees_income_fixed -2000+(8500*x) -2000+(x^0.55)*4500 made state employees income boosts less effective at high slider scale in general.
RentControls Capitalist_income -0.09-(0.04*x) -0.01-(0.02*x) not sure why capitalists income in general should decrease with rent control. toned down instead of scrapping this.
RentControls _HighIncome none -0.05-(0.04*x) added wealthy income loss to keep the total income loss at a similar level.
SmallBusinessGrants Capitalist_income 0+(0.05*x),4 0+(0.02*x),4 not sure why capitalists income in general should increase with small bussiness grants. as far as I know there’s already a modifier for capitalists with self-employed membership so they are more likely to be a capitalists anyway. toned down instead of scrapping this.
SmallBusinessGrants SelfEmployed_income 0.01+(0.15*x) 0.01+(0.08*x) I understand that SMG is kinda expensive policy but its income boost is too large & broad.
StateHealthService StateEmployees_income_fixed -150+(5350*x) -150+(x^0.9)*4350 made state employees income boosts less effective at high slider scale in general. gave less income drop at higher scale to health service workers since it’s a really expensive policy.
StateSchools StateEmployees_income_fixed 0+(6500*x) -500+(x^0.7)*5500 made state employees income boosts less effective at high slider scale in general. gave less income drop at higher scale to teachers since it’s a really expensive policy.
  • Additional Changes on Self-Employed & Unemployment
HostName TargetName Equation_old,inertia Equation_new,inertia description
SelfEmployed_perc Unemployment none -0.24*(x-0.05),2 since I made unemployment more punishing, added another tool to fight unemployment. this might need to be stronger I guess. (-0.05 is there for debug)
MinimumWage SelfEmployed none -0.03-(x^2)*0.1 made self employed more picky.
MinimumWage SelfEmployed_freq none -0.2*(x^5),4 made self employed more picky.
MinimumWage SelfEmployed_income none -0.03*(x+0.2) just a small income drop for more plausible depiction.

Minor Adjustments

HostName TargetName Equation_old,inertia Equation_new,inertia description
OilPrice Motorist_income_fixed 2000-(4000*x) -500-(3000*x),2 it seemed bit weird that oil price can boost motorist income by a lot
PrivateHealthcare _LowIncome_fixed 0-(1100*x),4 0-(1800*x),4 slightly more costly private healthcare
PrivateHealthcare _MiddleIncome_fixed 0-(2200*x),4 0-(2800*x),4 slightly more costly private healthcare
PrivateHealthcare _HighIncome_fixed 0-(3600*x) 0-(4000*x) slightly more costly private healthcare
PrivateHousing _LowIncome 0-(0.17*x) 0-(0.10*x) it’s kinda weird to see the poor literally spending more than the middle class for their houses. even those who own their houses will still have some costs I guess.
will discuss in the separate comment below addressing housing policies/sims in general.
PrivateSchools _LowIncome_fixed -1000-(x^1.2)*3000 -500-(x^1.2)*3000 the poor will send their kids to state schools or more cheaper ones if available so I toned this bit down.
PrivateSchools _MiddleIncome_fixed -4000-(x^1.5)*6000 -3000-(x^1.5)*6000 even the middle class could prefer state schools if private schools are so few and expensive.
AlcoholTax _All__income_fixed none -500*(AlcoholConsumption*x) just a small income drop for more realism.
AlcoholTax _LowIncome_fixed none -500*(AlcoholConsumption*x) just a small income drop for more realism. intended this to be more skewed toward the poor.
AntibioticsBan Farmers_income -0.1-(0.23*x) -0.08-(0.16*x) not sure why it’s so harsh. it makes this policy sounds like effectively banning factory farming.
ArmedPolice StateEmployees_income_fixed 0+(4200*x) 500+(2200*x) smaller income boosts for state employees in general since there’s too many of them.
ArmedPolice Unemployment 0-(0.04*x) 0-(0.02*x) it’s a good policy even without emloyment. also it sounds rather unrealistic compared to other anti-unemployment measures.
FlatTax _HighIncome 0-(0.06*x) 0-(0.07*x) slightly more taxation loss.
FlatTax _LowIncome 0-(0.16*x) 0-(0.18*x) slightly more taxation loss.
FlatTax _MiddleIncome 0-(0.14*x) 0-(0.16*x) slightly more taxation loss.
IncomeTax _HighIncome 0-(0.15*x) 0-(0.18*x) slightly more taxation loss.
IncomeTax _LowIncome -0.03-(x^2)*0.1 0-(x^2)*0.12 slightly more taxation loss. removed -0.03 since progressive tax system tends to create quite a lot of tax-exempted people (who are mostly poor).
IncomeTax _MiddleIncome 0-(0.14*x) 0-(0.16*x) slightly more taxation loss.
SolidarityTax _LowIncome -0.03-(x^2)*0.02 0-(x^2)*0.03 removed -0.03 since progressive tax system tends to create quite a lot of tax-exempted people (who are mostly poor).
TobaccoTax _All__income_fixed none -1000*(TobaccoUse*x) just a small income drop for more realism.
UniversityGrants Young_income_fixed 500+(2100*x) 600+(3200*x) youth is quite a small group and it sounds rather small for tution grants.

Misc. Changes

HostName TargetName Equation_old,inertia Equation_new,inertia description
banwomendriving Motorist_freq -0.2-(0.3*x) -0.1*(2+x)*CarUsage 35% motorists rate went down to 5% when car usage was at 70%. made it more realistic.
Punitivewealthtax Equality none 0.15*(x^1.5) though I find Punitive Wealth Tax to be kinda strong, it’s weird this doesn’t affect the Equality. also, since I’ve effectively removed equality boost from Food Stamp, there needs to be more equality boosting alternatives.
ArmedPolice StateEmployees_freq 0+(0.03*x) 0+(0.01*x) way too high state employees membership.
Religious_perc Charity 0+(0.12*x) 0.36*(x^3) just a try. not an important one.
SolidarityTax Wealthy -0.07-(x^2) -0.2*(x^2) not sure Solidarity Tax will really cause -107% approval drop. really?? I guess it’s meant to be -0.07*x^2 but made it a bit more punishing.
StateRail StateEmployees_freq 0+(0.08*x) 0+(0.05*x) way too high state employees membership.
TechnologyColleges StateEmployees_freq 0+(0.04*x) 0+(0.02*x) way too high state employees membership.
UniversityGrants StateEmployees_freq 0+(0.13*x) 0+(0.07*x) way too high state employees membership.
PetrolTax Motorist_income_fixed 0-(5050*x)*CarUsage 0-(5050*x)*_inv_ElectricCarTransition shouldn’t this be linked to electric car simulation?
ChildBenefit Equality 0.0.5+(0.15*x) 0.05+(0.15*x) typo

Changes under Testing

HostName TargetName Equation_old,inertia Equation_new,inertia description
AutomationTax Capitalist_income 0-(0.03*x),8 none same as rent control or small business grants.
AutomationTax _HighIncome none 0-(0.04*x) same as rent control or small business grants.
GovernmentSubsidiesForUnions TradeUnionist_income 0+(0.09*x) 0+(0.03*x) income boost is too large & broad.
InternetCurrencyTaxation Liberal_income -0.01-(0.02*x)*InternetCurrencyAdoption,4 -0.01*(x+0.1)*InternetCurrencyAdoption,4 liberal is too wide to tax like this.
InternetCurrencyTaxation SelfEmployed_income -0.02-(0.05*x),4 -0.01-(0.03*x),4
OrganicSubsidy Environmentalist_income 0+(0.05*x) 0+(0.01*x) income boost is too large & broad.
RuralDevelopmentGrants _LowIncome 0.02+(0.13*x) 0.01+(0.08*x) sounds bit high for not that expensive policy.
UnemployedBenefit _MiddleIncome_fixed none 5500*(Unemployment^4)*x doesn’t have that much impact but since super-high unemployment can lead to middle income crisis, it sounds legit to grant a bit of unemployment benefits if unemployment is super high like above 70%.

some test feedback

  • Automation Tax may need harsher income loss. With unemployment-to-taxloss change or my LIS mod, which does effectively something similar, losing automation progress wasn’t that painful.
  • Union Subsidies policy is real cheap so it may be okay to have even less income boost. it even has a positive link to wage so it’s likely to increase their income anyway.
  • not sure Rural Development Grants should benefit the poor instead of farmers. Nonetheless, in any case, 0.01+(0.09*x) sounds like an adequate level of bonus. the old one was so high that it was possible to spot some poor-middle income reversals.

+expected question) why u don’t just make a mod and upload it on the Workshop?
Answer) Several major changes are simulation-to-income links. I can for sure write overrides.ini for them but somehow they stop working after first few turns (works only at the first turn in severe cases). So They can’t be modded via overrides. That’s why I’m writing proposals here instead of meddling with moddings.

2 Likes

#,StateHousing,default,,,13,18,9,9,WELFARE,,-150,1100,0+(1.0*x),,16,0,0,0+(1.0*x),,,#Effects,"Capitalist,-0.02-(0.1*x)","Poor,0.05+(0.05*x)","Equality,0.03+(0.21*x)","Socialist,0+(0.20*x)","PovertyRate,0-(0.17*x)","_LowIncome,0+(0.17*x)","_global_socialism,0.015+(0.02*x),12","_MiddleIncome,0.08*(x^2)",,,,,,,,,

#,PrivateHousing,WELFARE,0.5,0,1,UNKNOWN,icons_privatehousing,#,"StateHousing,-1.25*(x^1.3),4","GDP,0+(0.5*x),4",#,"_LowIncome,0-(0.17*x)","_MiddleIncome,0-(0.08*x)","Equality,0-(0.1*x),4","_global_socialism,-0.02-(0.06*x),8",,,,,,,,,,,,

I’ve just noticed that StateHousing & PrivateHousing have roughly the opposite income effects. Seems legit at a glance, but this effectively doubles the income boosts of State Housing. As private housing is supposed to kill the private housing, I see this redundant.

Plus to that, Rent Control does boost low income regardless of the size of private housing. This might need to scale with it but undecided.

Therefore, housing costs will require changes below in my opinion.

HostName TargetName Equation_old,inertia Equation_new,inertia description
StateHousing _LowIncome 0+(0.17*x) DELETE shrinking private housing will replace this effect as state healthcare & schools do.
StateHousing _MiddleIncome 0.08*(x^2) DELETE shrinking private housing will replace this effect as state healthcare & schools do.
PrivateHousing _LowIncome 0-(0.17*x) 0-(0.10*x) I understand that the middle class are more likely to have their own houses. But since A) the poor are going to get cheaper houses and B) the middle class homeowners are still likely to have mortgages, I find -17% at max to poor income sounds rather too high.
PrivateHousing _MiddleIncome 0-(0.08*x) -0.08+(1-x)^2*0.08 tried to make middle income stick with private housing when state housing is at low level.
1 Like

Decided to upload a mod for this! For the reasons written in the original post, it does not fully include all the changes in the list and some have lost inertia to make it work. But I assume these limitations won’t make any significant differences.

Still, I hope more of the proposed adjustments in the list to make into the game. Wealthy voters taking up to 60% of the population still breaks my immersion :/.