• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Stellaris Dev Diary #122 - Planetary Rework (part 2 of 4)

Hello everyone and welcome to another Stellaris development diary. Today we're going to continue on the topic that we started on in last week's dev diary: The Planetary Rework coming in the 2.2 'Le Guin' update. As this is a massive topic that affects many areas of the game, we've split it into four parts. Today's part is going to be talking about Pop Jobs, Strata, Housing, Growth and Migration. As before, any screenshots are likely to feature placeholder art, unpolished interfaces and non-final numbers.

Pop Jobs
In the Le Guin update, Jobs is the main way through which resources are produced on planets. Jobs come in two main types, Capped and Uncapped. Capped Jobs are Jobs that are limited by what the planet can offer, for example, you can only have as many Pops working in mining as you have Mining Jobs from Mining Districts. Uncapped Jobs, on the other hand, can always be worked by a Pop that fulfills the requirements, but generally require a specific trait or species right setting. For example, a species that is set as Livestock will work in a special Livestock Job that requires no upkeep, produces food each month and makes the Pop working it require very little Housing (more on that below). Pops will automatically fill empty Jobs that they are capable of holding, and each Job has weights that make them more or less suitable for a specific Pop - an Industrious Pop will be preferred over a non-Industrious one for a job that produces Minerals, for example. Pops that are more suitable for a Job than the current Pop holding the Job may take it from it them, so constructing a bunch of Robot Pops with mining equipment will likely see your organic Miners losing their jobs in short order. The player can set the priority of specific Jobs, ensuring some Jobs are always filled before others, but there is no manual assignment of specific Pops to specific Jobs, as that is one of the more micromanage-y aspects of the old tile system that we wanted to get away from.
2018_08_23_0.png


In addition to resource production, there is also a wide variety of Jobs related to administration and tending to the needs of other Pops. For example, Clerks are service industry workers, 'Space Baristas' that produce a small number of luxury goods and increase the Trade Value of the planet as a result of domestic economic activity in your cities, while Enforcers are your police, working to suppress dissent and reduce Crime on the planet (more on that next dev diary). Some Jobs are rarer than others - Crystal Miner Jobs are only possible on planets that have Rare Crystal deposits, and some anomalies add unique planetary features that create Jobs which might only exist on that particular planet. Some Empires, such as Hive Minds and Machine Empires, also have their own special Jobs that are not available to others. Jobs are fully moddable and come with auto-generated modifiers and functions that make them very easy for modders to add to planets.
2018_08_23_1.png


Strata and Unemployment
Whether or not a Pop holds a Job, the vast majority of Pops will belong to a Stratum, representing social classes and other broad segments of the population. The exact Strata that exist in an empire depend on the type of Empire you're playing, but for regular (non-Gestalt) empires, the population will usually be divided into the following three categories:
  • Rulers: This stratum represents the government and wealthy elite. Ruler Pops have a much greater impact on Stability (more on this in next dev diary) than the other two classes and require a great deal of Luxury Goods to stay happy.
  • Specialists: This stratum represents the educated population working in more prestigious and highly paid jobs. Specialist Pops typically work with refining resources or performing intellectual tasks, and require more Luxury Goods than workers in order to stay happy.
  • Workers: This stratum represents the vast majority of the working population. They generally work with raw resource production and require fewer Luxury Goods than Rulers and Specialists.
2018_08_23_3.png


In addition to these three, there are certain special Strata for Pops that fulfill specific conditions, such as the Slave stratum for enslaved Pops. Slave Pops usually require no or almost no luxuries, but are generally only able to hold Worker-class jobs. Each Job is associated with a specific Stratum (such as Ruler Stratum for Administrators and Nobles), and a Pop that takes that Job will usually be instantly promoted to said Stratum. However, while promotion of Pops to a higher Stratum may be quick and painless, demotion is not. A Pop that becomes unemployed will keep the Stratum of the Job that it used to occupy, and will refuse to take a Job from a lower Stratum, even if there are open Jobs available. Over time, these Pops will demote down to a lower Stratum, but as Unemployment can cause quite a bit of unhappiness, having unemployed upper class Pops can be a serious source of instability for a planet while those Pops are demoting. This effect is more pronounced in a stratified empire, as the lack of social safety nets increases the Happiness penalties for unemployment.
2018_08_23_5.png


Housing
One of the major reasons we decided to rework the tile system was the limitations it placed on planetary populations - not just limiting us to an absolute maximum of 25 pops, but also ensuring that planets could never be over- or underpopulated, as the ideal number of Pops on a planet would always be equal to the number of tiles. In the Le Guin update, the hard restriction of one Pop per tile has been replaced with a soft cap known as Housing. Housing is a value on the planet that is primarily provided by Districts, with City Districts giving far more Housing than their resource-focused alternatives. Each Pop requires 1 unit of Housing by default, though the Housing demands of individual Pops can change due to a wide variety of factors such as Traits, Stratum, Job and so on.
2018_08_23_5-2.png


For example, a Robot Pop that is not sapient or has not been given Citizen Rights requires far less housing than an ordinary Pop, as the storage and support infrastructure they require occupies significantly less space on the planet than the dedicated housing occupied by your citizens. Housing is not a hard limit, and the housing requirements of Pops can exceed the available Housing if the planet population continues to grow without additional Housing being constructed. This is called Overcrowding, and will result in a variety of negative effects such as reduced growth speed and lowered Happiness/stability, but also increases the Migration Push on the planet (more on that below), so a small amount of Overcrowding may actually be desirable on your heavily populated planets in order to grow your new colonies.
2018_08_23_6.png


Growth and Migration
Migration is a concept that's never quite worked out to be as interesting as it should be in Stellaris. While there were a lot of mechanics related to how Pops moved and why, these mechanics were quite opaque, and the wholesale movements of Pops that simply packed up and moved to another world resulted in a mechanic that often felt more like a nuisance to the player than anything, as Pops would leave critical buildings on your core worlds untended to in order to settle down on some newly colonized ball of ice on the other side of your empire. For this reason, when reworking the migration mechanics, we decided that the new system would tie more directly into Pop Growth and make it more clear what benefits you were receiving from migration on a planet.
2018_08_23_8.jpg


Under the new Growth and Migration system, each Planet has five different main variables that determine its demographical direction: Pop Growth, Pop Decline, Immigration Pull, Emigration Push and Pop Assembly. I will go over each of these in turn:
  • Pop Growth: This is the base level of Pop Growth on the planet from natural reproduction and immigration. A Planet will only have a single growing Species at any given time, but is not limited to the Species alreadyliving on the planet - any Species with theoretical access to the planet through migration will be able to start growing on a planet, and when choosing a Species to grow, planets will generally prioritize Species that are under-represented on the planet, meaning for example that an empire with Syncretic Evolution will generally have both its Species growing in turn on any new colonies, instead of being limited to only the Species that they used to colonize the planet. The rights you have assigned to Species will factor into this, so a Species with Full Citizenship will get far higher weight when deciding which Pop to grow next than one that merely has Residence. Habitability is also a major factor.
  • Pop Decline: Pop Decline represents the decline of certain Species on the planet, and usually is a result of shifting demographics or Purging. Overcrowded Planets that have over-represented Species will have those Species begin to decline in numbers and be replaced by newly growing, under-represented Species. This means that planet demographics will change over time, for example having your homeworlds turn more cosmopolitan and multi-species over time as a result of signing Migration Treaties as a Xenophile, or your privileged main species with Full Citizen moving onto conquered planets and replacing the less privileged population already living there as a Xenophobe. Purging a particular species will essentially guarantee that Species' rapid decline, creating massive amounts of Emigration in the form of Refugees if Displacement is used.
  • Immigration and Emigration: Each Planet has an Immigration Pull and Emigration Push value generated by factors such as Housing, Stability, Unemployment and so on. By subtracting Emigration from Immigration, the overall Migration state of the planet is calculated. A planet with more Emigration than Immigration will have faster Pop Decline, but will also 'export' its Emigration value to a general Migration Pool that is distributed among potential immigration targets. Planets with higher Immigration Pull will receive a greater share of this migration, which is converted directly into Pop Growth. Normally, Planets can only send their Emigration to planets in the same empire, but signing Migration Treaties or accepting Refugees will allow you to receive migration from planets outside your borders.
  • Pop Assembly: Pop Assembly represents a planet's capacity for constructing artificial (generally Robotic) Pops and comes from certain Jobs provided by special buildings. Each unit of Pop Assembly provided by Jobs will automatically contribute 1 growth towards the next artificial Pop being built on the planet. A Planet can have both Growing and Assembling Pops, and there is no link between Pop Assembly and Emigration/Immigration asides from the potential for assembled Pops to create overcrowding and unemployment.
2018_08_23_9.png


That's all for today! Next week we'll continue with part 3 of the Planetary Rework dev diaries, on the topic of Happiness, Stability and Crime.
 
Last edited:
Few questions, @Wiz

1. Suppose my primary pop has no bonuses to food but takes farming jobs. Then we get a different species that is great at farming, but they are weak (-5% minerals) and the only jobs open are mining. Will the pops swap jobs so the good farmers are farming and my primary pops are mining, or will the new pops just take the mining jobs and neither will swap because they already both have jobs?

2. If we have agrarian Idyll, and farms give both food and unity, will it prioritize a pop that has more food output or more unity output?

3. A pop being demoted from nobility to farmer is obviously going to be very upset, but what about the reverse? I doubt a farmer has the skill and education to instantly become an effective administrator, so while they'll be very happy about the promotion will there be a decent production penalty for newly promoted pops?

Good luck on your programming!
 
I would guess the reason is that if you do that either it is a killer performance wise, or it leads to a lot of slow pop growths happening at the same time in cosmopolitan empires. To illustrate what I mean, say you are playing as a xenophobe empire, you have only one species. You now have 1 growing at say 20 'growth points' a year. If it took about 100 'growth points' then you would get another pop in 5 years. but for the next one you would now be able to use that one pop to help grow the next, so say for argument sake you now have 25 growth points, its now 4 years till the next pop. now you have 3 more years till the next pop give or take. It takes you 9 years to grow 2 pops, and in 20 years you will have about 5. Now suppose you are a xenophile empire. You also have 20 growth points a year, but have to divide it in 2 for you two species in this hypothetical scenario. so you get 2 new pops in 10 years, already lagging behind. I could continue but I believe you get the idea. The problem only gets worse the more species you have. This off course destroys balance because now you as a xenophile empire are always going to be a little bit behind,being more behind the more pops you have. Although there probably are ways for you to match this with modifiers those would just as easily become exploitable.
I understand that argument completely. Here I have a solution for you: what if the new pop is generated as the first "new" human is generatet, with an efficiency according to his growth status. This would eradicate not only the problem you mentioned, but also the illogicality that the new born/immigrated citizens are doing nothing until there are enough to construct a new pop.
 
Will a species' homeworld have any special attraction for them? It would make sense to me that the cradle would hold a special place for species, especially ones that don't lean towards xenophilia.

Especially if the homeworld isn't the capital

I really like this idea. It would be nice if there were some way to attract surviving refugees of a species to their homeworld if you recapture it after they've been purged by a third party.
 
Yah, I am excited about the redesign overall. The single pop growth could potentially be alright... But the weighting as currently described sounds terrible.

I mean, the description may be incomplete, but weighting towards equalizing representation makes no sense to me from either a gameplay or verisimilitude viewpoint. The only place where it makes sense (again, by either criteria) is migration of a species to a planet with low representation that has plentiful jobs for it.
 
I think the 'one population growing' is an elegant way of simulating a lot of demographic stuff happening without cluttering the game up with a ton of charts. Of course, if species A B and C are all on the planet and A is the next one up, that doesn't mean that B and C have all decided to stop growing. It just means that the next species to have an amount of population large enough to count as a unit of 'pop' is species A. Which would mean, if I understand correctly, that Slow Breeder wouldn't 'slow down' the pop growth at all. They just would be reduced in frequently that they show up. (and vice versa)

The only thing I'm still trying to wrap my head around is the 'if there's less of a species, they'll show up more often'. I mean, it seems to be mostly to avoid a vicious cycle. After all, if we do the intuitive thing and say 'if there are more of species A than Species B, Species A will spawn more' that is likely to result in Species B being spawned less and less, and makes truly 'cosmopolitan' planets difficult, because any small plurality will snowball. But as Wiz said, RP is an important part of it, and it feels a bit immersion breaking that as soon as one pop of a species appears on a planet, they will start rapidly rushing to be there in equal number to the other species. Because as Wiz explained it, it seems to be one of the heavier weighted things, with an 8-1 ratio on a plennt pretty much guaranteeing that the species that is on 1 is gonna be the one to breed faster, and is likely to completely prevent any pops from the majority species to show up for a while.

We'll see how it turns out, I'll be eagerly playing anyway.
 
so, best i can figure for small races to grow faster than larger ones, is possibly ability to not compete over the same resources or terrain, even a little, allowing the races to wiggle into cracks that other races couldn't fit into. but this only makes sense on a world approaching overcrowding or higher.
 
Just thinking, an empire that is "tall" may be forced by it's overcrowded planets to go to war due to instability from unemployment. War is necessary not just to grow, but to keep your government functional.

This also leads to militaristic governments possibly gaining bonuses to soldier growth on overemployed planets, and overpopulation being useful despite it's negatives. Deliciously deep in it's functionality. War becomes much more useful than just increasing the size of your borders. Perhaps soldier pops might be attracted to planets need enemy planets while higher class pops might try to migrate away.

Also, there could there be space pops with jobs (e.g. on trading fleets that are attracted to planets/systems with positive economic growth) Travel on space fleets would provide even more growth on said systems, but also increase space crime pop growth (pirates), so you might need to provide a police fleet to protect those merchant fleets on shipping lines).


This could be SOOOOooooooo good.
 
it feels a bit immersion breaking that as soon as one pop of a species appears on a planet, they will start rapidly rushing to be there in equal number to the other species.
It doesn't even have to appear on the planet. Remember this part of the DD?
A Planet will only have a single growing Species at any given time, but is not limited to the Species alreadyliving on the planet - any Species with theoretical access to the planet through migration will be able to start growing on a planet, and when choosing a Species to grow, planets will generally prioritize Species that are under-represented on the planet
If one pop of a species appears anywhere in your empire (and has free movement), they'll start rushing to be on every planet habitable to them in equal numbers with the species already there.
 
thats human like behaviour enforced on every alien race in your game. i find that kinda dissapointing.
what if there are alien races with a different mind set, where pops are not like "what!? no, i wont do that low tier job lul. give me candy pls."
with the current system this is not possible i guess?

I’d be surprised if we didn’t get species traits and civics related to this.
 
Hmm... still nothing addresses inevitable overpopulation of the galaxy. Will species, at least, start to decline due to food shortage? (not to mention that planetary bombardment should, logically, stop any empire food from getting to the planet)
 
Hmm... still nothing addresses inevitable overpopulation of the galaxy. Will species, at least, start to decline due to food shortage? (not to mention that planetary bombardment should, logically, stop any empire food from getting to the planet)

I think population is controlled by the supply of housing and the supply of housing is controlled by the supply of districts, of which every planet has a finite number.
 
Will it be possible to sign one-direction migration treaty... or even better.. allow immigration/emmigration to/from other empires based on species and open borders
E.g. more options in migration control menu
 
So I probably missed something in all those pages but....

...will this new Migration mechanic also take habitability into account? Or will species deliberately migrate to planets where the environment makes them miserable just so that every species is represented?

Aside from that I quite like the idea, it's also such a bother to have a multi-species empire and then your older coreworlds you created before encoutnering/incorporating other species will still be mono-species...
 
I understand that argument completely. Here I have a solution for you: what if the new pop is generated as the first "new" human is generatet, with an efficiency according to his growth status. This would eradicate not only the problem you mentioned, but also the illogicality that the new born/immigrated citizens are doing nothing until there are enough to construct a new pop.
I see what you mean and while it probably would solve the problem it would also probably be really really bad for performance,because each day these new pops have to be reevaluated to see how much growth they add. Whilst probably not a problem on smaller maps it could really lead to horrific slowdowns later down the line.
 
The logical solution is to ditch the one pop at a time rule for everyone. If every single pop generates another pop of the same kind as itself, whenever the space exists to expand we have no problem at all. We just reduce the speed of pop growth overall to be more realistic (that is slower) and everyone wins.

Except the devs are in effect doubling down on the 1 pop at a time growth rule. :(
Here's the thing though why would you have 10 different pops of the species growing at the same time? why not just combine them, after all for all effects and purposes they are the same and could be clumped together. It'll just annoy a large percentage of the player base. In addition slower pop growth is just going to slow down the game in addition to the slowdown from ftl.

Also its not necessarily realistic that pop growth would at all be slow in a space faring civ, with virtually unlimited resources its in fact quite likely that you are going to have massive pop growth. I'm not saying that it will happen, just that its far from impossible that populations will explode within relatively short times
 
I think the 'one population growing' is an elegant way of simulating a lot of demographic stuff happening without cluttering the game up with a ton of charts. Of course, if species A B and C are all on the planet and A is the next one up, that doesn't mean that B and C have all decided to stop growing. It just means that the next species to have an amount of population large enough to count as a unit of 'pop' is species A. Which would mean, if I understand correctly, that Slow Breeder wouldn't 'slow down' the pop growth at all. They just would be reduced in frequently that they show up. (and vice versa)

It does look like having one pop growing at once produces the same outcome as splitting growth points between multiple species all growing at the same time (weighting for less populous species notwithstanding; see below). An example...

Assume we have two species. One is rapid-breeding (+100% growth speed) and one is slow-breeding (-50% growth speed). Say a planet generates 20 growth points per year, which is split proportionately between all growing species on a planet, and a new pop is grown every 100 growth points. Assuming both species start at equal numbers, that means that in 100 years:

- The fast species grows 20 pops (20 growth / 2 = 10 growth per year; 10 growth per year * 2 = 20 actual growth per year; 20 * 100 years = 2000 growth points; 2000 / 100 = 20 pops grown)
- The slow species grows 5 pops (20 growth / 2 = 10 growth per year; 10 growth * 0.5 = 5 actual growth per year; 5 * 100 years = 500 growth points; 500 / 100 = 5 pops grown)

Now the same system but with only one pop growing at a time. The pop chosen is random, with weight modified by the species growth speed modifier. So the fast species is twice as likely to be picked as normal, and the slow species half as likely. That means that the fast species has an 80% chance of being selected and the slow species a 20% chance. On average, starting with the same number of each species, therefore 4 fast species pops will grow for every 1 slow species, or for every 20 fast pops born, 5 slow pops will be born. That's the same ratio as with the growth-split system above over 100 year period. Now let's see how long it takes for those pops to grow:

- It takes the fast species 50 years to grow 20 pops (growth speed = 20 * 2 = 40; 100 / 40 = 1 pop per 2.5 years; 20 * 2.5 = 50 years)
- it takes the slow species also 50 years to grow 5 pops (growth speed = 20 * 0.5 = 10; 100 / 10 = 1 pop per 10 years; 5 * 10 = 50 years)

That's a total of 100 years, exactly the same as the growth-split system. In other words, over the same time period with the same growth rates, the one-pop-at-a-time system produces the same outcome as splitting growth between multiple pops, but with the advantage of growing whole pops in one go (so having lots of species on the same planet doesn't result in longer times to get whole pops). Point being, growing one pop at a time is fine.

The only thing I'm still trying to wrap my head around is the 'if there's less of a species, they'll show up more often'. I mean, it seems to be mostly to avoid a vicious cycle. After all, if we do the intuitive thing and say 'if there are more of species A than Species B, Species A will spawn more' that is likely to result in Species B being spawned less and less, and makes truly 'cosmopolitan' planets difficult, because any small plurality will snowball. But as Wiz said, RP is an important part of it, and it feels a bit immersion breaking that as soon as one pop of a species appears on a planet, they will start rapidly rushing to be there in equal number to the other species. Because as Wiz explained it, it seems to be one of the heavier weighted things, with an 8-1 ratio on a plennt pretty much guaranteeing that the species that is on 1 is gonna be the one to breed faster, and is likely to completely prevent any pops from the majority species to show up for a while.

So it's actually this that is the problem, because it doesn't make any sense and causes problems like those outlined here. I can see the logic of weighting less numerous species when factoring in migration, but then you're actually weighting migration rather than species number per se.

I wonder whether part of the problem is the rolling together of natural population growth and migration into the same thing. I.e. a planet cannot grow pops from natural growth and migration separately - either there is a immigrating species (which overrides any natural growth on the planet), or there is natural growth (with no immigration at all, unless they happen to be the same species). I am inclined to think that separating these out might work better, i.e. you have natural pop growth (along the lines outlined above) and then migration as a separate growth/decline system. That could take up the same UI space (the "decline" UI slot is replaced with a "migration" slot, which might be immigration or emigration depending on the context), and since most decline is likely to be from migration anyway, I don't see it causing any significant problems compared with the extant suggestion.
 
Here's the thing though why would you have 10 different pops of the species growing at the same time? why not just combine them, after all for all effects and purposes they are the same and could be clumped together. It'll just annoy a large percentage of the player base. In addition slower pop growth is just going to slow down the game in addition to the slowdown from ftl.

Also its not necessarily realistic that pop growth would at all be slow in a space faring civ, with virtually unlimited resources its in fact quite likely that you are going to have massive pop growth. I'm not saying that it will happen, just that its far from impossible that populations will explode within relatively short times

The game is supposed to be played over a period of centuries, 'slowing down the game' is sometimes what we need. Population growth is presently far too fast to be in any way realistic, it should take a few decades to increase your population and I happily mod the game so the population growth rate is far slower, to no ill effects at all. Population growth needs be brought into line with the pace of the game in general, it is presently too fast but it makes sense to tie it into technology.

Clumping them together slows down population growth and essentially represents the way that populations of at least most creatures within a given environment behave. As the total population goes up, the rate of population growth goes down as fewer babies are born per adult, this counteracts the fact there are more adults meaning a greater potential to reproduce so we end up with a linear population growth 1+2+3+4 rather than 1-2-4-8-16-32-64. That means Malthus is wrong and we don't all end up starving to death, which is why all creatures have evolved to work that way.

However this principle is based upon population density, not the total number of the creatures in existence. If we are dealing with the expansion of the population into empty space, rather than the increase of the population within a given already inhabited place, then it is likely that the exponential growth should apply instead. It is very silly to impose a linear increase in this situation, so that every pop has to wait patiently for the last pop to be born, even if the linear increase is very fast.

The answer is to have pops operate like bacteria engaging is cellular division, until the number of housing slots are fill and deal with immigration SEPARATELY on a 1-in, 1-out basis. We encourage things to become more cosmopolitan not by artificial population boosts, but by diversifying the terrain of the planets to make housing slots that are uninhabitable to the main species but might be inhabitable to other species of a different terrain preference.
 
1. Suppose my primary pop has no bonuses to food but takes farming jobs. Then we get a different species that is great at farming, but they are weak (-5% minerals) and the only jobs open are mining. Will the pops swap jobs so the good farmers are farming and my primary pops are mining, or will the new pops just take the mining jobs and neither will swap because they already both have jobs?
Yes, explicitly:
Pops that are more suitable for a Job than the current Pop holding the Job may take it from it them, so constructing a bunch of Robot Pops with mining equipment will likely see your organic Miners losing their jobs in short order

2. If we have agrarian Idyll, and farms give both food and unity, will it prioritize a pop that has more food output or more unity output?
Agrarian Idyll can work very differnetly. If they wanted to keep the whole "Farms produce minerals/unity" thing, they could just add extra Mining/Unity jobs to the Farming Districts. That would make it a non-question: Miners work mining Jobs, Farmers work Farming Jobs, Unity people work Untiy jobs.

With the new Economic System, there is now a ton of new Ways to implement old Civics.
Same way Aristrocratic Elite changed with Introduction of variable Leader Level Caps.
Same way it will change again with introduction of jobs.

3. A pop being demoted from nobility to farmer is obviously going to be very upset, but what about the reverse? I doubt a farmer has the skill and education to instantly become an effective administrator, so while they'll be very happy about the promotion will there be a decent production penalty for newly promoted pops?
While it would be realistic, it does not sound like a Fun mechanic. There is enough abstraction to basically ignore that for gameplay purposes.