• 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:
I don't get what the "Civilian" category is meant to represent. If it represents all the broader economy of a society (from Walmart cashiers to grand strategy games developers) as opposed to "workers" who are in "essential jobs" that produce resources, why is it a stratum below "workers"? Why are they content and add stability? Why does it not have its own jobs and unemployment?
Based on this paragraph:
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. 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.
they seem to be the only poptype that can migrate/colonize.

From Dev Diary 371 we also know that the number of Civilians on a planet are limited by the number of City Districts:
By default, the City District will provide Housing and increase the maximum number of Civilians that your planet can support. If you build a Foundry Zone, the City District will replace some of their Civilian capacity and housing with Metallurgist jobs for each level of development. If you then build a Factory Zone, the City District will provide both Metallurgist and Artisan jobs, but with further reductions to their Citizen capacity.



So you can only have a limited number of Pops (namely: Civilians), that are able/more likely to migrate away.
Since they also do not produce Crime or unhappiness, they are more desirable than unemployed pops.

As for why they do not produce anything while also not being unhappy/criminal, my guess would be that they are supposed to represent the parts of a society that, while being employed, do not produce goods that are relevant (be it the type of good or the quantity of goods produced) to the Gameplay loop.

I guess an example would be Restaurants: they do not produce Food/amenities in relevant numbers, but still employ cooks/waiters (which are "Civilians").
 
Last edited:
  • 3Like
Reactions:
Wait, does this system mean that as long as we have civilians we will never have unemployment? Because civilians will always get promoted to whatever job we create.
 
Wait, does this system mean that as long as we have civilians we will never have unemployment? Because civilians will always get promoted to whatever job we create.

In a sense yes, civilians will promote to new jobs. If all your citizens become employed then no one will migrate from that planet anymore.

But I think that the UI will show civilians as unemployed rather than unemployment only showing pops that have yet to demote. That way we'll be able to see at a glance which worlds have pops not working jobs and thus could take more districts. The mock up from the latest dev diary suggests this as at the start of the game Earth has 1800 unemployed pops

Here’s the work-in-progress UX mockup of what Earth may look like at the start of the game:

 
  • 1
Reactions:
Wait, does this system mean that as long as we have civilians we will never have unemployment? Because civilians will always get promoted to whatever job we create.
It still does take time to demote to a lower Strata and they added "unemployment Stratas".
So an unemployed Ruler would take X Days to demote to an unemployed Specialist, which would then need another X Days to demote to an unemploed worker, which would again need X Days to demote to a civilian.

Also there is a maximum number of civilians you can have on a planet based on your City Districts.
 
It still does take time to demote to a lower Strata and they added "unemployment Stratas".
So an unemployed Ruler would take X Days to demote to an unemployed Specialist, which would then need another X Days to demote to an unemploed worker, which would again need X Days to demote to a civilian.

Also there is a maximum number of civilians you can have on a planet based on your City Districts.

I get the feeling that the employment/unemployment Status plus that it more or less is temporary (b.c.they will become civilians in the end?) is weirdly unintuitve.
Also I do not really get why Civilians do want to migrate and overall are adding to stability. This seems a bit counter intuitive.

So to sum it up: Overall the new system seems a bit convoluted in this regard.
 
  • 1
Reactions: