• 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 #370 - 4.0 Changes Part 4

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:
  • 134Like
  • 88Love
  • 15
  • 4
  • 2
Reactions:
Actually I'd rather avoid getting deeply into this to avoid other "friendly warnings", but in the actual real world there is such people who "has been unemployed for so long" and are called "Inactive" or "Inactive Population". Someone who has been unemployed for so long that no longer seeks a work, is labelled "Inactive" and expunged from the Unemployment statistics.

So yes...if we call that "Inactive" (or even "Dependent") I can agree with the concept of this new stratum, because it is something that actually exists, has some history and would be pretty obvious because people would rather not to drop in that stratum...
But these are still "dependants". Even if they have savings aside and do not depend directly on some relative, they depend on other workers that produce goods and services that they aquire, no matter how they pay for them. they might be retirees, they might have a large inheritance or savings or receive compensation for an accident that happened in the alloy plant and are now unable to work. Still they need farmers, medics, entetainers, and administrators - they can't eat or heal themselves with their money.

Otherwise, Civilians implies these other people over there, doing their own undocumented thing, that even if all official jobs were to cease - they would still be able to live and thrive just fine, because they have their own invisible economy, with farms, doctors, policemen, blackjack and hookers too!
 
I like "Dependents" much more than civilians.

And we can all see how this discussion is colored by our individual political beliefs. Not making this political, just pointing out for people to be aware.

Yes. I agree. Frankly, after MarkDey suggested that he felt the name was an issue, I had to recognize that what was bothering so much of that new strata was probably the name and the general impression that felt "off" in terms of its explaination as concept...

With "Dependents" it makes a lot more sense:

We are adding a stratum which represents a share of population which is still making a living (somehow) and still are part of society, but which consume more than they produce, depends on other people, on the society or on machines, etc...and well...in most society isn't a much desirable condition to be into!

Stellaris is objectively a game that has existed for many years and obviously as time goes becomes more and more complex, so I think it is very important to keep things as clear as possible at least when comes to basic game elements ...like "strata" or other backbone mechanical concepts...

On other hand, I understand that the developers seem to want to also add a "Resident" category to keep separated alien people who don't have the same rights as the citizens. Now...I don't see why to keep them separated from "Dependents", but potentially that category could be labelled instead "Visitors" or "Travelers"...which are foreign or alien creatures who are staying on a planet, but aren't supposed to stay there much longer...

P.S.: I really think that there will still be the portraits for the pops, because one thing I'd really like to see are "shapeshifting infiltrators".
Now...I admit that this is not so related, but the "Visitors" term made me think about the Visitors of the old V series of the 80s...now...probably would be better introduced with shapeshifting leaders (and possibly shapeshifting/disguised ships or maybe, even disguised planets or disguised stations that looks like planets...which would add the possibility of having Enclaves who live on a planet which shares space with your society...), but still I think would be fun to be able to do an espionage mission to send shapeshifters on the planet, maybe see a portion of shapeshifted species "take over" the planet as pops that are temporarily shifted as an "impostor race" and then being able to launch a coup and take over the planet without having to fire a shot or almost!
 
  • 2Like
Reactions:
But...why would you "drop" into it from being an "Unemployed Worker" if it is simply something which is of no concern to the Government or the Corporations?
The government cares because the pop is mad about it. If the pop isn't mad about it they don't care. It takes you a while for the pop to stop being mad about it though.

And again, I'd presume in a Utopian Abundance society dropping from elite to specialist to worker would be faster than usual and dropping from worker to citizen pretty much instantaneous, because if there's no lifestyle difference between "work in the mines" and "play EuroMine Simulator" you're going to be pretty OK with flipping between the two.
 
  • 1Like
Reactions:
seems that there are technical reasons for wanting to add a new stratum...also because Stellaris needs a stratum name that is "one that fits all"
I count 14 "pop buckets" in this dev diary. In C++ parlance, it's an implementation detail whether they are std::vector, std::map, std::list or some other collection. I don't even know if Stellaris is coded in C++ but the concept is universal for coders.

This whole conversation on whether there should be 3 or 4 social strata is a strictly UI topic.
I get your point, but in that case "Dependent" (or possibly even "Inactive") seem a better term for this stratum. After all, all roles you are describing most of time aren't able to make a living without others' support.

( Thinking about it "Inactive" has a even better "history" than "Dependent" because technically "Unemployed" are "People who are activelys seeking work" and "Inactive" are "People who stopped looking for a work". And you are right...from the perspective of the State or of the Megacorps those people aren't doing anything much useful apart from "surviving"...but yes...I'd totally opt for "Dependent" over "Civilian"! )
I favour Inactive then Dependent over Civilian.
 
  • 1Love
  • 1
Reactions:
But these are still "dependants". Even if they have savings aside and do not depend directly on some relative, they depend on other workers that produce goods and services that they aquire, no matter how they pay for them. they might be retirees, they might have a large inheritance or savings or receive compensation for an accident that happened in the alloy plant and are now unable to work. Still they need farmers, medics, entetainers, and administrators - they can't eat or heal themselves with their money.

Otherwise, Civilians implies these other people over there, doing their own undocumented thing, that even if all official jobs were to cease - they would still be able to live and thrive just fine, because they have their own invisible economy, with farms, doctors, policemen, blackjack and hookers too!

The "large inheritance" case seems a rare exception though...retiree (if you mean a pensioner) would probably depend on the State or on a Corporation (private insurance)...actually I feel certain fringe cases would be better represented with decisions or buildings which enables some population-based works for other strata...for example, elite could have a socialite jobs (if someone has a very large inheritance, would be still part of the elite), specialists could have influencer jobs (which is essentially a glorified odd-job) and workers could have odd-jobs...or maybe a few of these unusual population-based jobs could show up at certain population threashold (like the Criminals with Crime)!

Mmmh...actually I think that adding these population-based odd-jobs might be a fun idea...especially if one keeps their priority low, so that they could "keep warm" workers/specialist/elites for migration in available colonies (actually might be a fun idea to add *flags* to strata, jobs and, maybe, traits) to "flag" people for easier migration!

( After all is my understanding that, for example, CK3 has traits flags and trait categories to do such fine-tuning...although well...I don't know how much work would involve to add those! )

P.S.: I have to be honest...you guys managed to turn my originary all-negative "grumpy" view into a more constructive approach...kudos for that!
 
  • 5Like
Reactions:
I get your point as well, however this is where game design creeps in; while all names you've proposed so far are not inaccurate, there is an important common factor among them - they all have directly not-positive connotations, and most of them are outright negative. And as a game designer you wouldn't want to assign a negative name to a beneficial feature, becauses it disrupts intuitivness. And in this context "civilian" is simply the most broad and neutral.

The problem is that "Civilian" doesn't really represent a social class, which is what most of these strata seem to represent.
Moreover the specific strata seem to be pyramidically positioned under "Workers", so its negative or non-positive nature needs to be manifested in its chosen name. If wasn't negative, a Worker wouldn't be demoted into it, just like Specialists are demoted into Workers, Elite gets demoted into Specialists, etc... being at the bottom of the social/work ladder has intrinsically a negative connotation...paradoxically even in the case in which the machines are filling all jobs above it.

( Obviously I have been pointed out that Stellaris actually has more than 3 strata, but not all of these are show in the UI... )
 
  • 2
Reactions:
Do we still have the option of doing micro management? For example, sending certain species to certain planets. And then having that species stay there?
Even if you want to reduce micro management. I love micro management. Do we at least have the option to do that?
 
But these are still "dependants". Even if they have savings aside and do not depend directly on some relative, they depend on other workers that produce goods and services that they aquire, no matter how they pay for them. they might be retirees, they might have a large inheritance or savings or receive compensation for an accident that happened in the alloy plant and are now unable to work. Still they need farmers, medics, entetainers, and administrators - they can't eat or heal themselves with their money.

Otherwise, Civilians implies these other people over there, doing their own undocumented thing, that even if all official jobs were to cease - they would still be able to live and thrive just fine, because they have their own invisible economy, with farms, doctors, policemen, blackjack and hookers too!

Ooops...I think I have misunderstood your point in my previous reply:

Yes...you are right...probably "Dependant" sounds more meaningful than "Inactive"...
 
  • 2
Reactions:
But these are still "dependants". Even if they have savings aside and do not depend directly on some relative, they depend on other workers that produce goods and services that they aquire, no matter how they pay for them. they might be retirees, they might have a large inheritance or savings or receive compensation for an accident that happened in the alloy plant and are now unable to work. Still they need farmers, medics, entetainers, and administrators - they can't eat or heal themselves with their money.

Otherwise, Civilians implies these other people over there, doing their own undocumented thing, that even if all official jobs were to cease - they would still be able to live and thrive just fine, because they have their own invisible economy, with farms, doctors, policemen, blackjack and hookers too!
That's the beauty of it! Why does the Galactic Market restock over time? Why does the Local Empire Market restock over time, before the GM even exists? There's obviously some kind of economy not directly controlled by the player going on somewhere, and the civilian-sourced trade is, among other things, taxation of this private industry and a representation of the logistical support from having a bunch of spare workers on hand to unload the planetary deficit freighters.

And if we take this to the logical extreme we have pre-GM Megacorps, generating buckets of literally money and spending it to buy things from... who? A large "civilian" population generating trade explains this; they're not living in hovels being handed subsistence level food by the government, they're living in hovels working in exploited conditions generating the "real" resources to earn enough money to eat subsistence level food while all the luxury goes to stockbrokers and rich failchildren. You know, capitalism.

I don't think "civilian" is the best name, but labelling everyone not in directly controled employment of the state's (or primary corporate entity's) top level economy as "unemployed" or "dependents" limits what different empires can be represented.
 
  • 4Like
  • 2
Reactions:
That's the beauty of it! Why does the Galactic Market restock over time? Why does the Local Empire Market restock over time, before the GM even exists? There's obviously some kind of economy not directly controlled by the player going on somewhere, and the civilian-sourced trade is, among other things, taxation of this private industry and a representation of the logistical support from having a bunch of spare workers on hand to unload the planetary deficit freighters.

And if we take this to the logical extreme we have pre-GM Megacorps, generating buckets of literally money and spending it to buy things from... who? A large "civilian" population generating trade explains this; they're not living in hovels being handed subsistence level food by the government, they're living in hovels working in exploited conditions generating the "real" resources to earn enough money to eat subsistence level food while all the luxury goes to stockbrokers and rich failchildren. You know, capitalism.

I don't think "civilian" is the best name, but labelling everyone not in directly controled employment of the state's (or primary corporate entity's) top level economy as "unemployed" or "dependents" limits what different empires can be represented.

Sorry, but the condition you describe are "Workers". The Galactic Market restocks, because managing it through direct trading from the AI is probably too troublesome from performance purpose. Moreover, in the game you're not shown neither the savings of the workers, specialists or elites nor the existence of mega-corporations inside your own Country. Some mods tried to add things like Trading Unions and Corporations to make things more "lively" but those implementations often had some issues...however, you don't get to see Megacorporations who don't control planets...so, hypotetically, that is what those resources for the restock in both cases are coming from (are resources saved from profits, inventories, etc...of corporations and pops which aren't converted into output). In essence, what we see as resources are the resources that you, as ruler, have available to use (essentially are taxes).

The fact of "living in hovels" is represented by the lack of housing...
 
I favour Inactive then Dependent over Civilian.
Why not 'precariate'? To simplicity complex term: working or occasionally working poor, below Worker stratum (as workers at least have stable job). According to wikipedia, there were some research in UK which put precariate as the lowest of seven social classes of modern society, which would add some scifi-esque flavor to the term.
 
  • 1
Reactions:
I don't think "civilian" is the best name, but labelling everyone not in directly controled employment of the state's (or primary corporate entity's) top level economy as "unemployed" or "dependents" limits what different empires can be represented.

They are, by game design, set at the bottom of the visible strata ladder...so there isn't much of "positive" to see into falling into this strata, else people wouldn't fall into it from unemployment in the Worker stratum...

That said, even if machines were to feed up and do all the work, you'd still be "Dependent"...
 
  • 1
Reactions:
Why not 'precariate'? To simplicity complex term: working or occasionally working poor, below Worker stratum (as workers at least have stable job). According to wikipedia, there were some research in UK which put precariate as the lowest of seven social classes of modern society, which would add some scifi-esque flavor to the term.

Because "Precariate" is technically a "Worker"...being "precarious" has to do with the "living conditions"...

( By the way most researches in our world are produced for self-serving purposes...what we know for certain is that, for self-serving purposes, unemployment is defined as someone "actively seeking work" and then get "magically converted" into "Inactive Population". This "Civilian" concept into which people fall from being "Unemployed Worker" seem to be pretty much that kind of condition... )

P.S.: Moreover, as I was pointed out, this stratum is meant to consider both situations matching our real world experience but also situations like having automation replacing workers in which case one would not work, but probably not be too upset about it... "Precariate" is underemployment, but is technically still "Work" (if one is in that condition, statistics will gladly show him off as "employed"!)!
 
  • 2
Reactions:
It could also be used as the stratum for individualistic pops in gestalt empires in general.
Speaking of individualistic pops in gestalt empires, it would be great if the game were to distinguish between non-sapient, sapient, and gestalt machines through pop traits.

That way, synthetically ascended pops would not automatically become non-sapient if conquered by an empire without AI technology, individualistic machine pops would not immediately get assimilated into a machine consciousness, and gestalt machines would not gain individuality out of nowhere.
 
Speaking of individualistic pops in gestalt empires, it would be great if the game were to distinguish between non-sapient, sapient, and gestalt machines through pop traits.

That way, synthetically ascended pops would not automatically become non-sapient if conquered by an empire without AI technology, individualistic machine pops would not immediately get assimilated into a machine consciousness, and gestalt machines would not gain individuality out of nowhere.

Do you mean Species Trait? I actually suggested that would be nice if they could add flags (and maybe trait groups) for Strata, Traits and Pops...like in CK3's traits... might that work with that requirement you have?
 
This thread: discussing alternative ways to be less dependent on pop growth.

Me: *laughs in virtual ascension*
 
Last edited:
That reminds me, what will happen to virtual ascension now that certain aspects of empire economy will become dependent on the Civilian/Maintenance Drone stratum?
I am wondering the same thing. My typical virtual ascension run is dependent on TV for consumer goods to fuel my research segments.
 
Do you mean Species Trait? I actually suggested that would be nice if they could add flags (and maybe trait groups) for Strata, Traits and Pops...like in CK3's traits... might that work with that requirement you have?
I am thinking three species traits that replace the Machine and Mechanical traits completely.
 
Do we still have the option of doing micro management? For example, sending certain species to certain planets. And then having that species stay there?
Even if you want to reduce micro management. I love micro management. Do we at least have the option to do that?
The devs and I, hate that re-settlement screen so much that I believe its going the way of the Dodo.

I would expect that all such things, including forced migration would be handled by planetary decisions and situations.