Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Stellaris - Paradox new sci-fi grand strategy game

Joined
Mar 3, 2010
Messages
9,298
Location
Italy
what win states?
 

Xamenos

Magister
Patron
Joined
Feb 4, 2020
Messages
1,256
Pathfinder: Wrath
Is the Performance better? How better?
Depends. It is better than it was a few months ago. It is still worse than it was before they reworked the economy with Megacorp. Turns out the worst of the late-game slowdowns were caused by something completely retarded they did regarding pops checking job availability whose details I cannot remember and has since gotten fixed. But you WILL encounter stuttering if you play for long enough. The engine was never intended to work with the number of pops and ships you can reach post-rework, and it shows.

What about the features? Any cool stuff?
Last DLC added three things of note:
Origins are an extra option when you make your empire. They moved the old Mechanist and Syncretic Evolution to this, and added many new options. Of those, most offer a simple bonus and some flavor events. Three bear mentioning, however. One starts you on a single habitable section of a ruined Ring World. Two other segments can be repaired, and the last has been smashed by a rogue moon, living a 20 mineral deposit behind. This is as overpowered as you might imagine. The second starts your population in three habitats instead of a homeworld. It requires some finagling to build more habitats before you run out of space, but starting with 3x the pop growth of anyone else is a massive bonus in a game where pops determine everything. And last but not least, Prosperous Unification is the boring, default option that gives you nothing fancy. What it does give you is extra pops and a +10% bonus on everything in your capital for the entire game, making it arguably (and hilariously) the most powerful origin of them all.
The vaunted Federation rework did not amount to much. There are now different types of Federations. You can change a few policies in them. And they took a page out of EU4, and federations now have a "centralization" meter that slowly fills up and gives everyone in the federation a +10% bonus of some kind every time it goes up a level.
And last but definitely least, the Galactic Community, aka space UN. Every few years the galaxy gets to vote on a proposal. Every possible proposal is a +10% bonus to something, makes some policy illegal (slavery, for instance), or enacts a -10% sanction to a specific aspect of those who are "in breach of Galactic Law". Everything that affects your score also affects your votes in it. It is all very tedious, and as the AI is still pants-on-head retarded you can easily have more votes than everyone else combined by the midgame or so.

Should I play it now or wait for later?
They've stopped patching, improved performance and gotten the worst of the bugs. If you want to play with the latest DLC now is the time. You'd probably get a game or two out of it. Otherwise wait until the next one comes out and hope against hope they improve the game more substantially.
 
Joined
Jan 7, 2012
Messages
15,269
The game still becomes unplayable around 100-150 years in on a normal size galaxy with max AI empires. Certainly you'll never get to 250 years in, which is the default point at which the galaxial invaders spawn.

In fact performance is worse now because they taught the AI to spam habitats so you have more colonies with more pops. AI still utterly fails at playing the game but the habitats make conquest more annoying.
 

Xamenos

Magister
Patron
Joined
Feb 4, 2020
Messages
1,256
Pathfinder: Wrath
The game still becomes unplayable around 100-150 years in on a normal size galaxy with max AI empires. Certainly you'll never get to 250 years in, which is the default point at which the galaxial invaders spawn.

In fact performance is worse now because they taught the AI to spam habitats so you have more colonies with more pops. AI still utterly fails at playing the game but the habitats make conquest more annoying.
When exactly you'll encounter those slowdowns depends on your system. In my machine I encounter few issues until ~50 years before the crisis hits, and while performance rapidly degenerates, it never quite becomes unplayable before I'm done with the crisis and the game.

But, yes, encountering problems is inevitable.
 

Ibn Sina

Liturgist
Patron
Joined
Jul 12, 2017
Messages
1,000
Strap Yourselves In
Game grabs you by the promise of different space faring empires, unique alien races. But it is all a mirage, a ruse. Different "empires" and different ethics are different if you count -5% minerals +5%attack speed different. Everybody share the same technology and everybody develops the same way. By endgame everybody is the same. Game has become more and more of an excel spreadsheet simulator, extremely micro intensive. Warfare is a chore in this game. AI is a joke, you can roll over them even on Grand Admiral and with AI mods.
 
Joined
Mar 3, 2010
Messages
9,298
Location
Italy
Game grabs you by the promise of different space faring empires, unique alien races. But it is all a mirage, a ruse. Different "empires" and different ethics are different if you count -5% minerals +5%attack speed different. Everybody share the same technology and everybody develops the same way. By endgame everybody is the same. Game has become more and more of an excel spreadsheet simulator, extremely micro intensive. Warfare is a chore in this game. AI is a joke, you can roll over them even on Grand Admiral and with AI mods.
you should blame the multiplayer-fixated retards at the helm of this because in the bininging the game tried to let us have different races but differences were more and more flattened because kidz whined their larping wasn't as effective as somebody else's larping.
 

Ibn Sina

Liturgist
Patron
Joined
Jul 12, 2017
Messages
1,000
Strap Yourselves In
Game grabs you by the promise of different space faring empires, unique alien races. But it is all a mirage, a ruse. Different "empires" and different ethics are different if you count -5% minerals +5%attack speed different. Everybody share the same technology and everybody develops the same way. By endgame everybody is the same. Game has become more and more of an excel spreadsheet simulator, extremely micro intensive. Warfare is a chore in this game. AI is a joke, you can roll over them even on Grand Admiral and with AI mods.
you should blame the multiplayer-fixated retards at the helm of this because in the bininging the game tried to let us have different races but differences were more and more flattened because kidz whined their larping wasn't as effective as somebody else's larping.

That is true. In my opinion Wiz philosophy destroyed the game. The game started with great promise even if it was barebones. They should have worked to increase the difference not eliminate it. It all went downhill once they removed the different FTL and starting weapons. Now everybody spouts the same lasers and kinetics and missiles by mid game. The difference in FTL add great variety in my opinion.
 

thesecret1

Arcane
Joined
Jun 30, 2019
Messages
6,702
That is true. In my opinion Wiz philosophy destroyed the game. The game started with great promise even if it was barebones. They should have worked to increase the difference not eliminate it. It all went downhill once they removed the different FTL and starting weapons. Now everybody spouts the same lasers and kinetics and missiles by mid game. The difference in FTL add great variety in my opinion.
I think the FTL in particular got axed due to the AI being utterly incapable of dealing with blitzkrieg's bypassing its lines. Now you have only a couple roads to get somewhere and the AI can simply send a fleet along the same route, confident that you will actually engage it.

I really wish Paradox did better with their AI. It's stupid as hell in all their games.
 
Joined
Mar 3, 2010
Messages
9,298
Location
Italy
I think the FTL in particular got axed due to the AI being utterly incapable of dealing with blitzkrieg's bypassing its lines.
if [ftl inhibitor] = 1 then force route to closest to selected system.
easy as that. how many code lines? 2? 3? maybe 4?
 

Preben

Arcane
Patron
Glory to Ukraine
Joined
Jan 18, 2017
Messages
3,821
Location
Failsaw, Failand
I think the FTL in particular got axed due to the AI being utterly incapable of dealing with blitzkrieg's bypassing its lines.
if [ftl inhibitor] = 1 then force route to closest to selected system.
easy as that. how many code lines? 2? 3? maybe 4?

Various FTL modes were axed also because the engine was somehow incapable to cache all the pathing. Whenever a ship was doing a jump, the game was recalculating all possible moves from scratch. It was even worse dent on resources than Wiz's Crazy Pop Extravaganza. The game was barely faster than today only because it was more barebones and the AI was even more brainless.
 

Xamenos

Magister
Patron
Joined
Feb 4, 2020
Messages
1,256
Pathfinder: Wrath
I think the FTL in particular got axed due to the AI being utterly incapable of dealing with blitzkrieg's bypassing its lines. Now you have only a couple roads to get somewhere and the AI can simply send a fleet along the same route, confident that you will actually engage it.

I really wish Paradox did better with their AI. It's stupid as hell in all their games.

No, MadMaxHellfire is right. They have admitted they're balancing the game based on their in-office multiplayer games, and have consistently defended the practice when called out on their forums. It's a sad fact that Paradox has largely given up on their AI. Nowhere is it more apparent than Stellaris. The AI is STILL completely retarded and entirely incapable of developing its planets properly post-rework. It STILL is awful at designing ships or waging war, and these systems have hardly changed in literal years. You are kidding yourself if you think Paradox gives a crap about the AI not using a feature correctly.

As for FTL, the only problem it had at release was that fleets, warp and hyperlane both, could jump forward without moving from the point they entered a system. If you wanted to intercept a fleet, you needed to jump to a system right behind their destination, lie in ambush, and time it so you appeared right on top of them in the brief window before they recharged. It meant sublight drives and weapon range were completely irrelevant for most fleet engagements. I have no idea why they made it that way, or why it took them so long to change it. And I believe there would be far, far fewer complaints about warp fleets bypassing defenses if they had to actually cross systems at release, as hyperlane fleets do now.

I don't blame Wiz, AFAIK the game was a mess when he stepped in.

Me neither. I think he has the right instincts but his hands are tied. The problems with Paradox begin above him.
 

Space Satan

Arcane
Vatnik
Joined
May 13, 2013
Messages
6,421
Location
Space Hell
DD on multithreading

Hello everyone, this is The French Paradox speaking!

On behalf of the whole Stellaris team, we hope you've had a good summer vacation, with current circumstances and all!

We're all back to work, although not at the office yet. It is going to be a very exciting autumn and winter with a lot of interesting news! We are incredibly excited to be able to share the news with you over the coming weeks and months!

Today I open the first look at the upcoming 2.8 release with some of the technical stuff that we programmers have been working on over summer. The rest of the team will reveal more about the upcoming content and features in the following diaries.

Without further ado, let's talk about threads!

Threads? What threads?

There is a running joke that says fans are always wondering which one will come first: Victoria III or a PDS game using more than one thread.

image%20(26).png


Don't lie, I know that's how some of you think our big decision meetings go

I’m afraid I’ll have to dispel the myth (again): all PDS games in production today use threads, from EU4 to CK3. Even Stellaris! To better explain the meme and where it comes from, we have to go through a little history. I’m told you guys like history.

For a long time, the software industry relied on “Moore’s Law”, which states that a CPU built in two years will be roughly twice as efficient as one today.
This was especially true in the 90s, when CPUs went from 50 MHz to 1GHz in the span of a decade. The trend continued until 2005 when we reached up to 3.8GHz. And then the clock speed stopped growing. In the 15 years since, the frequency of CPUs has stayed roughly the same.
As it turns out, the laws of physics make it quite inefficient to increase speeds beyond 3-4 GHz. So instead manufacturers went in another direction and started “splitting” their CPUs into several cores and hardware threads. This is why today you’ll look at how many cores your CPU has and won’t spend much time checking the frequency. Moore’s Law is still valid, but, to put it in strategy terms, the CPU industry reached a soft cap while trying to play tall so they changed the meta and started playing wide.

This shift profoundly changed the software industry, as writing code that will run faster on a CPU with a higher speed is trivial: most code will naturally do just that. But making usage of threads and cores is another story. Programs do not magically “split” their work in 2, 4 or 8 to be able to run on several cores simultaneously, it’s up to us programmers to design around that.

Threading nowhere faster

Which brings us back to our games and a concern we keep reading on the forums: “is the game using threads?”. The answer is yes, of course! In fact, we use them so much that we had a critical issue a few releases back where the game would not start on machines with 2 cores or less.

But I suspect the real question is : “are you making efficient usage of threads?”. Then the answer is “it depends”. As I mentioned previously, making efficient use of more cores is a much more complex issue than making use of more clock cycles. In our case, there are two main challenges to overcome when distributing work among threads: sequencing and ordering.

Sequencing issues occur when 2 computations running simultaneously need to access the same data. For example let’s say we are computing the production of 2 pops: a Prikki-Ti and a Blorg. They both access the current energy stockpile, add their energy production to it and write the value back. Depending on the sequence, they could both read the initial value (say 100), add their production (say 12 and 3, the Blorg was having a bad day) and write back. Ideally we want to end up with 115 (100 + 12 + 3). But potentially both would read 100, then compute and overwrite each other ending up with 112 or 103.
The simple way around it is to introduce locks: the Prikki-Ti would “lock” the energy value until it’s done with its computation and has written the new value back, then the Blog would take its turn and add his own. While this solves the problem, it introduces a greater one: the actions are now sequential again, and the benefit of doing them on concurrent threads has been lost. Worse, due to the cost of locking, unlocking and synchronizing, the whole thing will likely take longer than if we simply computed both on the same thread in the first place.

The second issue is ordering, or “order dependency”. Meaning in some cases changing the order of operations changes the outcome. For example let’s say our previous Prikki-Ti and Blog decide to resolve a dispute in a friendly manner. We know the combat system will process both combatants, but since there are potentially hundreds of combat actions happening, we don’t know which one will happen first. And potentially on 2 different machines the order will differ. For example on the server the Prikki-Ti action will happen first, while on the client the Blorg will act first.


OOS.png

#BlorgShotFirst

On the server the Prikki-Ti action is resolved first, killing the Blorg. The Blorg action that comes after (possibly on another thread) is discarded as dead Blorgs can’t shoot (it’s a scientific fact). The client however distributed the computation in another way (maybe it has more cores than the server) and in his world the Blorg dispatched the Prikki-Ti first, which in turn couldn’t fight back. Then both players get the dreaded “Player is Out of Sync” popup as their realities have diverged.

There are, of course, ways to solve the problem, but they usually require redoing the design in a way that satisfies both constraints. For example in our first case each thread could store the production output of each pop to add to each empire, and then those could be consolidated at the end. In the same fashion our 2 duelists problem could be solved by recording damage immediately, but applying the effects in another phase to eliminate the need for a deterministic order.

As you can imagine, it is much easier to design something with threading in mind rather than retrofitting an existing system for it. If you don’t believe me just look at how much time is spent retrofitting your fleets, I’ll wait.

The good news

This is all nice and good, but what’s in it for you in the next patch, concretely? Well you will be happy to hear that I used some time to apply this to one of the oldest bits of our engine: the files and assets loading system.

For the longest time we have used a 3rd party software to handle this. While it saved us a lot of trouble, it has also turned out to be quite bad at threading. Up to the point that it was sometimes slower with more cores than less, most notably to the locking issues I mentioned before.
In conjunction with a few other optimizations, it has enabled us to drastically reduce the startup time of the game.
I could spend another thousand word explaining why, but I think this video will speak better:


This comparison was done on my home PC, which uses a venerable i7 2600K and an SSD drive. Both were “hot” startups (the game had been launched recently), but in my experiments I found that even on a “cold” start it makes a serious difference.

To achieve the best speedup, you will need to use the new beta DirectX11 rendering engine. Yes, you read correctly: the next patch will also offer an open beta which replaces the old DX9 renderer by a more recent DX11 version that was initially made by our friends at Tantalus for the console edition of Stellaris. While visually identical, using DX11 to render graphics enables a whole range of multi-threading optimizations that are hard or impossible to achieve with DX9. Playing with the old renderer will still net you some nice speedup on startup, the splash screen step should still be much faster, but you’re unlikely to see the progress bar “jump” as it does with DX11 when the game loads the models and textures.

Some of those optimizations have also been applied to newer versions of Clausewitz, and will be part of CK3 on release. Imperator should also benefit from it. It might be possible to also apply it to EU4 and HoI4, but so far my experiments with EU4 haven’t shown a huge speedup like it did for Stellaris and CK3.

If you want to read more technical details about the optimizations that were applied to speedup Stellaris, you can check out the article I recently published on my blog.

And with that I will leave you for now. This will likely be my last dev diary on Stellaris, as next month I will be moving teams to lead the HoI4 programmers. You can consider those optimizations my farewell gift.
This may have been a short time for me on Stellaris but don’t worry: even if I go, Jeff will still be there for you!
 

Sundevil96

Educated
Joined
Feb 14, 2015
Messages
55
So just to be clear. There's a serious issue with turn times after the game reaches a certain point. Over the summer a developer optimizes the loading of assets and decreases start up time of the game? So.... the issue with the game slowing to a crawl at a certain point in game time is solved how... or is that next summer?
 
Joined
Jan 7, 2012
Messages
15,269
So just to be clear. There's a serious issue with turn times after the game reaches a certain point. Over the summer a developer optimizes the loading of assets and decreases start up time of the game? So.... the issue with the game slowing to a crawl at a certain point in game time is solved how... or is that next summer?

Yes, except that it wasn't even paradox, it was the third party they farmed the game out to for Stellaris Console Edition that fixed load times.
 

Preben

Arcane
Patron
Glory to Ukraine
Joined
Jan 18, 2017
Messages
3,821
Location
Failsaw, Failand
So just to be clear. There's a serious issue with turn times after the game reaches a certain point. Over the summer a developer optimizes the loading of assets and decreases start up time of the game? So.... the issue with the game slowing to a crawl at a certain point in game time is solved how... or is that next summer?

Yes, except that it wasn't even paradox, it was the third party they farmed the game out to for Stellaris Console Edition that fixed load times.

And it seems that said third party basically tailored Stellaris for DirectX11.
 

Perkel

Arcane
Joined
Mar 28, 2014
Messages
16,271
Playing atm after 2-3 years. I must say i have a lot of fun. Much more than before. Also some of mods are fantastic like more events. One thing is sure game just need a way more events and small things popping up constantly as you explore and manage your folks.

My favorite so far event was that in which on one of my planets they found statues well into game (around 15 pop so not new). After a long research route finally i had to pick from three options and i didn't like how that planet with that thing was near my main planet so i decided to destroy statues. Turned out i was right. They were alive after all. Problem was that they had like 2,5k power on land. So they anihilated my puny 60 power army on planet and started killing off inhabitants.

So i decided to do some huge invasion. Pulled out recruitment on all of my planets. Didn't want to lose 15 pop planet so easily. So after a while i got like 3 armies each 1k which cost me a fortune to field in minerals and cost fortune to support.

Unfortunately after a while i got event that some straglers run away to my nearest planet (like +2/3 pop) while rest got killed. So vengeance it is.

I arrive in system and just before i land i get event that those guys left just like that leaving some weird floor after them...

I opened it up and it turned out that those guys were protectors of civilization that uploaded themselves to machines and they are right now in some computer.

Decided to kill of fuckers. Vengeance !
 

Preben

Arcane
Patron
Glory to Ukraine
Joined
Jan 18, 2017
Messages
3,821
Location
Failsaw, Failand
Playing atm after 2-3 years. I must say i have a lot of fun. Much more than before. Also some of mods are fantastic like more events. One thing is sure game just need a way more events and small things popping up constantly as you explore and manage your folks.

My favorite so far event was that in which on one of my planets they found statues well into game (around 15 pop so not new). After a long research route finally i had to pick from three options and i didn't like how that planet with that thing was near my main planet so i decided to destroy statues. Turned out i was right. They were alive after all. Problem was that they had like 2,5k power on land. So they anihilated my puny 60 power army on planet and started killing off inhabitants.

So i decided to do some huge invasion. Pulled out recruitment on all of my planets. Didn't want to lose 15 pop planet so easily. So after a while i got like 3 armies each 1k which cost me a fortune to field in minerals and cost fortune to support.

Unfortunately after a while i got event that some straglers run away to my nearest planet (like +2/3 pop) while rest got killed. So vengeance it is.

I arrive in system and just before i land i get event that those guys left just like that leaving some weird floor after them...

I opened it up and it turned out that those guys were protectors of civilization that uploaded themselves to machines and they are right now in some computer.

Decided to kill of fuckers. Vengeance !

You can also talk to the statues and they will remain as free powerful garrison.
 

Malakal

Arcane
Glory to Ukraine
Joined
Nov 14, 2009
Messages
10,676
Location
Poland
I like random events as a concept but the results should be randomized. So one game those statues act as guardians if you work with them and another they try to backstab you or something.

So you avoid the 'obvious best outcome' issue.
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom