• 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.
I didn't test with my previous DDR3 PC, but I did tests with overclocking my current DDR4. From 2400MHz to 3200MHz, the improvement is perceptible, but it didn't make a significant enough difference to get an unenjoyable game to enjoyable.

In my general experience, upping RAM frequencies can make a barely stuttering game lag free, but it has to already be on the edge of pristinely smooth for that to happen. I'm often modding my games to the maximum my PC can handle, and there have been cases like that. That is a rare exception though. Generally it is all in or all out, and RAM speed doesn't do jack, except maybe to say this is a tad less bad.

So for Stellaris specifically and given the various tests we all did here, I would bet switching to DDR4 even with a way better CPU would be far from enough to get satisfying results. Not as good as hard numbers but the best I can provide.

i don't mind stutters or drops in fps in general, would you say ram had an affect on how quickly the months themselves passed?
 
hmm, it takes 2-3 minutes for me. it used to take like 10 minutes for HoI3 they've certainly improved the system, but i can't say i've ever had it take 6 seconds.
no, i don't. this is just how it works.
yes, i tend to multitask in the late game

edit: from the time I press play from the launcher to the time i get to the main menu, it took me exactly 2 minutes and 8 seconds. if yours starts in 6 seconds that's amazing, it's usually longer when i use mods, because there's more to compile. this is on a HDD, but otherwise has a very strong Hardware, so i hardly think this is an unusual occurance.

for comparison, it takes me 2 seconds to load up to the main menu for another game i have installed on my HDD.
If the late game is still slow for you I would guess it's not compiling the scripts for you either, you may want to investigate why it takes so long to start. If it can start in 6 seconds on average computers it shouldn't be that slow on others. I don't think I've seen any PDS game take more than 10 seconds to start and my guess is that they all treat scripts the same way. I remember there were some posts on EU4 forums that were mentioning unusually slow startup and that was something specific to some version of Windows. Though I guess improving startup time is not going to make a huge difference...
 
I read where running the game without Steam, starting it from the Paradox launcher would speed the end-game.

I tried it and it works.

The only Paradox launcher that I could get to work is the Beta version 1.0-beta-50 at Program Files (x86)\Paradox Interactive\bootstrapper\bootstrapper.exe.

You may not be able to run full-screen. To speed the game further reduce the resolution from High th Medium.
 
If the late game is still slow for you I would guess it's not compiling the scripts for you either, you may want to investigate why it takes so long to start. If it can start in 6 seconds on average computers it shouldn't be that slow on others. I don't think I've seen any PDS game take more than 10 seconds to start and my guess is that they all treat scripts the same way. I remember there were some posts on EU4 forums that were mentioning unusually slow startup and that was something specific to some version of Windows. Though I guess improving startup time is not going to make a huge difference...

We're talking about start up right, from desktop?

Anyway I know the clauswitz engine compiles the scripts, it's how the checksum is made. At the very least it reads from every single txt and mod file it's set to load on start up.
 
2257. 1000 stars, max advanced AI, 0.25 hw, 11.81 seconds.
2300. 17.68 s.
2352. 19.41 s. (it is 30 Ai at the start, about maybe 27 alive, player population is 450, ais have something like 300-400)
2401. 25.85 s. Pop 983
2425. 32.81 s. Pop 1433. War in Heaven, scourge arrived, all the good stuff.
2459. 30.93 s. Pop 1901
2475. 32 s. Pop 2208
2503. 41.64 s. Pop 2904.
2550. 50.37 s. Pop 4681
 
Last edited:
We're talking about start up right, from desktop?
I was counting from the launcher screen, but it's almost the same. From the desktop it would probably be an extra 0.5s.

Anyway I know the clauswitz engine compiles the scripts, it's how the checksum is made. At the very least it reads from every single txt and mod file it's set to load on start up.
I agree it reads all/most text files (you can see that by checking what files it accesses) - that by itself is enough to create a checksum. It probably parses them too, but I didn't see any evidence of compilation.
 
1. People quoting star numbers and years should also include global population count and number of AI empires alive. Otherwise data is meaningless. I can have an empty huge galaxy going lightning fast at year 2600.

2. They have ported 2.2 to console. I assume that console has no mod support and thus would be extra-optimised for performace, otherwise I pity the poor console players....
 
Just to ask a question of you guys, I am obviously as livid as everyone else that the game has become unplayable after a certain point. I tried 2 playthroughs after megacorp and distant stars both on large galaxies (why not? I have a decent pc and this always ran like butter before) and the grinding slowdown forced me to give up both games (both of which I had probably put about a day of real time into).

My question: if I were to play in a medium galaxy would I have a chance of actually finishing a game in its current state?

Obviously spending money on additions which have made the game unplayable has severally burnt my trust with this game. The lithoids dlc was the first dlc I did not buy and I will not spend any more, of the considerable for a video game, money on this game until I see some wonderfully grateful posts on this forum or elsewhere thanking the developers for fixing the game that they broke. Thank you.

i7 7700 16gb ram 1660ti.... Geez have you seen the system requirements on steam?

End of rant.


I haven't played since 2.3.x BUT I've had decent luck with SMALL galaxies, low habitability, and other settings that would keep the pops, housing, and job numbers lower. I wrote a homebrew mod that further reduced POPs, Housing, Jobs by 1/2 to 2/3 and that also seemed to help. With all of the above even a 7-8 year old system should be able to get you to the standard CRISIS timing without TOO much hassle. A lot of it depends on your personal threshold of "slow but playable" vs. "unplayable".

Note: I heard some elements of performance may have improved since 2.3. If things actually got WORSE when it comes to jobs, pops, and similar then the above statement based on 2.3.x performance may not hold.
 
I have a very similar situation than you - and I switched to medium galaxies. Result:
Even on this level the game slows significantly down in lategame: I stopped my last two games during this phase. It's not as ugly as in big galaxies (way better), but after a while...

Unfortunately you can't kill this beast with hardware. I tried: changed my CPU from i7 4990k to Ryzen 3800x (and upgraded the rest properly), and the issue is still there, even on medium.

I don't know if it helps you BUT you could always try SMALL galaxies with low habitability and no guaranteed starting planets. Seems to work well enough for me with 2.3.x ....

I would THINK (??) that if you snagged a mod that reduced pops, pop growth, pop assembly, jobs, housing, habitats, and similar you could at least INDIRECTLY attack some of the issues.

NOTE: My system was "really good" about 7-8 years ago but is NOTHING compared to current systems. IF you were willing to make HUGE SACRIFICES in the game types you wanted to play I think you could get a game in -- at least until standard crisis.
 
I was counting from the launcher screen, but it's almost the same. From the desktop it would probably be an extra 0.5s.


I agree it reads all/most text files (you can see that by checking what files it accesses) - that by itself is enough to create a checksum. It probably parses them too, but I didn't see any evidence of compilation.

okay i remembered why i originally believed they're compiled, you can edit the text files while the game is running and changes are not accounted for. the text files are already read and turned into precompiled calls it saves on RAM. it essentially, does exactly what it does for parsing them, but doesn't need to save all the text files onto RAM. there's essentially no reason for them to keep the text files around or access the text files during actual play.

I don't know if this is a confusion of terms, but it's not true compiling (i was using the layman usage of the term, as in it's collecting all of them in one place in an orderly fashion), it's essentially turning all the text files into an object that is a list of what function to call in what order and when with what arguments. Parsing would require the game to access your hard drive, which is how save games are read and the like.

at least i don't see any reason why they wouldn't do this, they could be saving the text files on RAM and parsing them, but why not just parse all the files once.

is stellaris installed on an SSD for you?

all paradox games, on several different computers always take several minutes for me to start, so i doubt there's a hardware thing on my end.
 
Good day. You seem to know what you are talking about, certainly more than me. Is the idea of an overhaul of the engine impossible for the most popular space strategy game actually impossible?

If I am not incorrect Sins of a solar empire managed to buff up their ancient engine 5 or 6 years after release.


Would it be crazy to overhaul the engine?? Not necessarily. Unfortunately I'd be willing to bet Paradox will NOT do it solely for the benefit of customers. It's going to come down to an issue of what can the do that maximizes medium and possibly long term income.

Specifically some gotchas would be things like:
  • Should they do this overhaul or do a Stellaris 2 .... similar to the Anthem issue where the devs more-or-less GAVE UP fixing the train-wreck of the original game and just started working on Anthem 2.
  • Is there an ROI for this? I.E. will an overhaul wind up making them MORE money than not doing an overhaul and rolling out a few expansions instead. My guess is that there are WAY too many people buying expansions for Paradox to justify this.
  • Should they ditch some of the current systems that are the source of the problems in favor of increasing MICRO even further?? For example if the PLAYER handled 99% of the job assignment / creation that would get rid of checks for job shuffling as an example. While I don't like the performance we have now I "think" I may dislike the perceived MICRO load on the players even more.

What would I do in their place seeing as how I dislike BOTH the 2.3.x MICRO load && Performance:
  • I would TRY to keep the spirit of the game we have now
  • I would be willing to make concessions in the reality vs. economic events spectrum. For example economic events would likely only be calculated "once per month".
  • I would be willing to make concessions when it comes to NUMBERs. For example I'd try to cut the number of POPs, JOBs, and HOUSING dramatically ... say 1/3 the value it is currently. Rebalancing a LOT of things would be required to have this flow properly.
  • I would give players the option to turn OFF a lot of the smart automation. [I.E. no job shuffling at the cost of MORE micro]
  • I would look at systems to "prune" the number of calculations made. I.E. I would allow the player to create species templates and associate those with "jobs". I would also allow for prioritizing jobs. Combine all of this and automating a "good employee to correct job" becomes a more straightforward calculation.

In a world with unlimited resources AND no concerns about money [silly] I'd certainly remake the engine from scratch. Say "Recommended" system similar to AMD R5-3600 + 32GB RAM + SSD + RX590 [GTX1660] and have it able to use almost every last drop of horsepower & memory. I would try to scale it down but the MINIMUM would likely be equivalent to a good 5-year-old system ... 4 Core 3.5GHz ; 16 GB Ram ; 4 GB video card and hope for the best :)
 
It's (at least in my case) clearly CPU limited. Powerful cores heavily preferred. I first kept the old graphics card and the new CPU and got significantly more speed, but the plus is more or less the additional speed of the modern cores in relation to the old architecture. The additional number of cores are sleeping.
Changing the graphics card afterwards had no effect at all.

FYI: Several revisions ago we didn't see nearly the expected difference between newer systems [1-2 year "power" systems] and older systems like mine that were about 7 years old. I don't think it's SIMPLY a horsepower issue but also intertwined with some hardset timers and a lot of other seemingly "poor" behavior from the engine.


I'm running an E8500 processor. For a while I had a i5 3450 until that died.

I've managed to get a i5 6600K

My question to regular players is what performance improvement should I notice over these two processors.


I wouldn't expect night & day difference. I think you might DELAY the point where the game goes "unplayable-for-you". From prior testing Stellaris doesn't use the HP it has even when it's running slower than it should. So my best guess is it will DELAY problems but won't fix them for you.

You could try limiting the "pops" as best you can during game creation ... Tiny / Small galaxies with low habitability + no guaranteed planets can help. Mods that get rid of habitats OR otherwise limit population growth might help indirectly.

I got by with an i5 3570K with those settings ...
 
okay i remembered why i originally believed they're compiled, you can edit the text files while the game is running and changes are not accounted for. the text files are already read and turned into precompiled calls it saves on RAM. it essentially, does exactly what it does for parsing them, but doesn't need to save all the text files onto RAM. there's essentially no reason for them to keep the text files around or access the text files during actual play.

I don't know if this is a confusion of terms, but it's not true compiling (i was using the layman usage of the term, as in it's collecting all of them in one place in an orderly fashion), it's essentially turning all the text files into an object that is a list of what function to call in what order and when with what arguments. Parsing would require the game to access your hard drive, which is how save games are read and the like.
There is some confusion of terms. In technical terms parsing converts plain text files containing Paradox scripts into a parse tree stored in the memory of the process (this is a rather fast conversion, it probably can be done while reading the files without incurring any extra time). Compiling is an ambiguous term even within computer science. It is commonly used to indicate translation into machine instruction, but, more generally, it can mean translation into some other language. In the context of this discussion I meant compiling as compiling into machine instructions because that's what is required to have a good performance. This is a fairly expensive conversion.

is stellaris installed on an SSD for you?

all paradox games, on several different computers always take several minutes for me to start, so i doubt there's a hardware thing on my end.
Yes, it's on SSD. I don't think there is enough hardware spread to explain such difference. My guess would that it's something like active anti-virus or compression on the file system or disk driver or something like that that makes it slow for you.

To remove doubts regarding compilation I've run a small test. I've created a mod with the following event:
Code:
namespace = test

country_event = {
   id = test.1
   title = "test.1.name"
   desc = "test.1.desc"
   picture = GFX_evt_synth_organic_relations

   is_triggered_only = yes

   option = {
        immediate = {
            set_variable = {
                which = total
                value = 0
            }
            log = "test: *** Starting..."
            while = {
                count = 100000000
                if = {
                    limit = {
                        check_variable = {
                            which = total
                            value < 1000
                        }
                    }
                    change_variable = {
                        which = total
                        value = 1
                    }
                }
                else = {
                    change_variable = {
                        which = total
                        value = 2
                    }
                }
              
            }
            log = "test: [This.total]"
        }
    }
}
It takes 18-19 seconds to run when I trigger it.

The I wrote equivalent in C++
Code:
#include <iostream>
#include <cstdlib>
#include <vector>
#include <chrono>

int main(int argc, char* argv[])
{
    auto start = std::chrono::high_resolution_clock::now();
    int64_t count = 100000000;
    volatile int64_t total = 0;
    for (int64_t i = 0; i < count; ++i)
    {
        if (total < 1000)
            total += 1;
        else
            total += 2;
    }
    auto end = std::chrono::high_resolution_clock::now();
    std::chrono::duration<double> diff = end-start;
       
    std::cout << total << std::endl;
    std::cout << "Elapsed time = " << diff.count() << "s" << std::endl;
    return 0;
}
putting total into a volatile to prevent particularly aggressive optimizations. This code ran in 0.17s. So the script is about 100 times slower than the compiled code.
 
I haven't played since 2.3.x BUT I've had decent luck with SMALL galaxies, low habitability, and other settings that would keep the pops, housing, and job numbers lower. I wrote a homebrew mod that further reduced POPs, Housing, Jobs by 1/2 to 2/3 and that also seemed to help. With all of the above even a 7-8 year old system should be able to get you to the standard CRISIS timing without TOO much hassle. A lot of it depends on your personal threshold of "slow but playable" vs. "unplayable".

Note: I heard some elements of performance may have improved since 2.3. If things actually got WORSE when it comes to jobs, pops, and similar then the above statement based on 2.3.x performance may not hold.

It runs fine until it doesn't and then it's really really bad, not just low fps, stutters that last for a second at a time constantly. That's my definition of unplayable. I wouldn't care if it slowed down a bit when everything gets hectic, that would make sense. This is something broken in game.
 
There is some confusion of terms. In technical terms parsing converts plain text files containing Paradox scripts into a parse tree stored in the memory of the process (this is a rather fast conversion, it probably can be done while reading the files without incurring any extra time). Compiling is an ambiguous term even within computer science. It is commonly used to indicate translation into machine instruction, but, more generally, it can mean translation into some other language. In the context of this discussion I meant compiling as compiling into machine instructions because that's what is required to have a good performance. This is a fairly expensive conversion.


Yes, it's on SSD. I don't think there is enough hardware spread to explain such difference. My guess would that it's something like active anti-virus or compression on the file system or disk driver or something like that that makes it slow for you.

To remove doubts regarding compilation I've run a small test. I've created a mod with the following event:
Code:
namespace = test

country_event = {
   id = test.1
   title = "test.1.name"
   desc = "test.1.desc"
   picture = GFX_evt_synth_organic_relations

   is_triggered_only = yes

   option = {
        immediate = {
            set_variable = {
                which = total
                value = 0
            }
            log = "test: *** Starting..."
            while = {
                count = 100000000
                if = {
                    limit = {
                        check_variable = {
                            which = total
                            value < 1000
                        }
                    }
                    change_variable = {
                        which = total
                        value = 1
                    }
                }
                else = {
                    change_variable = {
                        which = total
                        value = 2
                    }
                }
            
            }
            log = "test: [This.total]"
        }
    }
}
It takes 18-19 seconds to run when I trigger it.

The I wrote equivalent in C++
Code:
#include <iostream>
#include <cstdlib>
#include <vector>
#include <chrono>

int main(int argc, char* argv[])
{
    auto start = std::chrono::high_resolution_clock::now();
    int64_t count = 100000000;
    volatile int64_t total = 0;
    for (int64_t i = 0; i < count; ++i)
    {
        if (total < 1000)
            total += 1;
        else
            total += 2;
    }
    auto end = std::chrono::high_resolution_clock::now();
    std::chrono::duration<double> diff = end-start;
     
    std::cout << total << std::endl;
    std::cout << "Elapsed time = " << diff.count() << "s" << std::endl;
    return 0;
}
putting total into a volatile to prevent particularly aggressive optimizations. This code ran in 0.17s. So the script is about 100 times slower than the compiled code.

sorry, yeah, i tend to always forget what things are called, but of course using those libraries will be significantly faster than anything, they've been assembly tweaked for decades. this has just been a semantic debate, sorry for wasting our time, because the parse tree is stored; that to me, seems like compiling, while parsing generally only refers to when it's actually occurring(reading a file or equivalent).

those are the speeds of what i'd expect them to be different when ran through something like stellaris. XD i can hardly think stellaris'd be set up to perform loops very well.

on the load time. I'm not really sure, I don't tend to run with antivirus, but i recently installed one after becoming the head of IT for my company (i'm the only one in IT at my company so it's not as extravagant as it seems) and i do feel i took a hit to the load time after that happened, but it was still at least a minute load time before hand. this applies to all paradox games as well, so it's not a problem with any specific files, any other ideas you have would be greatly appreciated.
 
And Yes, I'd be willing to pay for a successor. I love the Genre too much to give up on it.

Exactly that is what rally baffles me about you people...
This attitude is why never anything gets really fixed. Example is Star Trek Online (which I currently revisit after 7 years): Half of the missions are either broken or massively stacked against the player. But instead of fixing it, they gave the player a "skip" button. But they still pump out new microtransactions stuffs and the people still buy said stuff...

As already mentioned, I have 4.000 hours on CKII but I won't ever touch CKIII - even if PDX would gave it to me for free!
(Let's be honest, that will never happen as I'm only a fan and not a fanboi and that particular straw, why I will never play it anyway, broke back when they "changed" the mediterran portrait pack, cut half of it and sold it as a different DLC)

As long as people, with more money than they actually deserve, blindly buy, politics of Publisher/Developer will never change!

In such cases I always like to give my buddy Steve 1:39 minutes of your time:

Also: I find the lack of Developer in this thread disturbing!
 
on the load time. I'm not really sure, I don't tend to run with antivirus, but i recently installed one after becoming the head of IT for my company (i'm the only one in IT at my company so it's not as extravagant as it seems) and i do feel i took a hit to the load time after that happened, but it was still at least a minute load time before hand. this applies to all paradox games as well, so it's not a problem with any specific files, any other ideas you have would be greatly appreciated.
It's hard to make a guess. I would try to look at where the time is spent (like user vs kernel, possibly in what module, which might point to AV, for example). Also if it's spent in disk IO or not. The choice of the tool would depend on OS, but all of them have tools to monitor that. What OS are you using?