Happiness Balance Discussion

What if late-game buildings just straight-up solved specific unhappiness sources instead of giving heavy modifiers?

Like, what if police stations just straight-up eliminated distress in the city?
What if Stadiums removed boredom from the city?
Then you would only have to contend with Poverty, Illiteracy, Religion, War Weariness and Puppets.

Then, what if All level 3 tenets eliminated 1 additional source empire-wide?
All lvl 3 Freedom eliminated Illiteracy on Empire
All lvl 3 Order tenets eliminated Poverty on Empire
All lvl 3 Autocracy tenets eliminated unhappiness from Puppets

It sort of makes sense that Industrial and Modern would be a long period of crushing unhappiness problems. It was a period of rapid urbanization, crushing urban poverty, disease, and national awakening. Revolts, upheaval, and widespread dissatisfaction are hallmarks of that historical period. Then you can just sort of take the cap off happiness in a very permanent way in the end-game, since you should really just be racing towards your respective victory conditions at that point.

The only issue I can foresee with such a system would be that it reinforces an "end of history" narrative regarding the Atomic/Informatino era's endgame.
Late game unhappiness doesn't seem to be the issue most people are complaining about though, renaissance/industrial and even classical is when problems start
 
Late game unhappiness doesn't seem to be the issue most people are complaining about though, renaissance/industrial and even classical is when problems start
I've barely touched modern in my current 6-city tradition game, but I can already predict massive needs unhappiness as the progresses. I just hope that my external sources can cover me. Too bad they won't do anything about my skyrocketing biredom (and its effect on tourism).
 
I agree on all points.

For your second point, I'd add that the reference shouldn't just be hard for the player to manipulate, but stable in general, relative to small choices and changes in the game. It shouldn't fluctuate much between turns, whether it's empire-wide or global. Changing to empire-wide medians was intended to give the player more agency, but I think agency should come from the player's ability to meet the needs as demanded, not to change the demands themselves by influencing the balance of the entire empire. It's so much harder to conceptualize the effects on the median, and it changes with every decision, intentional or not, so it's nearly impossible to incorporate into strategy.

It's definitely true that this discussion involves a lot more math than I think most wanted to get into. But I'd argue that's actually a necessary "evil" in some ways. Even the simplest mechanics can have complicated mathematical effects that may not work as intended. Even the vanilla system required plenty of math and analysis to figure out what was the ideal strategy for dealing with happiness in relation to social policies and other mechanics. It was only through that analysis that loopholes and unintended play options were discovered like with India's vanilla UA. So no matter what system is chosen, it's important to ask some basic questions about how it affects gameplay, and I'm glad to see those questions being asked. Things like "what would happen if every city's yields were doubled?" or "What effect does annexing a city have on happiness."

And, counterintuitively, I think there are certain choices that will make the implementation of the mechanic slightly more complicated, but which make the overall gameplay effect simpler. Things like using proportion instead of absolute comparisons, and any other kind of normalization, I think are vital for the system to be flexible and less sensitive to differences of scale.

Is it at all possible that using a mean rather than a median might be easier to handle? The median allows the best cities to improve unbounded without regard for the worst, and I wonder if the mean would discourage those "forgettable" cities a bit more.
Gazebo tried first with the mean values, but chose the median precisely for being more stable, and because it completely removes the effect of capitals.
 
I will end the thread noting that the previous iteration of the system I thought was the closest we have gotten to ideal. It applied the early corrections it was meant to, happiness lowered fast enough to make me course correct, but not so get so low I fell into spirals. The improvement when I built a building was strong enough that it gave me that sense of agency. Yes the late game happiness it gave was a lot...but honestly I didn't care. I felt the system did what it needed to do...and by late game I have other things I am thinking about...which was just fine.
Are you also fine with balancing the game around removing all happiness effects that can be gained past... Renaissance? If happiness doesn't matter mid-late game, then none of those policies/corporations/city state rewards/great musicians or admirals/landmarks/etc that deal with happiness and needs, that are chosen with happiness in mind, really matter either. Ideological Pressure is also a non-issue with late-game happiness, and war weariness' effect is limited to food/production loss.

What's the point of all of these mechanics if late-game happiness is and is supposed to be a non-issue? You're better off stripping out all of them, except now you need to find a suitable replacement, since the choices, at least, were balanced with happiness needing to be a factor in decision-making.

Incidentally, I feel like there should be some sort of scaling for happiness with respect to GAP... or does 20-100 GAPpT from Happiness actually make a difference past the first 2-3 Golden Ages?
 
Last edited:
Are you also fine with balancing the game around removing all happiness effects that can be gained past... Renaissance? If happiness doesn't matter mid-late game, then none of those policies/corporations/city state rewards/great musicians or admirals/landmarks/etc that deal with happiness and needs, that are chosen with happiness in mind, really matter either. Ideological Pressure is also a non-issue with late-game happiness, and war weariness' effect is limited to food/production loss.

What's the point of all of these mechanics if late-game happiness is and is supposed to be a non-issue? You're better off stripping out all of them, except now you need to find a suitable replacement, since the choices, at least, were balanced with happiness needing to be a factor in decision-making.

Incidentally, I feel like there should be some sort of scaling for happiness with respect to GAP... or does 20-100 GAPpT from Happiness actually make a difference past the first 2-3 Golden Ages?

Your not wrong, and if we want to change or toss some of those mechanics, I wouldn't be opposed to discussing it.
 
I've decided to move on the 'repeatable project' concept - a 'Public Works' project, if you will, that will reduce the needs modifier of all needs in the city by -5% (WIP). The catch is that the cost scales with era AND the number of times you construct it in a city. So it becomes more and more production-expensive to do, but it will serve as a means by which players can dig out of a hole. If anyone wants to propose a better name and/or an icon, I'm all ears.

I'm also moving back to the global median, the difference between the global, player, and 50/50 is negligible, and I can save the memory/process time.

Also I'm going to do as @tu_79 requested and make the function proportional, so it will be current/need instead of current-need for calculating unhappiness.

TL;DR - improving scaling, reverting empire median experiment, adding agent-oriented task for players to dig out of unhappiness hole.

G
 
I like the idea of adding a bit more agency to dealing with unhappiness.
 
I've decided to move on the 'repeatable project' concept - a 'Public Works' project, if you will, that will reduce the needs modifier of all needs in the city by -5% (WIP). The catch is that the cost scales with era AND the number of times you construct it in a city. So it becomes more and more production-expensive to do, but it will serve as a means by which players can dig out of a hole. If anyone wants to propose a better name and/or an icon, I'm all ears.
Fine. This is a tool. A permanent one, but hopefully it can't be abused. It fits with the proposal of the processes, but instead a panic button, this opens up new strategies. Hope that it does not lead to excessively wide civs.

I'm also moving back to the global median, the difference between the global, player, and 50/50 is negligible, and I can save the memory/process time.
So far, so good.

Also I'm going to do as @tu_79 requested and make the function proportional, so it will be current/need instead of current-need for calculating unhappiness.
Really glad you saw it. Only a little more thought has to be put on how the modifiers are going to affect the results.
For instance, it is mandatory to avoid divisions by zero. World median efficiency can value zero, especially in the early game. A simple check would say that in this case, there is no unhappiness from this need. Or it could be added a very small quantity to the world median, so it is always positive and non zero. The conditional would lead to more predictable and understandable values, but I'm not sure which one is better performance-wise.

I can think of two ways of doing a proportional comparison: The relative differences, which I discussed in a previous post, and the ratio. Boths have merits.

I'll show how it could be with ratios.
If we do a simple division (the ratio): CityEfficiency / MedianEfficiency, we will get values between 0 and probably 10+, but we are only interested in values where CityEfficiency < MedianEfficiency, so we will be working with values between 0 and 1. As is, a capital will always have a value over or equal to 1.
So, how are going to put some unhappiness into capitals? Modifiers.

Right now modifiers are like "City size: +23%, empire size: +51%, capital:+15%". In our current games, pushing wide, we were obtaining modifiers around +100% in the worst cases, around +30% in the best ones.
What would happen if we include Modifiers this way?
CityEfficiency / (MedianEfficiency * Modifiers)

In the case of CityEfficiency = MedianEfficiency (the city happens to be the median one), a +100% modifier will give:
CityEfficiency / (MedianEfficiency + 100%) = 0.5 * CityEfficiency / MedianEfficiency
this is, this function will typically return values 0 and 1 for CityEfficiency values up to the double of MedianEfficiency.
If it does not work well, modifier values can be adapted.

How many citizens should be unhappy? Since the lower the ratio, the bigger the unhappiness, it could be proportional to "1 - EfficiencyRatio", where negative values do nothing. So,
UnhappyPeople = q * CitySize * (1 - EfficiencyRatio), where q is a constant (suggested 0.5).

Also, would you consider to move growth penalties to local unhappiness values and remove unhappiness from starving? Maybe after the changes above?
 
I've decided to move on the 'repeatable project' concept - a 'Public Works' project, if you will, that will reduce the needs modifier of all needs in the city by -5% (WIP). The catch is that the cost scales with era AND the number of times you construct it in a city. So it becomes more and more production-expensive to do, but it will serve as a means by which players can dig out of a hole. If anyone wants to propose a better name and/or an icon, I'm all ears.
Pls no.
Theres already so much extra mechanics and algorithm and UI and whatever to work for happiness, we dont need more of them. What we need is balanced numbers, not another tool.

Unless Iam expanding too fast too much, most unhappiness comes from a lack of infrastructure. And why do I have a lack infrastructure? Cause I don't have enough hammers, atleast not like the AI has. How will a hammer driven project help in this circumstance? How do you guarantee, the AI will not spam this project like Tic Tacs? And never will have any happiness problems unlike me?

Pls let us focus on a easy system with stable and balanced numbers.
 
Pls no.
Theres already so much extra mechanics and algorithm and UI and whatever to work for happiness, we dont need more of them. What we need is balanced numbers, not another tool.

Unless Iam expanding too fast too much, most unhappiness comes from a lack of infrastructure. And why do I have a lack infrastructure? Cause I don't have enough hammers, atleast not like the AI has. How will a hammer driven project help in this circumstance? How do you guarantee, the AI will not spam this project like Tic Tacs? And never will have any happiness problems unlike me?

Pls let us focus on a easy system with stable and balanced numbers.
I 100% agree. It feels like pure cheese, and only a band-aid.
 
Pls no.
Theres already so much extra mechanics and algorithm and UI and whatever to work for happiness, we dont need more of them. What we need is balanced numbers, not another tool.

Unless Iam expanding too fast too much, most unhappiness comes from a lack of infrastructure. And why do I have a lack infrastructure? Cause I don't have enough hammers, atleast not like the AI has. How will a hammer driven project help in this circumstance? How do you guarantee, the AI will not spam this project like Tic Tacs? And never will have any happiness problems unlike me?

Pls let us focus on a easy system with stable and balanced numbers.
It's not as bad as you put it. Let's say that we limit expansion so it's very difficult to manage more than 10 owned cities. I find this is a very suitable number for hummies. But other players may wish to push it further and be allowed to control more cities. Well, now they can. The caveat is that such cities will be less developed, which is the price they'll pay for the extra flexibility.

I'll concede that it is more advisable to make one change at the same time.

Edit. I'd like to name this project 'City regulations'.
 
There is a way to make this idea more palatable: make the publics work project a separate building line.

You are currently selling this idea as a hybrid building/process, and that sounds both like a tacked-on mechanic and a cop-out. If you repackage it as 2-3 regular buildings which unlock at normal tech intervals it would be much more palatable to myself and others. You can also be more specific w.r.t. the public works projects.

For example: Sewer unlocks in medieval, Workhouse in Industrial, and Community Center in Atomic.

Sewer greatly reduces Distress (-30) and all other needs slightly (-10). Workhouse greatly reduces Poverty and all other needs slightly, Community Hall Greatly reduces Illiteracy/Boredom greatly, and all other needs slightly.

Each building could also give +1:c5happy: if necessary, and be 20% more :c5production: than other buildings at that tech level. No yields, just happiness management.

I would much prefer that over a nebulous "public works" project, because a ton of the buildings already in the game are public works (schools, hospitals, hotels, road/railroads, dams, power stations, etc.)

Sewer icon by Sukritact:
145

Workhouse - Palazzo icon by Sukritact. State school icon by Janboruta
145
145

Community Hall - High Court icon by Janboruta
80
 
Last edited:
Fine. This is a tool. A permanent one, but hopefully it can't be abused. It fits with the proposal of the processes, but instead a panic button, this opens up new strategies. Hope that it does not lead to excessively wide civs.


So far, so good.


Really glad you saw it. Only a little more thought has to be put on how the modifiers are going to affect the results.
For instance, it is mandatory to avoid divisions by zero. World median efficiency can value zero, especially in the early game. A simple check would say that in this case, there is no unhappiness from this need. Or it could be added a very small quantity to the world median, so it is always positive and non zero. The conditional would lead to more predictable and understandable values, but I'm not sure which one is better performance-wise.

I can think of two ways of doing a proportional comparison: The relative differences, which I discussed in a previous post, and the ratio. Boths have merits.

I'll show how it could be with ratios.
If we do a simple division (the ratio): CityEfficiency / MedianEfficiency, we will get values between 0 and probably 10+, but we are only interested in values where CityEfficiency < MedianEfficiency, so we will be working with values between 0 and 1. As is, a capital will always have a value over or equal to 1.
So, how are going to put some unhappiness into capitals? Modifiers.

Right now modifiers are like "City size: +23%, empire size: +51%, capital:+15%". In our current games, pushing wide, we were obtaining modifiers around +100% in the worst cases, around +30% in the best ones.
What would happen if we include Modifiers this way?
CityEfficiency / (MedianEfficiency * Modifiers)

In the case of CityEfficiency = MedianEfficiency (the city happens to be the median one), a +100% modifier will give:
CityEfficiency / (MedianEfficiency + 100%) = 0.5 * CityEfficiency / MedianEfficiency
this is, this function will typically return values 0 and 1 for CityEfficiency values up to the double of MedianEfficiency.
If it does not work well, modifier values can be adapted.

How many citizens should be unhappy? Since the lower the ratio, the bigger the unhappiness, it could be proportional to "1 - EfficiencyRatio", where negative values do nothing. So,
UnhappyPeople = q * CitySize * (1 - EfficiencyRatio), where q is a constant (suggested 0.5).

Also, would you consider to move growth penalties to local unhappiness values and remove unhappiness from starving? Maybe after the changes above?

Growth is going to get moved over, yes.

My only concern with moving modifiers in that direction is that it utterly nukes the UI. I have no idea how I’d make that clear.

Making the ‘final check’ proportional (as it is now) is ultimately going to result in less unhappiness. I’m fine with that - what it means is that larger cities will simply be more manageable. But I think let’s experiment with things on this level first.

G
 
There is a way to make this idea more palatable: make the publics work project a separate building line.

You are currently selling this idea as a hybrid building/process, and that sounds both like a tacked-on mechanic and a cop-out. If you repackage it as 2-3 regular buildings which unlock at normal tech intervals it would be much more palatable to myself and others. You can also be more specific w.r.t. the public works projects.

For example: Sewer unlocks in medieval, Workhouse in Industrial, and Community Center in Atomic.

Sewer greatly reduces Distress (-30) and all other needs slightly (-10). Workhouse greatly reduces Poverty and all other needs slightly, Community Hall Greatly reduces Illiteracy/Boredom greatly, and all other needs slightly.

Each building could also give +1:c5happy: if necessary, and be 20% more :c5production: than other buildings at that tech level. No yields, just happiness management.

I would much prefer that over a nebulous "public works" project, because a ton of the buildings already in the game are public works (schools, hospitals, hotels, road/railroads, dams, power stations, etc.)

Sewer icon by Sukritact:
145

Workhouse - Palazzo icon by Sukritact. State school icon by Janboruta
145
145

Community Hall - High Court icon by Janboruta
80

The entire point of it is that it is repeatable. If a city gets completely out of hand you can run this until things improve. Or not.

G
 
Then why not swap my sewer recommendation for prisons/dungeons, and make it so you can have multiple copies of the same building in the city?

Then instead of raw production scaling as a punishment, the city is punished my extra building maintenance
 
Back
Top Bottom