Happiness Balance Discussion

I looked at this page and the preceding two and I'm not sure I see where Gazebo references problems with static references. Could you please link me the post(s)?
Easier said than done. The major benefit of median models is that it's modmod agnostic. Adding a new era, or a bunch of new buildings, could break the hard-coded curve.

I think the easiest method here would be to just 50/50 empire/global median as an average. So your empire yields can drag you up/down a bit, but you're still anchored in what other players are doing.

The advantage of the current system over vanilla is that it does force you to generalize your cities a bit more, which makes some niche buildings a little less so.

G
No.


Just... No. You aren't balancing for 300-400 turns of play, you're balancing for 100-800 turns of play based on game mode settings. Is making 1 complex system really that much harder than creating 5 separate, arbitrarily less complex ones? You're also trying to balance civs whose bonuses are all raw yields and infrastructure (ie. Babylon) vs civs with virtually no yields-related boni (ie. Zulu).


Indeed a modmod could do what you are suggesting, but what you are suggesting is that a modmod can't simply add a building. Instead, each modmod needs to effectively rip apart and re-configure the happiness curve for each building/tech/event it adds at each game speed and diificulty. Once again this is possible, it's just hideously complex, hard to test/balance, and a bit insane. In short, it's a massive deterrent to modmodders, both old and new.


It would be demoralizing to update against a static system because it would be sensitive to even minute changes in base VP. Us modmodders are already run ragged playing constant catch-up with compatibility patches.


Lastly, what you are suggesting would make running more than 1 modmod at a time a Byzantine web of re-configured happiness mechanics and load orders. We talk amongst ourselves, but you're basically asking us to to be in such tight communication that we may as well be married to each other.


If such a happiness system were implemented then that would be the last you'd hear from me; I'd pick a new hobby over wrestling with a happiness system that is as inflexible as it is mercurial. Such a change doesn't even affect my mods -- they all replace existing buildings only -- but it would mess poor Enginseer and Infixo's contributions up very badly.
 
My proposal for the Unhappiness System
  • First Citizen does not contribute to needs. He can, however, be unhappy.
  • Each Citizen has a base static yield need that scales upon era: 1, 1, 2, 3, 4, 5, 6, 7.
  • Only 2 sources of unhappiness from yields exist in the Ancient Era: Distress and Poverty. Only after hitting Classical Era do you start requiring science, culture, and religion.
  • Building a Library reduces that base illiteracy by -10%.
    • So that same city starts requiring 16.2 Science. These bonuses stack multiplicatively. So having a University makes the city requires 14.58 Science (not 14.4) and so on.
      • If that city has a Private Education Event active (+15% Illiteracy), then that city's base illiteracy requires 16.77(not 17.1) Science.
    • Now if it doesn't have the Event active, a Council, Library, and University provide 6 Science already.
      • 14.58/6 = 2.43 (round up if >0.5; round down if <0.5) ~= 2 Illiteracy.
    • Add 2 Specialists: +6 Science.
    • Now it's 14.58/12 = 1.22 ~= 1 Illiteracy.
      • Still unhappy, what do? Convert your City's Process to Science which reduces Illiteracy by -25% and add science yields!
      • 10.93/12 = 0.91 ~= 0 Illiteracy. (assuming your production to 0).
  • Your Capital gets a +20% Base Unhappiness because of Capital.
  • When World Congress is active, receive a -25% through +25% Unhappiness Need Modifier depending on how ahead or behind you are. The most ahead civilization receives a +25% Unhappiness Need and the most behind civilization receive a -25%.
Sounds easy to understand?
  • Now we account for buildings that add extra yields by introducing the national average.
  • That same city mentioned above is now added to a pool of 3 cities(we exclude the capital because of its +20% self-modifier already)
  • These 3 cities all have the same buildings, BUT DIFFERENT citizens. However, one city with 8 population has managed to form an Academy and produce +6 Science and another with 20 population has a random +20 science from a city event.
  • So now you have median disparity. City #1 only produces 12 Science, City #2 produces 18 Science, and City #3 produce 32 Science.
  • Add them up, average it out: ~= 20.7
  • Now we'll take the average and divide it by what the science yield is.
    • City #1: 12/20.7 ~= 0.58
    • City #2: 18/20.7 ~= 0.87
    • City #3: 32/20.7 ~= 1.55
  • Now take 1 and subtract, while combining it with the illiteracy unhappiness needs.
    • City #1's Illiteracy after Median: 14.58 + (1 - 0.58) ~= 15
    • City #1's Overall Illiteracy: 15/12 ~= 1.25 (not that big, but still makes a difference if that city grows!) ~= 1 Illiteracy.
  • City #2's Base Illiteracy: 7*2*0.9*0.9 ~= 11.34
  • City #2's Illiteracy after Median: 11.34 + (1-0.87) = 11.47
  • City #2's Overall Illiteracy: 11.47/18 ~= 0.64 ~= 1 Illiteracy.
  • City #3's Base Illiteracy: 19*2*0.9*0.9 ~= 30.78
  • City #3: Illiteracy after Median: 30.78 + (1-1.55) = 30.23
  • City #3's Overall Ilitearcy: 30.23/32 ~= 0.94 ~= 1 Illiteracy.
Hey what gives, every city is producing 1 Illiteracy even city #3 the most successful one! :mad: And that's exactly the point. My proposal would make it at least that every city is unhappy at most 1 if you are successful in building everything. If you grow too much, you must meet the needs of the people. If you modify variables and variables, most cities should produce little unhappiness even if you are behind. As long as you don't overgrow your population. This makes a fine system.
 
Last edited:
Rekk, thank you.

So if I understand correctly, the main concerns with such static values aren't balance/gameplay, but modmodding friendliness? If so, I'm not sure I understand how much they would impact modmods. As far as I know, the vast majority of modmods don't change the (un)happiness system as such, but rather they change things that affect needs modifiers. And if so, they could still work the same, because they would still reduce the static needs by either a certain amount or a certain %. I read Pineappledan's post and I don't understand why median-based system would be more modmod friendly than a static one, because even as it stands now, we're often changing the values and the structure of the median-based system.

So, I basically have two questions:
- how many mods/which mods would a static-based system affect more than the median-based?
- why is a "finalized" median-based system more modmod friendly than a "finalized" static-based system?

Thanks for the explanation.
 
My proposal for the Unhappiness System
  • First Citizen does not contribute to needs. He can, however, be unhappy.
  • Each Citizen has a base static yield need that scales upon era: 1, 1, 2, 3, 4, 5, 6, 7.
  • Only 2 sources of unhappiness from yields exist in the Ancient Era: Distress and Poverty. Only after hitting Classical Era do you start requiring science, culture, and religion.
  • Building a Library reduces that base illiteracy by -10%.
    • So that same city starts requiring 16.2 Science. These bonuses stack multiplicatively. So having a University makes the city requires 14.58 Science (not 14.4) and so on.
      • If that city has a Private Education Event active (+15% Illiteracy), then that city's base illiteracy requires 16.77(not 17.1) Science.
    • Now if it doesn't have the Event active, a Council, Library, and University provide 6 Science already.
      • 14.58/6 = 2.43 (round up if >0.5; round down if <0.5) ~= 2 Illiteracy.
    • Add 2 Specialists: +6 Science.
    • Now it's 14.58/12 = 1.22 ~= 1 Illiteracy.
      • Still unhappy, what do? Convert your City's Process to Science which reduces Illiteracy by -25% and add science yields!
      • 10.93/12 = 0.91 ~= 0 Illiteracy. (assuming your production to 0).
  • Your Capital gets a +20% Base Unhappiness because of Capital.
  • When World Congress is active, receive a -25% through +25% Unhappiness Need Modifier depending on how ahead or behind you are. The most ahead civilization receives a +25% Unhappiness Need and the most behind civilization receive a -25%.
Sounds easy to understand?
  • Now we account for buildings that add extra yields by introducing the national average.
  • That same city mentioned above is now added to a pool of 3 cities(we exclude the capital because of its +20% self-modifier already)
  • These 3 cities all have the same buildings, BUT DIFFERENT citizens. However, one city with 8 population has managed to form an Academy and produce +6 Science and another with 20 population has a random +20 science from a city event.
  • So now you have median disparity. City #1 only produces 12 Science, City #2 produces 18 Science, and City #3 produce 32 Science.
  • Add them up, average it out: ~= 20.7
  • Now we'll take the average and divide it by what the science yield is.
    • City #1: 12/20.7 ~= 0.58
    • City #2: 18/20.7 ~= 0.87
    • City #3: 32/20.7 ~= 1.55
  • Now take 1 and subtract, while combining it with the illiteracy unhappiness needs.
    • City #1's Illiteracy after Median: 14.58 + (1 - 0.58) ~= 15
    • City #1's Overall Illiteracy: 15/12 ~= 1.25 (not that big, but still makes a difference if that city grows!) ~= 1 Illiteracy.
  • City #2's Base Illiteracy: 7*2*0.9*0.9 ~= 11.34
  • City #2's Illiteracy after Median: 11.34 + (1-0.87) = 11.47
  • City #2's Overall Illiteracy: 11.47/18 ~= 0.64 ~= 1 Illiteracy.
  • City #3's Base Illiteracy: 19*2*0.9*0.9 ~= 30.78
  • City #3: Illiteracy after Median: 30.78 + (1-1.55) = 30.23
  • City #3's Overall Ilitearcy: 30.23/32 ~= 0.94 ~= 1 Illiteracy.
Hey what gives, every city is producing 1 Illiteracy even city #3 the most successful one! :mad: And that's exactly the point. My proposal would make it at least that every city is unhappy at most 1 if you are successful in building everything. If you grow too much, you must meet the needs of the people. If you modify variables and variables, most cities should produce little unhappiness even if you are behind. As long as you don't overgrow your population. This makes a fine system.

You lost me on this one. It looks like you had an example in mind but never show us your example cities and how you get your numbers. So when your quoting things like (16.2 instead of 17), we don’t have a starting point to follow your logic.

So can you start with a series of example cities so we can follow along please
 
Rekk, thank you.

So if I understand correctly, the main concerns with such static values aren't balance/gameplay, but modmodding friendliness? If so, I'm not sure I understand how much they would impact modmods. As far as I know, the vast majority of modmods don't change the (un)happiness system as such, but rather they change things that affect needs modifiers. And if so, they could still work the same, because they would still reduce the static needs by either a certain amount or a certain %. I read Pineappledan's post and I don't understand why median-based system would be more modmod friendly than a static one, because even as it stands now, we're often changing the values and the structure of the median-based system.

So, I basically have two questions:
- how many mods/which mods would a static-based system affect more than the median-based?
- why is a "finalized" median-based system more modmod friendly than a "finalized" static-based system?

Thanks for the explanation.

It is modmod friendlyness, but also balancING friendlyness.

To balance static values (like "at this number of tech, we expect 6gpt to be produced per citizens"), you need to make strong assumption about how much yields the civs will have at any point of the game.

For example, if at some point of the devellopement of VP, we say "culture bonuses are too strong, to make them less required, let us give +1 culture per era per city". Then, you would be forced to change all the static values for bordeom needs. Whereas dynamic values (like median) will self-correct itself by taking in account those additional yields (as said in an earlier post, it doesn't solve everything, but still is better than a static system)

In other words, what we are trying to do with a median system is to make the game compute by itself on-the-fly what are the good "static" values to chose, rather than having to compute them ourselve trough horribly long testing (or intuition), and modify them each time we change anything (or add new modmods).

And hopefully, the resulting model will not degenerate when playing at marathon speed or medieval era start. Because let us be honest, there won't be enough testing done for those options, so if our model adapt by itself, it is better.
 
My proposal for the Unhappiness System
  • First Citizen does not contribute to needs. He can, however, be unhappy.
  • Each Citizen has a base static yield need that scales upon era: 1, 1, 2, 3, 4, 5, 6, 7.
  • Only 2 sources of unhappiness from yields exist in the Ancient Era: Distress and Poverty. Only after hitting Classical Era do you start requiring science, culture, and religion.
  • Building a Library reduces that base illiteracy by -10%.
    • So that same city starts requiring 16.2 Science. These bonuses stack multiplicatively. So having a University makes the city requires 14.58 Science (not 14.4) and so on.
      • If that city has a Private Education Event active (+15% Illiteracy), then that city's base illiteracy requires 16.77(not 17.1) Science.
    • Now if it doesn't have the Event active, a Council, Library, and University provide 6 Science already.
      • 14.58/6 = 2.43 (round up if >0.5; round down if <0.5) ~= 2 Illiteracy.
    • Add 2 Specialists: +6 Science.
    • Now it's 14.58/12 = 1.22 ~= 1 Illiteracy.
      • Still unhappy, what do? Convert your City's Process to Science which reduces Illiteracy by -25% and add science yields!
      • 10.93/12 = 0.91 ~= 0 Illiteracy. (assuming your production to 0).
  • Your Capital gets a +20% Base Unhappiness because of Capital.
  • When World Congress is active, receive a -25% through +25% Unhappiness Need Modifier depending on how ahead or behind you are. The most ahead civilization receives a +25% Unhappiness Need and the most behind civilization receive a -25%.
Sounds easy to understand?
With the exception of the example that doesn't make any sense because "that same city" return "null pointer exception".

For the moment, it is just a static need system, that require scaling with era needs. And buildings that straight up reduce needs in a easy way.
  • Now we account for buildings that add extra yields by introducing the national average.
  • That same city mentioned above is now added to a pool of 3 cities(we exclude the capital because of its +20% self-modifier already)
  • These 3 cities all have the same buildings, BUT DIFFERENT citizens. However, one city with 8 population has managed to form an Academy and produce +6 Science and another with 20 population has a random +20 science from a city event.
Not sure if you intended this as a rule for computing unhappiness, or as an example. Do you group cities by triple of cities with the same buildings?

  • So now you have median disparity. City #1 only produces 12 Science, City #2 produces 18 Science, and City #3 produce 32 Science.
  • Add them up, average it out: ~= 20.7
  • Now we'll take the average and divide it by what the science yield is.
    • City #1: 12/20.7 ~= 0.58
    • City #2: 18/20.7 ~= 0.87
    • City #3: 32/20.7 ~= 1.55
So you are using the "average city production" instead of the "average city efficiency". Which mean that big develloped cities will not have weird behavior on the mean if you overgrow them. I like that point.

  • Now take 1 and subtract, while combining it with the illiteracy unhappiness needs.
    • City #1's Illiteracy after Median: 14.58 + (1 - 0.58) ~= 15
    • City #1's Overall Illiteracy: 15/12 ~= 1.25 (not that big, but still makes a difference if that city grows!) ~= 1 Illiteracy.
    • City #2's Base Illiteracy: 7*2*0.9*0.9 ~= 11.34
    • City #2's Illiteracy after Median: 11.34 + (1-0.87) = 11.47
    • City #2's Overall Illiteracy: 11.47/18 ~= 0.64 ~= 1 Illiteracy.
    • City #3's Base Illiteracy: 19*2*0.9*0.9 ~= 30.78
    • City #3: Illiteracy after Median: 30.78 + (1-1.55) = 30.23
    • City #3's Overall Ilitearcy: 30.23/32 ~= 0.94 ~= 1 Illiteracy.
I have no clue what is happening here. You are adding a value which is usually between -1 and +1 to a value which is usually at least 10. So it is meaningless and has almost no effect. Shouldn't this be a product instead of an addition? Or maybe you want to add substract it after dividing the illiteracy per the production? I don't really understand what's happening. And for the moment, I don't see any situation where you can have more than 1 (maybe 2) Illiteracy.
Hey what gives, every city is producing 1 Illiteracy even city #3 the most successful one! :mad: And that's exactly the point. My proposal would make it at least that every city is unhappy at most 1 if you are successful in building everything. If you grow too much, you must meet the needs of the people. If you modify variables and variables, most cities should produce little unhappiness even if you are behind. As long as you don't overgrow your population. This makes a fine system.

Cannot judge this without understanding the previous. But since it uses static yields at some points, how does it react to "doubling science production everywhere"?
 
I can’t figure out what all of these variations offer that’s actually easier to understand or implement that the median/per citizen method. They'd be their own balancing nightmares. As I've said before, we're very close to an ideal here.

The biggest complaints I see about the current system:

- The median/per-citizen system is opaque
-- This is a UX issue, something we've chipped away at every release. The current is about as clear as I can make it.

- The empire median creates weird shenanigans
-- Going to a 50/50 empire/global median gives us the best of both worlds. Players have a bit of control over their median, but global changes can drag it around.

- I'm stuck in unhappiness and I can't get out, help!
-- This is a bad one. I kinda think I have a solution, though: what if unhappiness below zero at the empire level was also a negative needs modifier? i.e.
If you have -20 happiness, this would be a -20% needs modifier for all needs. I'm not exactly sure how you'd 'rationalize' this in terms of 'realism,' but it would relieve some of the feedback loop issues people can see with negative unhappiness

- x/y/z modifier is killing my city, help!
-- What if I created some repeatable, tech-unlocked projects that reduce a city's needs modifier by x% every time?
-- What if I added a building/policy attribute that reduced the pop/empire/tech % needs modifier by a flat amount?

Ultimately, what we're looking for here is agency.

The happiness model exists to push players to create cities that people would want to live in (good jobs, money, good entertainment, etc.). That's the theme. It works, I think, and it makes cities feel a bit more alive than vanilla.
The model punishes players long-term for short-term mistakes. Over-expand in Classical? Well, have fun dying in industrial to Distress.

The project idea above, as well as building/policy idea, might help put a bit more agency in player's hands.

G
 
The model punishes players long-term for short-term mistakes. Over-expand in Classical? Well, have fun dying in industrial to Distress.
I think if you overexpand in classical you should have unhappiness in the classical era, not the industrial era. Isn't this a more logical approach?

What I dislike, and I expect others do too, is to play a game for 150 turns and then die from unhappiness in the late game. I don't really see a need for happiness to be a major component of the late game. If its my game on a new version how was I supposed to know how to much to expand? All this is to say that I wouldn't mind loading up late game social policies with happiness boosters.

Your idea of a building that lowers need is fine too.
 
The happiness model exists to push players to create cities that people would want to live in (good jobs, money, good entertainment, etc.).
One common complaint is when you establish these cities to the fullest extent, infrastructure wise, yet still suffer somehow from unhappiness that becomes cumulatively impactful across your empire of seemingly perfect cities. If any player (let alone a casual) prioritizes/addresses infrastructure and builds everything/everywhere, yet their cities are in anarchy all because there's a few extra pop from a baby boom 100+ turns ago...
 
Last edited:
I think if you overexpand in classical you should have unhappiness in the classical era, not the industrial era. Isn't this a more logical approach?
I agree.
 
This is my set of fixes to the current happiness system:

1. Make proportional comparisons to the reference value. Whatever it is, please, make it proportional, not absolute, or we will keep having scaling issues. Proportional is {City value / Reference value}, Absolute is {City value - Reference value}

2. Use a dynamic reference that cannot be easily manipulated. What became crazy with the inclusion of the player's median city efficiency is that, suddenly, we were able to manipulate the reference value, and this makes some weird, difficult to understand, strategies. I'm fine with the reference value being world yield efficiency, as we have been using so far. The player's median citizen efficiency will do, too, as it is too hard to manage the exact population in every city.

3. Make penalties self-correcting. So far, being under -10 happiness prevents settling more cities, which is good. Also, empire unhappiness currently reduces growth, which is fine, but not enough because it doesn't prevent growth in the most offending cities. I'd change this penalty to growth to something more local, effecting where the real problem is. For example, make unhappy citizens 'eat' more food, like 50% more food than a happy citizen.
Currently, food consumption is 2 * N + k * S, where N is the size of the city, S the number of specialists, and k is the era scaler. Unhappiness could be included as a factor, increasing 50% for each unhappy citizen: 1 + 0.5 * U / N, where U is the number of unhappy people in the city, and N is the size of the city (0 unhappy people gives no extra consumption, 100% unhappy people gives extra 50% to food consumption).
Food Consumption = (2 * N + k * S) * (1 + 0.5 * U / N)
I understand that starving a city comes with its own happiness penalties, but those can be removed. Starving is a penalty in itself. I've considered other growth penalties, but this one is the only one that allows a recently settled city to grow a little so it can start producing buildings in a reasonable time.

4. Temporary tools: processes. It has been proposed that city processes help fighting unhappiness, but they must do this in a way that doesn't make it impossible to recover later. A city process is the most temporary solution one could think of, since the city cannot build anything while working on a process, it is an action that must be used with discretion. Precisely due to the limited usefulness of a process, when a process is active it must be impactful. For example, the farming process should completely remove distress, culture process should remove boredom. Then, defense process could simply halve unhappiness in the city.
 
I can’t figure out what all of these variations offer that’s actually easier to understand or implement that the median/per citizen method. They'd be their own balancing nightmares. As I've said before, we're very close to an ideal here.

The biggest complaints I see about the current system:

- The median/per-citizen system is opaque
-- This is a UX issue, something we've chipped away at every release. The current is about as clear as I can make it.

That doesn't mean much when nobody, not even the veterans, can agree on what the system actually does or how the math behind it operates. Look at this thread and the new version thread with BiteInTheMark and the others not reaching an agreement. It means it's not clear. This thread and the current release thread are basically Math Enthusiast Group, not Vox Populi group.

I'm fine with not a single soul understanding the thing if my empire is happy if I have the right buildings. If it's not and I have every relevant building only to stay unhappy, then it's not only my citizens that are unhappy, but I am as well and I start trying to comprehend the system to understand what's wrong with it or what's wrong with the city that has 3 luxuries, several bonus resources and is constructing buildings constantly. The answer isn't clear.

All I know about the current version's system is the happiness should be renamed to hapainis because it'd sound almost the same but it'd more accurately convey how much of a pain it is to manage.

The model punishes players long-term for short-term mistakes. Over-expand in Classical? Well, have fun dying in industrial to Distress.

That is a really horrible idea. Happiness is not fun to manage, especially not one from a system I cannot understand that is not meant to punish me instantly, but 300 turns later to the point my empire is "dying" - and that is by design? I can't believe you'd aim for something like that after you've spent I'm not sure how many versions trying to remove inexplicable happiness losses in Industrial era, only to have the inexplicable happiness losses happen every time every era in this version.

How is a new player meant to know what overexpansion in classical era is when he doesn't immediately see the effects? In fact let's be honest, how am I - a veteran - meant to know what that is when the system constantly changes and the amount of cities I can seem to have also changes every second version, all for what appears to be no reason for me? The version before 17th February was relatively easy to stay happy in, so I was pleased despite not knowing everything. There were many such versions where most of the problems were only periodical, sometimes only when waiting for courthouses to be built.

Right now I don't know how many cities I am supposed to settle, the amount changes every so often. I want clarity, so the game should tell me exactly how many cities are permitted at which point if the system is designed to punish. I don't want the game to not be about fighting the AI civs, but a struggle against an incomprehensible and harsh happiness system. I don't know how many cities I can have, I tried a few games and every time it felt different. Last game I made the system more lenient by modifying the files, but it's only going worse somehow.

In fact, you could add the "overexpansion" notice to the Settler description for ultimate clarity. "If you get more than 'X' cities before turn 'YZA', your empire will die of unhappiness in 'H' era" would work just fine. Maybe add it to the conquest choices, like "annexing this city will get you above the permitted 'YZA' city number and you might get 1 Distress per pop in every city in the next era despite having every Distress reducing building, wonder and even Autocratic New World Order, and even if you deal with Distress it's still going to be 1 unhappy per pop because there's 10 poverties and 8 boredoms hiding in the shadows". If this is intended, mention it.

What does overexpansion mean? It appears subjective. It's rare I settle more than 10 cities in classical era. I can get more, but the majority of these is conquered. Is that overexpansion? This term should be defined in a way that is clear. How many cities should an empire have? Should Domination victory be impossible without -100+ unhappiness as the required 40-60 cities to get all capitals on standard is definitely overexpansion?

Sorry for the rant, I actually love your effort, determination and the project as a whole, but I just don't understand why would you aim for this after dozens of versions trying to remove late-game inescapable unhappiness problems. That's why I made this wall above.
 
I can’t figure out what all of these variations offer that’s actually easier to understand or implement that the median/per citizen method. They'd be their own balancing nightmares. As I've said before, we're very close to an ideal here.

I will only speak for the variant I put out. When Tech X is researched, unhappiness increases by 1. When building Y is built, happiness increases by 1. Compared to a complex math formula, that's about as simple as it gets. While it may not be your ideal desire, it is certainly easier to understand.

As far as being close, the reason I'm skeptical G, is that you have said that before....many months ago.

The biggest complaints I see about the current system:

- The median/per-citizen system is opaque
-- This is a UX issue, something we've chipped away at every release. The current is about as clear as I can make it.
And yet the opaqueness of the system is still the number one complaint. If you feel that have hit the limits of clarity through UI, than that is a real concern.

- The empire median creates weird shenanigans
-- Going to a 50/50 empire/global median gives us the best of both worlds. Players have a bit of control over their median, but global changes can drag it around.

Others have commented that it doesn't seem such a system would do that much compared to a 100% on either side. Again, I'm skeptical, instead of the best of both world, I could get the worst.

- I'm stuck in unhappiness and I can't get out, help!
-- This is a bad one. I kinda think I have a solution, though: what if unhappiness below zero at the empire level was also a negative needs modifier? i.e.
If you have -20 happiness, this would be a -20% needs modifier for all needs. I'm not exactly sure how you'd 'rationalize' this in terms of 'realism,' but it would relieve some of the feedback loop issues people can see with negative unhappiness

Saranwali proposed a similar concept, and it has merit. I'll echo my concerns from his idea....a buffer does help prevent you from getting too low in unhappiness...but wouldn't it also make fighting against that unhappiness even more difficult? As soon as I start to climb back out my needs increase again, meaning my pushes are actually less effective than I would have thought. So my happiness numbers are actually harder to budge at the time I am watching them most closely (I don't care about happy when its +30, I watch it like a hawk when its -20).

- x/y/z modifier is killing my city, help!
-- What if I created some repeatable, tech-unlocked projects that reduce a city's needs modifier by x% every time?
-- What if I added a building/policy attribute that reduced the pop/empire/tech % needs modifier by a flat amount?

Ultimately, what we're looking for here is agency.

****You are right that agency is a very key and important factor. I know I have been a bit negative in this post, but this is a very solid idea. At the end of the day, no matter how balanced or stable your system is, giving people a "bail out" button if things get too bad is a good idea. So staring this paragraph in case its the only one read:)

The happiness model exists to push players to create cities that people would want to live in (good jobs, money, good entertainment, etc.). That's the theme. It works, I think, and it makes cities feel a bit more alive than vanilla.

I still don't think you give the rest of your mod enough credit. Cities don't feel alive because of happiness...they feel alive because you made specialists and buildings actually interesting. You made an AI I actually have to compete against. You made subsystems like WC and CS and even Archeology fun bursts of enjoyment in the game.

In fact I'll say the system does the complete opposite. There is nothing (and I repeat nothing) in this game that sucks out my enjoyment faster than an unhappiness spiral. I have faced runaway AIs that I know I could never beat, but I had a blast giving it my best try. But I have had games where I just sat there watching my cities leave me to revolt...and I've near thrown my keyboard and wondered if I would ever play again. Its literally that frustrating.

The model punishes players long-term for short-term mistakes. Over-expand in Classical? Well, have fun dying in industrial to Distress. G

This is probably the best summary of what is wrong with the happiness concept currently. This is partially why people find the system so Opaque, they literally play the game thinking they are playing well....and are only told "oh....you really shouldn't have done that" 200 turns later. Feedback systems work best when they are immediate. In fact the more immediate the feedback, they better they work.

A good example of this is the fact I cannot expand at -10. That is a very nice warning flag to a player (hey...maybe you should deal with that unhappiness...more expansion is a very very bad idea!).

So no....having your happiness crater in Industrial due to Classical mistakes is not a good idea. That said, the idea above about giving me a building (how about Public Works as a name?) that helps me to correct my mistakes is a great idea and may help a lot.

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.
 
That doesn't mean much when nobody, not even the veterans, can agree on what the system actually does or how the math behind it operates. Look at this thread and the new version thread with BiteInTheMark and the others not reaching an agreement. It means it's not clear. This thread and the current release thread are basically Math Enthusiast Group, not Vox Populi group.

I'm fine with not a single soul understanding the thing if my empire is happy if I have the right buildings. If it's not and I have every relevant building only to stay unhappy, then it's not only my citizens that are unhappy, but I am as well and I start trying to comprehend the system to understand what's wrong with it or what's wrong with the city that has 3 luxuries, several bonus resources and is constructing buildings constantly. The answer isn't clear.

All I know about the current version's system is the happiness should be renamed to hapainis because it'd sound almost the same but it'd more accurately convey how much of a pain it is to manage.



That is a really horrible idea. Happiness is not fun to manage, especially not one from a system I cannot understand that is not meant to punish me instantly, but 300 turns later to the point my empire is "dying" - and that is by design? I can't believe you'd aim for something like that after you've spent I'm not sure how many versions trying to remove inexplicable happiness losses in Industrial era, only to have the inexplicable happiness losses happen every time every era in this version.

How is a new player meant to know what overexpansion in classical era is when he doesn't immediately see the effects? In fact let's be honest, how am I - a veteran - meant to know what that is when the system constantly changes and the amount of cities I can seem to have also changes every second version, all for what appears to be no reason for me? The version before 17th February was relatively easy to stay happy in, so I was pleased despite not knowing everything. There were many such versions where most of the problems were only periodical, sometimes only when waiting for courthouses to be built.

Right now I don't know how many cities I am supposed to settle, the amount changes every so often. I want clarity, so the game should tell me exactly how many cities are permitted at which point if the system is designed to punish. I don't want the game to not be about fighting the AI civs, but a struggle against an incomprehensible and harsh happiness system. I don't know how many cities I can have, I tried a few games and every time it felt different. Last game I made the system more lenient by modifying the files, but it's only going worse somehow.

In fact, you could add the "overexpansion" notice to the Settler description for ultimate clarity. "If you get more than 'X' cities before turn 'YZA', your empire will die of unhappiness in 'H' era" would work just fine. Maybe add it to the conquest choices, like "annexing this city will get you above the permitted 'YZA' city number and you might get 1 Distress per pop in every city in the next era despite having every Distress reducing building, wonder and even Autocratic New World Order, and even if you deal with Distress it's still going to be 1 unhappy per pop because there's 10 poverties and 8 boredoms hiding in the shadows". If this is intended, mention it.

What does overexpansion mean? It appears subjective. It's rare I settle more than 10 cities in classical era. I can get more, but the majority of these is conquered. Is that overexpansion? This term should be defined in a way that is clear. How many cities should an empire have? Should Domination victory be impossible without -100+ unhappiness as the required 40-60 cities to get all capitals on standard is definitely overexpansion?

Sorry for the rant, I actually love your effort, determination and the project as a whole, but I just don't understand why would you aim for this after dozens of versions trying to remove late-game inescapable unhappiness problems. That's why I made this wall above.

Reread my post. I’m not advocating for dying in industrial from classical expansion. I’m saying that it’s currently an issue that players experience that needs corrective measures.

G
 
I think if you overexpand in classical you should have unhappiness in the classical era, not the industrial era. Isn't this a more logical approach?

What I dislike, and I expect others do too, is to play a game for 150 turns and then die from unhappiness in the late game. I don't really see a need for happiness to be a major component of the late game. If its my game on a new version how was I supposed to know how to much to expand? All this is to say that I wouldn't mind loading up late game social policies with happiness boosters.

Your idea of a building that lowers need is fine too.

Same as Enrico- you’ve misread my post. I’m not advocating for this model. I’m saying it’s how it works now, and it’s a source of ire.

G
 
Same as Enrico- you’ve misread my post. I’m not advocating for this model. I’m saying it’s how it works now, and it’s a source of ire.

G
IDK how to add more unhappiness in classical era. I find classical era happiness extremely easy. I always go heavy negative in ancient, then at some point my empire just recovers with no clear reason why.

I thought it works like this, and I felt confident until reading a few essays in this thread.

My median city makes 3 culture per citizen, so this city needs 3 culture per citizen.
I have a building that lowers culture needs by 10%, so I really only need 2.7 per citizen.

Late game should have a lot of % needs reducers, that way you can keep growing. I don't see the need for any needs modifiers that increase your needs. Is there one that increases needs per city, based on number of cities? That seems like a really bad inclusion to me. I read about that but I can't really tell what is going on.
 
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.
 
Last edited:
This is my set of fixes to the current happiness system:

1. Make proportional comparisons to the reference value. Whatever it is, please, make it proportional, not absolute, or we will keep having scaling issues. Proportional is {City value / Reference value}, Absolute is {City value - Reference value}

2. Use a dynamic reference that cannot be easily manipulated. What became crazy with the inclusion of the player's median city efficiency is that, suddenly, we were able to manipulate the reference value, and this makes some weird, difficult to understand, strategies. I'm fine with the reference value being world yield efficiency, as we have been using so far. The player's median citizen efficiency will do, too, as it is too hard to manage the exact population in every city.

3. Make penalties self-correcting. So far, being under -10 happiness prevents settling more cities, which is good. Also, empire unhappiness currently reduces growth, which is fine, but not enough because it doesn't prevent growth in the most offending cities. I'd change this penalty to growth to something more local, effecting where the real problem is. For example, make unhappy citizens 'eat' more food, like 50% more food than a happy citizen.
Currently, food consumption is 2 * N + k * S, where N is the size of the city, S the number of specialists, and k is the era scaler. Unhappiness could be included as a factor, increasing 50% for each unhappy citizen: 1 + 0.5 * U / N, where U is the number of unhappy people in the city, and N is the size of the city (0 unhappy people gives no extra consumption, 100% unhappy people gives extra 50% to food consumption).
Food Consumption = (2 * N + k * S) * (1 + 0.5 * U / N)
I understand that starving a city comes with its own happiness penalties, but those can be removed. Starving is a penalty in itself. I've considered other growth penalties, but this one is the only one that allows a recently settled city to grow a little so it can start producing buildings in a reasonable time.

4. Temporary tools: processes. It has been proposed that city processes help fighting unhappiness, but they must do this in a way that doesn't make it impossible to recover later. A city process is the most temporary solution one could think of, since the city cannot build anything while working on a process, it is an action that must be used with discretion. Precisely due to the limited usefulness of a process, when a process is active it must be impactful. For example, the farming process should completely remove distress, culture process should remove boredom. Then, defense process could simply halve unhappiness in the city.
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.
 
Back
Top Bottom