• 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.
Showing developer posts only. Show all posts in this thread.

Eladrin

Stellaris Game Director
Paradox Staff
Apr 4, 2019
992
34.955
www.paradoxplaza.com
Hello everyone!

This week we’re going to look at the upcoming changes to Pops in the Stellaris 4.0 ‘Phoenix’ update.

Last week I said we might also look at the Planet UI, but I’m going to save that until next week since there’s quite a bit to cover here (especially if you’re into the technical details), and I’d rather not split the feedback.

Pop Groups and Workforce​

As mentioned in Dev Diary 366, the Pop and Jobs system introduced in Stellaris 2.2 ‘Le Guin’ has always had significant performance implications in the late game, and we’ve been working on incremental improvements ever since. In the Stellaris 4.0 ‘Phoenix’ update, Pops will be grouped into Pop Groups based on species, strata, ethics, and faction, and these Pop Groups will produce Workforce that is used to fill (or partially fill) Jobs. As part of this change, we’re changing the overall scale of Pops - most things that previously affected or manipulated 1 Pop would now affect or manipulate groups of 100. The new systems can manipulate any number of Pops within a Pop Group just as easily as manipulating one, and I’ll go into some of the benefits of the finer resolution below.

Our primary desire with these changes is to improve late-game performance, but while working on it we took the opportunity to streamline some aspects of planetary management and improve the planet UI.

Let’s take a closer look at some of the details.

Workforce

In Stellaris, the core economic loop since 2.2 has been: Pops fill Jobs, and Jobs produce resources.

With the 4.0 ‘Phoenix’ update, we’re making a subtle but important change - Pops will now generate Workforce, which is used to fill Jobs, and planets themselves will produce resources.

At a basic level, this works almost the same way. By default, every Pop generates 1 Workforce, so Jobs are still filled at the same rate. However, this shift is crucial for backend performance improvements, reducing the number of calculations the game needs to make each month.

Example: Then vs. Now​

Before (3.14):
  • Take a planet with 100 Pops working Metallurgist Jobs, where 20 of them have a +10% Production Bonus from a Species Trait.
  • These 100 Pops produce 612 Alloys per month.
  • Every Pop is individually checked - 80 produce the standard amount, while 20 get a 10% Alloy production bonus from their species trait.

Now (4.0):
  • Instead of tracking individual Pops, we track Workforce filling Jobs.
  • The Jobs are now filled by 10,000 Workforce (since Pops are scaled up by 100).
  • 8,000 Workforce comes from regular Pops, while 2,000 Workforce comes from the bonus-earning Pops.
    • The species bonus is now “10% bonus Workforce when working Alloy jobs” - those Pops contribute an extra 200 Workforce, making the total 10,200 Workforce. Bonus Workforce is allowed to go over the required Workforce for a job, yielding extra production.
  • If 100 Workforce still produces 6 Alloys, the planet still produces 612 Alloys - same output, different system.

Why This Matters:​

The key benefit is efficiency. Instead of iterating through and calculating production for every individual Pop, the game now only checks once per planet. This makes the system more scalable and improves performance, while still allowing for species based bonuses and modifiers.

Most existing species traits that affect Job production will be converted into Workforce bonuses or planet-based modifiers. As always, the final balancing will be refined through the Open Beta.

There are a few quirks and subtleties about how this interacts with other modifiers - bonus Workforce as a modifier is more powerful than bonus Production due to the two of them stacking multiplicatively rather than additively.

Pop groups are currently split up by Species, Strata, Ethics, and Faction. If you end up in a case where a Pop group is not completely uniform (for example, if 20% of the Pop group are recent refugees and thus happier than the rest), then the differences get averaged across the Pop group.

If none of this feels like it makes sense - it’s okay. It’s mostly a behind-the-scenes change. Jobs require Workforce to fill them, and that’s generated by Pops. We have some ideas about ways to expand upon this in the future, such as replacing part of the Workforce with automation by using a building.

Pop Growth

With more granular Pop units, we have more ability to support simultaneous growth of Pops on a planet. Each species present on a planet will grow normally, and with the smaller unit size, will grow every month.

This results in several benefits, including multi-species empires not getting their growth dominated by underrepresented species, and also lets us remove the floor on colony Pop growth. This does mean that newly settled colonies will be very reliant on migration to grow their population until they develop to the point where they can support their own Pop growth, and removes a long-running issue where spamming colonies regardless of habitability simply for the minimum flat Pop growth was optimal.

Xeno-Compatibility will pool all species on a multi-species planet together to calculate their growth rate, then split the growth proportionally across the various species.

Assembly works largely the way it did before, except that fractional Assembly will become “microPops” thanks to the finer resolution of Pops. Machine and Organic Assembly will no longer conflict with one another, as the Organic Pops will handle their own growth, while all mechanical assembly will be channeled towards the highest “score” mechanical Pop templates available.

Colonization and Civilians

Since your new colonies will be extremely reliant on migration from their homeworld until they reach a critical mass of inhabitants where they can begin to support themselves, we’re adding a new population stratum called Civilians (or Residents, for species without full citizenship). These Civilians form the generally content base of your empire, and will trickle out to the colonies, looking for better opportunities. Unemployed Pops will still exist and downgrade through the strata, with unemployed Worker stratum Pops demoting to Civilians over time. This will have an impact on stability, as Civilians are largely content and non-disruptive.

This is mostly for you modders out there to abuse, but in the new system, “Unemployed Specialist” will technically be a Job - there’ll be one for each stratum. Every Job can have a demotion target assigned to it, and a time.

In our implementation, all of the Specialist stratum Jobs will demote to Unemployed Specialist; Unemployed Specialist will demote to Unemployed Worker, and Unemployed Worker will demote to Civilian as they give up on their dreams of productivity and veg out in front of the holoscreen.

There are actually going to be many more Strata than I listed there.

Our current list includes the following for regular empires:
  • Elites
  • Elites (Unemployed)
  • Specialists
  • Specialists (Unemployed)
  • Specialists (Slave)
  • Specialists (Slave, Unemployed)
    • For Indentured Servitude
  • Workers
  • Workers (Unemployed)
  • Workers (Slave)
  • Slaves (Unemployed)
  • Civilians
  • Residents
  • Criminals
  • Pre-Sapients
Gestalts would have:
  • Complex Drones
  • Menial Drones
  • Maintenance Drones (Civilian Equivalent)
    • Unemployed Complex and Menial drones demote directly to here, skipping the Unemployed state
  • Deviant Drones
  • Slaves (For Grid Amalgamation, Livestock, etc.)
  • Bio-Trophies
  • Bio-Trophies (Unemployed)
  • Pre-Sapients
There are likely to be more once we’re done, including the various Purge types.

Like many of the other changes, it’s all about removing iteration. Instead of going through the Pops to find the unemployed ones, we already know that any Pops in the Specialist (Unemployed) stratum are, in fact, unemployed. When a Specialist Job opens up, we have a smaller pool of candidates that are pre-identified, and we already have a clear priority of who has dibs on the Job.

In this model, Slaves would demote to the Slaves (Unemployed) Job/stratum and go no further, so they’ll never hit the content state of Residents and Civilians. Based on playtesting, we might end up adding a Slaves (Specialist, Unemployed)

Modders: Technically, there’s nothing stopping you from having a Job “demote” to a higher strata, like if you had a Worker stratum “Academy Cadet” that led to a Specialist stratum “Officer” Job. Just make sure you comment your script.

Your homeworld will start with a fairly large pool of Civilians to support your early expansion. We’re a bit worried about early conquest of homeworlds being too easy of a snowball with this increased starting Pop count, so are considering various ways of making it more challenging to take homeworlds in the early to mid game. One idea we have includes having Civilians create impromptu defensive militias to help defend their home, and possibly starting you off with a few Defensive Platforms. Another idea is for aggressively invaded Civilians to take “Resistance” Jobs that they must then “demote” out of over time. The number of Civilians converted to this new Job and how long it takes them to drop out of it would be modified depending on how their people are being treated by their new and old masters.

We welcome your ideas and suggestions.

Clerks are dead! Long live Civilians!

We’re currently still experimenting with the effects Living Standards have on Civilians (and Pops in general) - it’s likely that more of the Trade generation from Living Standards will be shifted to the Civilian stratum, and production from Unemployed Pops in the old system may also move to the Civilians. This will give them some of the functions of Clerks in the old economic model. In Gestalt empires, they are likely going to be outright named Maintenance Drones rather than “Civilians”.

We’re also renaming the Ruler stratum to “Elites”, so “Ruler” isn’t double-dipping between your Empire’s ruler at the top economic stratum.

Next Week​

Next week we’ll be going through the new Planet UI, and how all of this changes things there.
 
Last edited:
  • 116Like
  • 70Love
  • 12
  • 4
  • 1
Reactions:
I'm still not sure I like this. It feels like having 200 instead of 2 for most jobs will cause the feeling of drowning in zeroes.

12 and 2 feel more distinct from each other than 1200 and 200.

Or maybe use decimals instead of actually increasing the number, so that it's 12.00 and 2.00 instead.

They'll use the shortened notation, so 1200 pops will be shown as 1.2k rather than a ton of zeroes. We experimented with decimal places earlier in development, and ended up hitting the confusion point of "what's 0.03 of a pop - can they work?" Since simultaneous growth was one of my major desires for this revamp, we decided to go with multiplying the numbers instead of having fractions.

I am interested in the effects of xeno compatibility in the late game.
How will having hundreds of crossbreeds affect you compared to the old system?

The hybridization mechanic of xenocompatibility is likely going to be removed. It was cool, but pooling all of the species together for logistic growth calculations feels like a good enough niche for the AP. (I'm actually a bit concerned that it might feel too "required" for Xenophilic empires.)

You say "By default, every Pop generates 1 Workforce" but also "Pops are scaled up by 100". Can you clarify this - is it 100 Workforce per Pop, or 1?

1 Pop produces 1 Workforce. 1 Job will usually require 100 Workforce to fill, so will typically provide work for 100 Pops.

In the new System, will we be able to effectively have a degree of all Jobs on a planet being worked by the available Workforce, even if there are more 'Jobs' available than there are 'Pops'? So for instance on a planet with 5 'Jobs' and 6 'Pops', each Pop fills 0.83 of a 'Job', and so we get 83% of the output of that Job's comparative Workforce? I thought this was implied by the previous Pop system screenshot but it would be good to better understand.

You should be able to have partially filled Jobs. (If you have 83 Workforce in that Mining job, it'll produce and consume 83% of the job's resources.)

I'm surprised there's no further screenshots - even of WIP mock-ups or similar placeholders. It would be really great to see this visually, particularly if things have moved along from the last teaser image we had in (I think?) late Dec or early January.

Right now we're all-in on implementation and there have been rapid changes, we'll have more to show in the near future.

(I relented a little later in this post and gave a small peek at a WIP UI.)

I really like the idea of resistance jobs. With pop groups being tied to factions I can see a good foundation for internal politics with unhappy factions spawning resistance or revolutionary pops.

It seems to be a relatively popular concept, even in the half-baked form that I casually mentioned it as. :D

To be completely transparent, the economic changes are our priority right now and are coming in hot, so we might not get to some of the cool extensions of the systems like Resistance jobs in the initial 4.0 release, but if we don't, they're likely to come soon afterwards. I really like them too.

Will the way workforce is distributed amongst jobs be different from the way pops currently select jobs?

It will be very similar to how they currently select jobs. (Though we're likely to significantly streamline some of the scripts since there were some unnecessary double-calculations going on.) As with pop growth, all declining species will decline simultaneously though.

Questions:
1. How will pop decline will work in the new system?
I'm thinking of a gradual background churn of species as some grow and some decline, slowly changing the overall demographics.

Fairly similarly to how it does now, but with the more granular pop size it'll be a more consistent decline of a number of pops every month instead of one pop every x months.

2. How have pop migration numbers have been changed?
Currently high stability and free jobs can completely overwhelm any sources of migration push (push numbers are too small), so most pop movement comes from automatic resettlement of full unemployed pops instead of migration push and pull. I hope this is looked at.

The auto-migration system that moves unemployed pops around will replace the push and pull based migration system entirely. Unemployed pops and civilians may choose to migrate to the capital of an empire you have a Migration Treaty with (after which they may migrate elsewhere in that empire, or potentially, even back.) We're going to be tweaking some of these numbers for a while once we have everything running according to the base model.

It would be good if Districts became the primary source of jobs and buildings provided only bonuses. So there should be more district types, covering all resources.

Stop looking at the DD371 draft.

(You're close. Not exactly on target with what we're planning, but pretty close.)

Will we have greater control over what species of pop (I guess now workforce) gets assigned to a job, whether that's by manual assignment or species preference? If I'm running a multi-species empire and I want the Intelligent species with Academic Privilege living standards to be my Scientists instead of the Charismatic mouthbreathers I have that's better suited for Entertainers or Servants, will I be able to prioritize them or de-prioritize the Charismatics from taking Scientist jobs?

Pops that are especially good at a job will gravitate towards those jobs naturally. We do not want you to have to micromanage pops to that level.

Cool, now everyone gets to start with an unemployment crisis!

It's kind of the opposite - everyone starts with a pool of workers ready to go into the jobs that you provide as you expand.

We were quite concerned that without them, you would end up with a situation where you were pop-starved in the early game.

I'd also love to see some images, even if they look completely cursed. Especially if they look completely cursed actually

It's still pretty cursed, but fiiiine.

This is part of the Economy tab of Earth. to show off some of how it'll work, I reduced the amount of Artisan jobs and prioritized Bureaucrats.

1739523450989.png


Got a meeting now, I'll continue going through the thread a little later. (I've read through everything up until this morning.)
 
  • 20Like
  • 10Love
  • 8
  • 1
Reactions:
Firstly: Cheers very much for the reply, the additional detail, and this juicy WIP image!

This is all very interesting, and (to me anyway) very positive. Although I am now/still slightly confused about Pop numbers, given they're 'scaled up by 100' in some instances but they still produce 1 Workforce each.
Currently, we normally start with between 24-32 pops, on average. So, will we now be starting with:
A. Still 24-32 Pops (and therefore, as I currently understand it, quite a low Workforce figure?);
B. Between 2,400 - 3,200 Pops (i.e. the current norm * 100 to reflect the up-scaling);
C. Something else - possibly a few hundred to a thousand or so? (i.e. a smaller number of 'equivalent' Pops given the system changover, but redesigned for the brave new world).

I'm deducing that 100 Pops produces 100 Workforce, and so what was 1 Pop's worth of 'Pop unit' has now been increased to 100. So, in effect, 1 Workforce in 4.0 is equal to one-hundredth of a Pop Job in 3.14.15826?

Also, does this mean that Pop Growth (of a particular Pop 'Group') will manifest as 100 Pops gradually growing to 101, 102, 103 etc as the months go on? If so that's really, really cool, and really shows the benefits of the new granularity.

(Also also I really can't wait for the Open Beta of all this - I'll need to know when that is ASAP so I can book time off work and run away from my family for a week to really get to grips with it)

Going by memory here, since I've been working on other things. I'll use "pop" to mean a pop in 3.14 and "Pop" to mean a pop in 4.0

  • A pop is equivalent to 100 Pops.
  • This means that if you started with 32 pops, you'll start with 3,200 Pops.
    • However, you'll likely start with a bunch of Pops in the Civilian strata, so I'd expect the actual figure to be around 5,000 Pops.
  • 100 Pops produce 100 Workforce
    • There will be modifiers to this, for example a cyborg species with the power drills trait may provide +10% Bonus Workforce to Miner jobs.
  • A job that required a pop in 3.14 will now generally be 100 Jobs that require 100 Workforce.
  • Pop Groups should grow simultaneously and gradually, yes
 
  • 10
  • 6Like
Reactions:
I'm a bit confused about the whole Civillian thing. So unemployed POPs demote to civillians, that are... content with being unemployed and give a stability bonus because they are non-disruptive? Huh? So once there is a job to fill civillians will promote to workers and become unhappy? What?
I don't think I understand this system at all.

A broad civilian underclass is present in a lot of sci-fi, usually subsisting on some variant of universal basic income or odd jobs. We envision the Civilians as fitting into that sort of role - they're not exactly happy about their position, and are ready to jump into an opportunity on another world, but aren't generally causing trouble as long as they have their bread and circuses. Living standards, civics, and the like are very likely to have a significant effect on exactly how happy they are.

Can we have propaganda between empires affect growth down to civilians, and have that civilian travel between empires i.e., so if I want to send TV shows to local nations using a TV platform (size 1-5 or so to go to farther planets) about the benefits of moving from there empire to our empire. You get refugees from their civilian base.

It would be a very cool idea to explore in the future, but unlikely to be within scope for 4.0.

Is the immigration system still represented by growth transferring from one planet to another planet or is that getting reworked to civilian workforces actually leaving their home planet?

How would this work for external migration pacts? Would civilians actually leave one empire to join another?

We are planning on using the auto-migration system to handle all migration, rather than the growth push-pull one. We're planning on letting them move to other empires that have Migration Pacts.

I think Civilians are more abstracted as non-important jobs, atleast in the perspective of the empire: Basic service industry personel, lower rank employee in factories, aides and none notable officials, petty criminals. The kind of people that in a historical sense would be the base for a colonization pool. That goes in line with the fact they still generate trade, being the base of the economy and it's output.

More or less. Exactly what they are will largely depend on the living standards you're providing them - whether they're scrabbling for subsistence in giant slums or living lives of Utopian Abundance should be reflected.

If you shut down a bunch of labs then the ex-scientists become unemployed because initially they'd rather sit around being angry about it than accept the pay and prestige cut to go be a farmer or go do whatever it is civilians do all day. If you open a new science facility on the planet, or at least an alloy plant or CG plant, they will be first in line at the door waving their credentials and work experience in your face and start straight into sciencing or at least get put in charge of alloy science or whatever. Or if you open a new science planet they'll jump on the first spaceship out of there to go do more science far away.

If none of that happens and they're stuck sitting around being grumpy for long enough then they'll start thinking OK, fine, maybe being a farmer isn't so bad. They call it agricultural science don't they? Also they're running out of cash and had to downgrade their lifestyle anyway, and also they haven't published in a while so everyone's kind of avoiding them at parties. So they go be farmers and yeah it's not ideal but it's better than doing nothing all day (or maybe a few other scientist/cg/alloy pops start to burn out and decide they want to be farmers for the country air so they go take farmer jobs and the ex-scientists run up to the door waving their credentials and work experience etc, whichever works best for your headcanon at any one time).

But let's say there are no free worker tier jobs either so now they're even madder because they swallowed their pride and went to the farms and were told to go home anyway! (or maybe they're agrarian so they shove out a bunch of existing farmers onto the unemployment line, maybe that's a thing, we don't know). In either case there's a bunch of angry unemployed worker tier pops who consider being a civilian beneath them... until they either get a new job, emigrate to work somewhere else, or accept that they need to go sign up for UBI/get a job at space mcdonalds/sit at home grumbling at Foxoid News while their spouse takes a job at space mcdonalds/go home and write a book or a videogame or whatever/age out into retirement age/die (delete as inappropriate for your empire settings and or personal preferences)

Meanwhile someone who's already chronically unemployed or is fresh out of college and has never entered the workforce is going to be less annoyed by living off UBI/taking a temporary job at space mcdonalds/opening a space etsy store to kill time because it's not a drop in living standards, and we just invented space travel so sure something'll come up before they get bored.

And presumably if you give their species awful living standards for civilians they will get pretty mad anyway!

This is pretty much exactly how I envision it.

Does this mean the only growth play for colonies is forced resettlement to quickly get them up to whatever the threshold size is where they actually grow on their own?

If you provide jobs out there and allow automatic resettlement, then if you have a pool of Civilians they should naturally migrate to the planet. Balancing depopulating your homeworld with populating the colonies might be something relevant too.

Perhaps assembly buildings give a number of jobs per planet population, or they add assembler jobs to city districts.

@Gruntsatwork , double check that the DD371 draft isn't publicly available.

Pops moving between empires sounds great. Though if they only move to a foreign capital sounds like it might be hard to take advantage of different habitability preferences. If I’m playing an ocean world species who have made a desert world colony seems my treaties would get stuck. No desert dwellers are going to move to the ocean world meaning none will more onto the colony.

Our current thought is to send them to the capital even if it's not where they actually want to be, and the next wave of migration would send them to a planet they'd rather be on or potentially to a different empire. We wanted to minimize the number of extra planets being added to the automatic migration checks.

So there are jobs that can be filled by a smaller workforce? For example, a researcher job should not need 100 Pops, let alone unskilled workers, but rather highly skilled workers—only about 10 or so per job. It would be interesting to see some sort of education system that promotes "Workers" to "Skilled Workers" by providing education facilities and such. But maybe just an abstraction through a calculation that promotes Pops when open jobs exist would be fine too, just like it used to work.

This is correct, jobs are not required to need 100 workforce to fill.
 
  • 20
  • 4Like
Reactions:
Do note Eladrin specifically called that risk out as why we are looking into civilians fostering resistance during and after invasions, to stop early homeworld invasions being too strong.
 
  • 6Like
  • 4
Reactions:
The main point I was trying to make was that reducing sources of pop growth makes all remaining sources of pop growth and pop aquisition more powerful as pops become the limiting factor to empire development.

I agree that homeworlds having resisting invasion, or having post-invasion insurgency to deal with is one solution to the loot piñatas problem of early-game invasions. I hope it doesn't take too long to be tried and tested. But I worry a large source of pops will still be very powerful even if only 40% of them survive to become useful workers, even with a few years of turmoil.

Delaying homeworld invasions may end up being like adding trust requirements to vassal acceptance - it doesn't change the calculation it only delays it a few years.

So I'm interested in brainstorming alternative pathways where pops are not always the limiting factor to empire development - low workforce frontier planets, increasing automation, more expensive infrastructure, healthcare/education costs etc.
Coincidently, Eladrin also mentioned Automation ^^
 
  • 5
  • 2Like
Reactions:
Note that no...there is no "universal basic income" element in The Expanse...the people on Earth there were barely scraping by and trying to flee, but seems a pretty much high unemployment situation!

Civilians on Earth in The Expanse have Basic Assistance provided by the United Nations.

It's an incredibly common sci-fi trope across a great number of stories - an overpopulated homeworld looking for relief through colonization. As I've said - how happy they will be will be directly linked to the living standards you're giving them. An Oppressive Autocracy, for instance, will likely still need quite a few Enforcers to keep order.
 
  • 12Like
  • 3
  • 1
Reactions: