General Happiness Issues

It is rounding errors though. You make up some math, it doesn't prove its not rounding errors. They really exaggerate changes.

It does not account for all of the changes, because happiness is supposed to change over time. That's the entire point of the system.

@G
Did you ever look at some kind of dummy variable between happiness and the yields? For example, if I'm lacking culture, my city gets a dummy (call it a demerit) for boredom, and I need like 10 demerits to get 1 unhappiness. This would reduce swing by a big amount I think.

On the newest version, you have the option to freeze swings by locking growth, but it does come at a cost. If you keep growing it still swings quite a bit.
 
I'm not really seeing the problem... If rounding is, in any way, a source of problems then adding digits is the elegant solution.

why wouldn't city happiness be rounded after, rather than before each of the individual happiness sources are added? interrogating each of the sources of unhappiness already requires hovering over the city happiness meter in the city UI; do extra decimal places cause that much trouble for the drop down UI?

Even if you couldn't add a decimal place, and were forced to work in a system where 100 illiteracy points = 1:c5unhappy: unhappiness, wouldn't it be perfectly understandable to move the goalposts, and redefine cumulative unhappiness as a "points" system?

ie. City unhappiness is equal to 100 unhappiness points, generated by all cumulative sources of illiteracy/boredom/distress, etc. Then in the global menu, instead of saying "-20:c5unhappy: from illiteracy; -5:c5unhappy: from boredom", you could say 2001:c5unhappy: demerits from illiteracy; 488:c5unhappy: demerits from boredom"

The happiness calculation already shows you your current yield per population output, and the need per population as rational numbers to 2 decimal places... If accumulation of needs into City Happiness occurred before rounding or after rounding, incurious people will still have their nice big round number, while people who want to drill down will still have an accessible and understandable way of seeing how happiness is counted.

If rounding errors are in any way a problem, then simply moving 1-2 decimal points just sounds like good sense. If that can't be done without making ugly UI issues, then simply re-contextualize what those numbers mean.

This sounds like people are only viewing this as a UI problem. So why not make it a definitional problem? Newcomers to VP already have to completely re-learn how hapiness is calculated. Framing it as a demerits system might actually make it easier for them to grasp
 
Last edited:
It is rounding errors though. You make up some math, it doesn't prove its not rounding errors. They really exaggerate changes.

It does not account for all of the changes, because happiness is supposed to change over time. That's the entire point of the system.

@G
Did you ever look at some kind of dummy variable between happiness and the yields? For example, if I'm lacking culture, my city gets a dummy (call it a demerit) for boredom, and I need like 10 demerits to get 1 unhappiness. This would reduce swing by a big amount I think.

On the newest version, you have the option to freeze swings by locking growth, but it does come at a cost. If you keep growing it still swings quite a bit.

That’s what rounding already does for us though. Also if you get 10 demerits I’m calling your mother and you need to go to the principal’s office.

I'm not really seeing the problem...

why wouldn't city happiness be rounded after, rather than before each of the individual happiness sources are added? interrogating each of the sources of unhappiness already requires hovering over the city happiness meter in the city UI; do extra decimal places cause that much trouble for the drop down UI?

Even if you couldn't add a decimal place, and were forced to work in a system where 100 illiteracy points = 1:c5unhappy: unhappiness, wouldn't it be perfectly understandable to move the goalposts, and redefine cumulative unhappiness as a "points" system?

ie. City unhappiness is equal to 100 unhappiness points, generated by all cumulative sources of illiteracy/boredom/distress, etc. Then in the global menu, instead of saying "-20:c5unhappy: from illiteracy; -5:c5unhappy: from boredom", you could say 2001:c5unhappy: demerits from illiteracy; 488:c5unhappy: demerits from boredom"

The happiness calculation already shows you your current yield per population output, and the need per population as rational numbers to 2 decimal places... If accumulation of needs into City Happiness occurred before rounding or after rounding, incurious people will still have their nice big round number, while people who want to drill down will still have an accessible and understandable way of seeing how happiness is counted.

If rounding errors are in any way a problem, then simply moving 1-2 decimal points just sounds like good sense. If that can't be done without making ugly UI issues, then simply re-contextualize what those numbers mean.

This sounds like people are only viewing this as a UI problem. So why not make it a definitional problem? Newcomers to VP already have to completely re-learn how hapiness is calculated. Framing it as a demerits system might actually make it easier for them to grasp

You’re talking about redoing everything. All of it. For what, ultimately, is a layer of obfuscation between yields and unhappiness. You’ll forgive me if I’m not eager, especially when I think the current version is extremely workable as a basis for moving forward.

Edit: there’s an X factor here as well. If we’re talking about new players, the existing system needs to at least adhere to the theme of vanilla. And that theme is built on small integers, not 1000s of demerits. That sounds like hand waving but there’s truth to it.
 
Didn't see @CrazyG's post when I made mine. Sounds like we're both thinking the same thing.
You’re talking about redoing everything. All of it.
I thought I was only talking about multiplying all the needs values by 100, and changing some UI text, but I didn't design the system. If it's as complicated as you suggest then you'd be the best judge of the work involved.

EDIT: To clarify, I'm only talking about changing the needs variables, not how happiness from ideology, policies, buildings, luxuries, etc. works. Just shifting needs, the part that newbies already don't understand, to a "demerits" system, where 100 demerits of any type = 1:c5unhappy: unhappiness.
 
Last edited:
Here is another shot at explaining why dividing happiness into all these seperate groups and rounding combine to make happiness swing up and down so much.

If you only had 1 happiness group, and it moved up and down by 1 or 2 per turn, I don't think you would blink. It makes sense.
If you have 10 cities, with 4 types per city, you have 40 groups. If half of the groups had an increase in just 1 happiness since last turn, your overall happiness dropped by 20! This is why even small change in median value can make such big swings. If the median values have larger swings (say due to specific social policies), you can a change of double that.
I thought I was only talking about multiplying all the values by 100, and changing some UI text, but I didn't design the system. If it's as complicated as you suggest then you'd be the best judge of the work involved.
My thoughts were either this, or to do it indirectly through some dummy variable as a middle man. I don't if either are easy or practical to do though.
 
Here is another shot at explaining why dividing happiness into all these seperate groups and rounding combine to make happiness swing up and down so much.

If you only had 1 happiness group, and it moved up and down by 1 or 2 per turn, I don't think you would blink. It makes sense.
If you have 10 cities, with 4 types per city, you have 40 groups. If half of the groups had an increase in just 1 happiness since last turn, your overall happiness dropped by 20! This is why even small change in median value can make such big swings. If the median values have larger swings (say due to specific social policies), you can a change of double that.

My thoughts were either this, or to do it indirectly through some dummy variable as a middle man. I don't if either are easy or practical to do though.

You are correct, that is why ‘rounding’ is the culprit. The new system with the static value lets players be in control of this. I really don’t see an issue. If ‘interturn’ things like the tech median are still an issue we can store off the modified static value instead of the unmodified global average- this would make it possible to ‘slingshot’ cities via tech manipulation, which is why I didn’t do it that way to begin with.

You can make it sound as simple as you want, but middlemen, demerits etc are a complete rewrite of the model. And i still haven’t seen anyone post about 10-10 so this is all just academic right now.
 
You are correct, that is why ‘rounding’ is the culprit.
It still doesn't explains why my modifiers rise 1.2 times as strong as a 75% need reduction building can negate after researching one tech. Or why my empire wide boredom rise by 5, even the culture median decreases.
Or why I had a 50% decrease of modifiers by elimination of Polynesia.

If ‘interturn’ things like the tech median are still an issue we can store off the modified static value instead of the unmodified global average- this would make it possible to ‘slingshot’ cities via tech manipulation, which is why I didn’t do it that way to begin with.
This would be a terrible idea. If you went into red numbers and hastily construct need buildings, you still have to grow to refresh the new, lower modified value. If you lack the ability to grow, you can't refresh with better conditions, and if your city is already huge, you maybe need longer to grow than to get the building. Additionally, your forced to grow, even if you didn't want.
 
Here is another shot at explaining why dividing happiness into all these seperate groups and rounding combine to make happiness swing up and down so much.

If you only had 1 happiness group, and it moved up and down by 1 or 2 per turn, I don't think you would blink. It makes sense.
If you have 10 cities, with 4 types per city, you have 40 groups. If half of the groups had an increase in just 1 happiness since last turn, your overall happiness dropped by 20! This is why even small change in median value can make such big swings. If the median values have larger swings (say due to specific social policies), you can a change of double that.

My thoughts were either this, or to do it indirectly through some dummy variable as a middle man. I don't if either are easy or practical to do though.
This happens because unhappiness from needs is additive. I proposed a way to make it substitutive (compute unhappiness based on the happy people left in the city, instead of full population) but G made his static median thing first. Actually, the method is still more additive than substitutive, as it showed in the simulation, so the swings would remain, but weaker.
If the problem persists (having 20 cities birthing citizens in the same turns might show it up), maybe the weighted median tech value will smooth things, as it should be more stable than a pure median.
I'm currently fixing my pc, so I'm not able to do it for a while.
 
This happens because unhappiness from needs is additive. I proposed a way to make it substitutive (compute unhappiness based on the happy people left in the city, instead of full population) but G made his static median thing first. Actually, the method is still more additive than substitutive, as it showed in the simulation, so the swings would remain, but weaker.
If the problem persists (having 20 cities birthing citizens in the same turns might show it up), maybe the weighted median tech value will smooth things, as it should be more stable than a pure median.
I'm currently fixing my pc, so I'm not able to do it for a while.
Definitely in favor of a weighted tech median.
I am not 100% sure if the definition of the actually global tech median works as intended (which may be the source or a part of the problem Iam observing).
In a savegame someone in this forum posted, a big positive happiness jump happened. The reason was the conquest of an AI nation. Comparing the tech medians before and after the conquest should make only a difference of 1. The need modifiers changed, due to now smaller tech lead. But it changed like the median had changed by 2. After giving the players nation 2 more tech with the help of the firetuner, the modifiers went exactly to the point where it was before the conquest.
Cant explain why.
 
I suggest to play a game with 10-10. You are discussing about the last war. I have done it twice and wether had any big swings nor big problems with happiness. I have to mange my happiness and I have to use the stop growth butten sometimes. Maybe a game with India and excessive big cities will show more about the topic. Unless we have a savegame with real happiness issues, the discussion is pointless.
 
I suggest to play a game with 10-10. You are discussing about the last war. I have done it twice and wether had any big swings nor big problems with happiness. I have to mange my happiness and I have to use the stop growth butten sometimes. Maybe a game with India and excessive big cities will show more about the topic. Unless we have a savegame with real happiness issues, the discussion is pointless.
If you can't explain errors and stange behavior in the previous version, how are you able to solve those things without knowing the source of it for the next version?
The numbers aren't lying, everyone can look at the saves, and there's nobody who has proven my numbers and conclusion as wrong.

My logic is undeniable.
My logic is undeniable.
My logic is undeniable.
 
Last edited:
Have you even played the new patch? Maybe the source of your problem isn't solved (and without analysing the logfile on every step, you won't ever solve it) but as long as the medians are fixed unless the city is growing, the happininess is quite good manageble. You can stop the growth, build some buildings, work specialist, start a caravan and you can observe how your unhappiness is decreasing. And after this you can watch what would happen if your city is growing. It is that easy.
 
Have you even played the new patch? Maybe the source of your problem isn't solved (and without analysing the logfile on every step, you won't ever solve it) but as long as the medians are fixed unless the city is growing, the happininess is quite good manageble. You can stop the growth, build some buildings, work specialist, start a caravan and you can observe how your unhappiness is decreasing. And after this you can watch what would happen if your city is growing. It is that easy.
Yeah I have played it, but till yet not till the point the happiness drops normally happens(industrial era+), cause I wanted to try some playstyles first before I make a multi-player game today.
Ok, this time I try it with a more simplyfied question. How does a locked basic median helps, if the modifiers for the needs (which are not locked) are increasing by 20-50%?
 
The numbers aren't lying, everyone can look at the saves, and there's nobody who has proven my numbers and conclusion as wrong.
Get data from the most recent patch. Maybe you cannot hear the others saying this? GIVE US A SAVE FROM THE CURRENT PATCH. You cannot claim a problem on this path with old data. Maybe a metaphor would help?

If I give a bunch of numbers and data from 1930 about the economy, and advocated a new law based on this data, would I be right? When someone points out that I'm being ridiculous, I just shout about how my math is correct. That is what you are doing.
 
I want to bring another thing to the surface.
India.
I think India needs a buff in the direction of unhappiness fighting. Else, the UA of greatly increased growth can lead to suffering by high amounts of unhappiness.
Related to this Iam interested to see, which city size people consider as "BIG" in the late game. And which happiness benefit India should have to compensate even bigger sized cities.

I could imagine something like "2% need reduction for every follower of your religion in our owned cities", in addition to the already happening growth and pressure increase by follower. This would be a like an additional 75% need reduction building of late game, if the city have reached a greater size than 35. To compensate that, we could reduce the prophet discount from 35% to 30%. This high discount may be too high anyway if combined with 25% discount from prophecy and holy land.
 
Related to this Iam interested to see, which city size people consider as "BIG" in the late game. And which happiness benefit India should have to compensate even bigger sized cities.
It's not a binary attribute that >30 pop city is BIG and <= 30 is not. It's fuzzy.
Too big city is not a fixed number, it's relative to situation. If additional civilian makes more problems by raising unhappiness than it's worth, then the city would be too big. If you have big happiness buffer then you may never have too big cities, but if you don't then even 15 pop city might too big in certain situations. It's always your call to decide it.

I could imagine something like "2% need reduction for every follower of your religion in our owned cities", in addition to the already happening growth and pressure increase by follower. This would be a like an additional 75% need reduction building of late game, if the city have reached a greater size than 35. To compensate that, we could reduce the prophet discount from 35% to 30%. This high discount may be too high anyway if combined with 25% discount from prophecy and holy land.
I like it, but post it in India balance thread.
 
Playing on 10-10, I overexpanded in the early game and got some minor unhappiness for the rest of the classical/medieval era. HOWEVER, THIS IS A GOOD THING! I rightfully felt punished for settling too quickly and not paying attention to limiting my growth, but it didn't spiral out of control due to each city now getting incrementally more unhappy. Probably even bigger, there was no psychological kick in the balls from a sudden massive drop, which is frustrating to try to correct all at once. Even if the behind the scenes numbers for needs remain exactly the same, unhappiness FEELS like a pit you can climb out of now.
 
It's not a binary attribute that >30 pop city is BIG and <= 30 is not. It's fuzzy.
Too big city is not a fixed number, it's relative to situation. If additional civilian makes more problems by raising unhappiness than it's worth, then the city would be too big. If you have big happiness buffer then you may never have too big cities, but if you don't then even 15 pop city might too big in certain situations. It's always your call to decide it.
Good said. I was wondering some people were talking about too big cities and then said something like 25-30. A normal city can work 20 specialist slots, and 5 additional citizen are kinda not enough to support those specialists, nor working good other yield tiles. For me, a big city starts at around 40. Enough worker for feeding the specialists and working good tiles in city range.
But Gazebo is unfortunately balancing the population and other modifier around AI only games. And in most of my games the AI stops the growth of their secondary cities at around 25, unless they have food related UA.
So Iam simply worried the corridor of a manageable population per city will be around that number.
But I've noticed the happiness problems are not directly coming from population, so I hope he creates a big enough window for me to still do my beloved grow-grow-grow playstyle. :)
 
Last edited:
Top Bottom