There are many discussions about the subject [TO DO: links]. The consensus seems to be that the fun that can bring into game is worth the extra gameplay complexity and the efforts to implement it.
FreeOrion certainly does not model species/populations integration into empires: you invade a planet and that's it. The following proposal focuses on a very basic (at least for starters) distinction between oppression/domination and cooperation within an empire (obviously, cooperation is related to diplomacy, but diplomacy among empires is something apart from this suggestion) to model this last issue: population (and species) integration/assimilation into an empire.
One old thread from 2005 with interesting discussion on this matter, but not very specific on implementation.
My general idea is:
Oppression forces stability despite of low loyalty/happines. Benefits from conquered populations are taken by force, there is no negotiation. The losers do whatever the winners want. Good for empires that progress through brute force.
- Pros: fast to get benefits from conquered planets; dominated populations have a bonus for industry; have more means to counter civil revolts.
- Cons: require military investment to keep populations under control, or the resulting unstability disables the planetary output; unstable planets can revolt and defect to foreign empires; dominated populations have a malus for research and influence.
- Pros: the integrated populations are more loyal and stable, harder to revolt and to persuade to defect to forein empires; if they become loyal (happy) enough, they get a bonus to production of research, industry and influence (*).
- Cons: the process of integration takes more time, so the benefits from the integrated populations take more time to kick in; if stability and loyalty drops down for whatever reasons, the resulting revolts are quite difficult to halt.
And now what really concerns me: how to put this into a tech tree, and what would be the underlying mechanics. First the latter.
Base underlying mechanics:
- Stability, S, affects planetary population. A simple formula could be production_meter = Value*S/threshold. Stabilities over threshold get a bonus, under threshold get a malus (*).
- Stability is equal to the maximum of security and loyalty-to-current-owner, possibly adjusted by other effects aside from whatever affects loyalty/security themselves (I can't come up with any right now).
- Each planet has one loyalty meter per each empire, Lx, subject to 0 <= L1+L2+...+Ln = L* <= 1. When some effect increases the loyalty to one empire and L* is already 1, the loyalty of all other empires will be reduced proportionally to ensure L*=1. When some effect reduces the loyalty to one empire (minimum 0), other empires does not get extra loyalty, so L* decreases.
- Each planet has a security value. How to calculate this, I'm very unsure.
Krikkitone proposed that security does not need to be a meter (with memory), because it could be calculated every turn based on local troops (plus any relevant effects coming from buildings, policies, techs that we could come up aside from the modifiers to troops meter itself).
That seems a good idea, but it does not marry well with the two first ideas for the mechanics, because troop meter starts at very low values and can reach very high values, and such a big range in the course of the game makes impossible to balance the bonus/malus to production.
Also, it would mean that researching defence troops (resistance to foreign invasion) is the same than increase resistance to revolts, while it might be adequate to decouple both effects (I'm a sea of doubts).
In any case, security and loyalty ranges should be paired/balanced in a way which ensures that very happy/loyal worlds are more productive than very secure (oppressed) worlds. For example, if we take maximum loyalty is 100 (instead of 1), a good maximum for security could be around 70. So defence troops should never be bigger than that. Troops can reach 150 for certain species. If security does not take into account species defence troops traits, and maybe some other, it could work. Numbers must be crunched. Early game we have very low troops (2, 10, ...), hence low security. If the threshold for the malus/bonus to production is set at 50 stability (so that having stability 5 means you get only 10% of normal production), we criple production on early game, as to break the game (not sure). If we set a smaller threshold to solve that, 10 or 20, we get huge production bonuses late game (from stability values close to 100), that also break the game.
Maybe the solution is to complicate a bit more the mechanics. Set a low stability threshold (e.g. 20, so that stability 10 means 50% production), keep the malus lineal to stability and make the bonus to production not lineal to stability, so that S=40 (double the threshold) does not give +100% bonus but something like +10% (up to +50% or +100% at S=100).
production_meter = Value*( min(S,threshold)/threshold + max(0,(S-threshold)/(100-threshold)), or something similar.
Let's disembowel this to see if it is really viable or how can it be improved.