[Dev Team] 2.7.2 Patch Released [checksum 60bf]

  • 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.
fixing a bug should be quite easy
As a software developer, I can tell you that 70-90% of all bugs are hard to fix, depending on the complexity of the software. In case of Stellaris I'd guess it's closer to the high end.

Key to fixing bugs is efficiently is the ability to reliably reproduce them. In case of Stellaris, having one or two saves that you can work from would be an enormous help, but most bug reports I've seen don't include save files. If more saves were sent, bugs could be fixed much more swiftly. More importantly, with save files you can automate tests for this bugs in future "Regression Tests" (see below).
testing if the fix actually didn't create more problems
Indeed, This is called *Regression Test* btw.. Regression tests are notoriously hard to manage, and a lot of effort is spent on automating tests, so you can just push a button and let a test run over night or, even over a couple of days, in the hope that 90% of all regressions are actually caught. However, you can only automatically test for bugs that you actually experienced before, or are anticipating for some reason. As far as I can tell, most of the regression bugs that I've heard of in Stellaris were not of that type.

Unfortunately, if these bugs are discovered in beta, exactly because they were not anticipated or experienced before, they are typically very hard to locate and fix.
I would expect the game performance to be the same throughout the game
That's a very unreasonable expectation. In 2400 you will typically have a hundred times more systems occupied, a hundred times more pops, and a considerably higher number of fleets. At some point, the computing capacity will reach it's limit - simply because games like this are designed to scale up to the highest possible computing power. If they don't, players will rightfully complain they invested huge amounts of money into high end gaming rigs for nothing.
Congrats, consider yourself lucky because I've encountered around 15 bugs in one game. A few were forgettable, but others were more serious and actually quite annoying.
You're responding to a statement about game breaking bugs with forgettable and annoying ones?
the bugs became unbearable and with a friend we stopped playing entirely. And I'm definitely not investing more money into new DLCs unless we get a playable game
'Playbable' is a pretty clearly defined property, and Stellaris has always been that. You should be more concise with your complaints - making literally false statements doesn't help anyone.
WE DON'T MATTER for PDX, they only care about MONEY
That's a very brief statement to make for a direct contradiction. Players pay money if they're happy with the product, so PDX can't afford to make them unhappy. Also PDX keeps releasing patches that are no tied to DLCs, and that's more than can be said for most other games! In that regard, PDX is clearly more concerned with keeping players happy than most.
Hope this is enough reason for you why I'd want this game to be review-bomb... so that the stoooooopid PDX management notices us, players
Calling names, making false statements and attacking a company for delivering patches and new content at the same time is unlikely to get you that kind of attention that you are longing for.
there are bugs in the game since 2.0 or 2.2 which to this day haven't been addressed.
Software always contains bugs, and some are harder to fix than others. It's reasonable to weigh the effort of fixing a particular bug against the issues it causes, and then decide to leave it alone, and instead put that effort into fixing three other, more urgent bugs.
IT might also be relatively easy to run those processes in parallel.
Have you ever written software that processes stuff in parallel? Have you ever rewritten existing software to run stuff in parallel that it currently doesn't? As a software developer, I can tell you that the first is quite hard, but the second is extremely difficult. If Stellaris hasn't been written to run processes in parallel from the get-go, it's extremely hard to add that feature afterwards. The main issues are synchronization, and data races. The former is needed to avoid the latter, and it tends to eat most of the performance that you can gain - and sometimes actually more than that. The latter is what causes irreproducible bugs - and those are by far the hardest to fix!
 
  • 5
  • 3
  • 1Like
  • 1
Reactions:
As a software developer, I can tell you that 70-90% of all bugs are hard to fix, depending on the complexity of the software. In case of Stellaris I'd guess it's closer to the high end.

Key to fixing bugs is efficiently is the ability to reliably reproduce them. In case of Stellaris, having one or two saves that you can work from would be an enormous help, but most bug reports I've seen don't include save files. If more saves were sent, bugs could be fixed much more swiftly. More importantly, with save files you can automate tests for this bugs in future "Regression Tests" (see below).

First of all, I'm software developer myself, so I have a somewhat overview on how the systems in Stellaris 'probably' work. Yes, probably.
I haven't seen the actual code so can't argued with some of your points, but what I strongly disagree with is "I can tell you that 70-90% of all bugs are hard to fix".
No they are not, especially if there's a precise way to reproduce the bug, and at least half of the game-breaking/loss of enjoyment bugs do have that mentioned in the post. Simply if it's easy to reproduce the bug, in most of the cases, at least in my work, it's easy to identify "the boogie".

Indeed, This is called *Regression Test* btw.. Regression tests are notoriously hard to manage, and a lot of effort is spent on automating tests, so you can just push a button and let a test run over night or, even over a couple of days, in the hope that 90% of all regressions are actually caught. However, you can only automatically test for bugs that you actually experienced before, or are anticipating for some reason. As far as I can tell, most of the regression bugs that I've heard of in Stellaris were not of that type.

To my knowing, it's no easy feat to write regression tests for game systems like this. Too many variables. That's why you need more testers, to test out different scenarios.

That's a very unreasonable expectation. In 2400 you will typically have a hundred times more systems occupied, a hundred times more pops, and a considerably higher number of fleets. At some point, the computing capacity will reach it's limit - simply because games like this are designed to scale up to the highest possible computing power. If they don't, players will rightfully complain they invested huge amounts of money into high end gaming rigs for nothing.

I have no idea what's so "unreasonable expectation" on getting better performance ON BETTER HARDWARE.

You're responding to a statement about game breaking bugs with forgettable and annoying ones?

'Playbable' is a pretty clearly defined property, and Stellaris has always been that. You should be more concise with your complaints - making literally false statements doesn't help anyone.

Playable but to what degree :) The game was designed in a way where it should be able to handle 1000 size galaxy(both SP and MP). Just try playing both SP and MP on this size and then call me back what you've discovered. The game engine is unable to handle that, since 2.2-2.3?

Imagine someone buying a Ferrari and all he get's from the engine is Fiat Punto. <--- possibly the best description of Stellaris right now.

That's a very brief statement to make for a direct contradiction. Players pay money if they're happy with the product, so PDX can't afford to make them unhappy. Also PDX keeps releasing patches that are no tied to DLCs, and that's more than can be said for most other games! In that regard, PDX is clearly more concerned with keeping players happy than most.

Calling names, making false statements and attacking a company for delivering patches and new content at the same time is unlikely to get you that kind of attention that you are longing for.

I've made none false statements. I have my eyes widely open, and only comment from my own experience of playing Stellaris. I don't really care about attention as I've given up on how PDX comunicates with players. I'm just stating my concerns where it will take the company with this kind of attitude towards the players.

Software always contains bugs, and some are harder to fix than others. It's reasonable to weigh the effort of fixing a particular bug against the issues it causes, and then decide to leave it alone, and instead put that effort into fixing three other, more urgent bugs.

Yes it does, but in case of Stellaris there's hundreds of bugs and I've said it several times and I'm getting tired of repeating myself. There are bugs which are in the game since 2.0 and yet here we are at 2.7.2 with 90% of which are daily added/duplicated in bug report forum. And I don't want to start this again, but how the hell did PDX release 2.7.1 in a state it was, is still a mystery to me. From my point of view, as I am also doing code checks from other devs where I work, I always ask each "HAVE YOU TESTED IT ??", because if i run the code myself and see from the very first request that it clearly doesnt work, the person is lying that he/she tested it. Where I'm getting with this? 2.7.1 before release was clearly not even tested.

Have you ever written software that processes stuff in parallel? Have you ever rewritten existing software to run stuff in parallel that it currently doesn't? As a software developer, I can tell you that the first is quite hard, but the second is extremely difficult. If Stellaris hasn't been written to run processes in parallel from the get-go, it's extremely hard to add that feature afterwards. The main issues are synchronization, and data races. The former is needed to avoid the latter, and it tends to eat most of the performance that you can gain - and sometimes actually more than that. The latter is what causes irreproducible bugs - and those are by far the hardest to fix!

I do so, daily :) I did several times. And I can tell you the first one is definitely not hard, or you just don't have enough experience. 2nd is definitely hard, no argue there, it still doesn't change a thing about PDX focusing more on that. Synchronization and data races might be big issue of how Stellaris runs in multiplayer, but it shouldn't be that of a problem in singleplayer.

The latter is what causes irreproducible bugs - and those are by far the hardest to fix!

Again, most of the bugs reported are easily reproducible. I have not seen a single one like that, they are reproducible to at least some degree.
 
Last edited:
  • 4
  • 2
  • 1
Reactions:
what I strongly disagree with is "I can tell you that 70-90% of all bugs are hard to fix".
No they are not, especially if there's a precise way to reproduce the bug, and at least half of the game-breaking/loss of enjoyment bugs do have that mentioned in the post.
What I meant was actual, hard bugs, not simple oversights such as some bonus inadvertantly applying to something it shouldn't or an UI glitch. I do agree if the bug reports come in with a good description and a save file, that greatly increase the chance that it can get fixed with reasonable effort. I expect half of those are indeed easy to fix - the others involve complex mechanisms that need deeper investigations so that a possible fix won't negatively affect other things. Many bug reports I've seen do not have a save file attached, or are not clear in their description. For these I expect the vast majority take a considerable amount of time to fix. That's why I said about 70-90% of all (reported) bugs are actually hard to fix.

I do agree that for most software products, being able to reproduce a bug is a big step towards solving the issue. But Stellaris has such a large amount of settings and possible DLC combinations that in many cases it's very hard to anticipate the fulll effect of a possible patch. As a result, a lot of additional work is needed to set up automated tests to prevent regressions later.

People keep demanding that PDX should put a higher priority on quality. But quality comes at a cost. High quality means that a change as minor as changing the width of a menu takes a total of two hours work to properly specify, implement, document, and test it. And hat's not a number I'm making up, that's the number I know to be real from a real world software project with high quality standards.
 
  • 1Like
Reactions:
High quality means that a change as minor as changing the width of a menu takes a total of two hours work to properly specify, implement, document, and test it. And that's not a number I'm making up, that's the number I know to be real from a real world software project with high quality standards.

Can't agree more on this. The number is pretty accurate.
In another thread I've said that Stellaris is understaffed for the amount of bugs it accumulated over time, and the number is not getting any lower.
That's the real problem.
 
  • 1
  • 1Like
Reactions:
To my knowing, it's no easy feat to write regression tests for game systems like this. Too many variables. That's why you need more testers, to test out different scenarios.
You're thinking of unit tests - in that case I would agree. Regression tests means verifying that bugs we've fixed no longer occur (or re-occur) in a new release. Basically with each bug fix you add a test to the regression test base that verifies the bug does not occur (again).

It's not easy, but it can be done.
 
You're thinking of unit tests - in that case I would agree. Regression tests means verifying that bugs we've fixed no longer occur (or re-occur) in a new release. Basically with each bug fix you add a test to the regression test base that verifies the bug does not occur (again).

It's not easy, but it can be done.

I didn't think of unit tests nor I did say anything different. :D Can't imagine unit tests for number of methods in Stellaris. Regression tests do also have variables, you said it yourself that Stellaris has different configuration with each DLC. That's all I said. Anyways, let's not jump from a Stellaris staff/management problems to general development processes.
 
The game was designed in a way where it should be able to handle 1000 size galaxy(both SP and MP). Just try playing both SP and MP on this size and then call me back what you've discovered. The game engine is unable to handle that, since 2.2-2.3?
I have two active V2.72 late games in 600 star galaxies, and they are working fine on my rig. (i7-6700K , 980 GTX, 48GB RAM)

I do agree to a point, but it's a known fact that games to tend to run into difficulties when run at highest specifications, even on high end systems. Coming from Galactic Civilizations 3 which pretty much ends at ~200 systems, I've always felt that complaints about a size 1000 galaxy playing slow was a rather high level complaint. ;)

That said, I've played since 2.3 and experienced two late game performance issues related to too much pop calculations, and both were fixed. The first one took very long, but the recent one was fixed within weeks. Yes, it shouldn't have occurred in the first place, but it *was* fixed in a timely manner.

Personally, I couldn't care less: I tend to micromanage a lot, and that means the time the computer takes is rather small compared to the time I need to manage my empire. So, tbh, I might not be the best person to judge on these performance issues...:cool:
 
  • 1
Reactions:
you said it yourself that Stellaris has different configuration with each DLC
Indeed. GC3 suffered even more from that than Stellaris: with each new release there were more bugs for people who didn't have all the DLCs, probably because they didn't have the capacity to test (and fix!) all configurations. I eventually got tired of that and that's how I ended up here.
 
Have you ever written software that processes stuff in parallel? Have you ever rewritten existing software to run stuff in parallel that it currently doesn't? As a software developer, I can tell you that the first is quite hard, but the second is extremely difficult. If Stellaris hasn't been written to run processes in parallel from the get-go, it's extremely hard to add that feature afterwards. The main issues are synchronization, and data races. The former is needed to avoid the latter, and it tends to eat most of the performance that you can gain - and sometimes actually more than that. The latter is what causes irreproducible bugs - and those are by far the hardest to fix!
While I cannot (and never will) claim to be very familiar with the process of parallelization, I do recognize that there are some processes that are easier than others. Adding a calculation to have a graphical section include realistic orbits and rotations that do not in general depend on the other parts of the game seemed to me a relatively easier aspect to add in parallel than something that does depend on other parts of the game for information. Hence, why I said "might be."
 
realistic orbits
I can tell you that this is no easy feat if you consider other stuff that depends on this. Especially fleet movements. I think planets, asteroids basically everything in the galaxy has pre-generated coordinates. Simply adding movement to that, your fleet over the planet would be in constant move because the coordinates are changing, therefore target for your fleet is changing. You would need to create "orbits" around the planetary bodies to move fleets that are stationary over them. With current system, it would kill the game entirely if it was to run on the same core as the rest of the game.
 
  • 1
Reactions:
While I cannot (and never will) claim to be very familiar with the process of parallelization, I do recognize that there are some processes that are easier than others. Adding a calculation to have a graphical section include realistic orbits and rotations that do not in general depend on the other parts of the game seemed to me a relatively easier aspect to add in parallel than something that does depend on other parts of the game for information. Hence, why I said "might be."
Yes, parallelizing entirely different tasks is relatively easy. However, it isn't worth the effort unless all of the tasks you want to run in parallel actually do require heavy computation. And that is expremely rare!

The best return of investment (regarding time to develop) can be gained by looking at singular tasks that are hard to compute, and deciding if and it what way it can be parallelized. Then you can fully control the splitting of the full tasks into roughly equal chunks. However, it takes effort and experience to choose the right method of parallelization, the right chunk size, and to get synchronization right.
 
  • 1
Reactions:
I can tell you that this is no easy feat if you consider other stuff that depends on this. Especially fleet movements. I think planets, asteroids basically everything in the galaxy has pre-generated coordinates. Simply adding movement to that, your fleet over the planet would be in constant move because the coordinates are changing, therefore target for your fleet is changing. You would need to create "orbits" around the planetary bodies to move fleets that are stationary over them. With current system, it would kill the game entirely if it was to run on the same core as the rest of the game.
You're right regarding the computational effort needed for fleets, but since the number of fleets is typically a lot smaller than the number of pops, and lots of checks and calculations are performed per pop, you can't really know for sure if that would make that much of a difference compared to the remainder of the calculations the game performs.

That said, I don't think a lot of people really would care about realistic orbits - so the question really is whether PDX thinks it's worth the investment in development time.
 
  • 1
Reactions:
You're right regarding the computational effort needed for fleets, but since the number of fleets is typically a lot smaller than the number of pops, and lots of checks and calculations are performed per pop, you can't really know for sure if that would make that much of a difference compared to the remainder of the calculations the game performs.

That said, I don't think a lot of people really would care about realistic orbits - so the question really is whether PDX thinks it's worth the investment in development time.

If there was a way to mod this into the game :/ I would definitely try to create such a mod.
 
Did someone not say this used to exist pre-2.-0? I started playing 2.1 so I do not know but if it did exist, perhaps the code for it still does.
This used to exist in the beta, but was removed due to interface hassle. I don't think it used any performance at all - just turn it on when you enter a system, and turn it off on galaxy map, no need to calculate the orbits of everything all the time.
 
  • 2
Reactions:
Developers it would be VERY good if you will start to show which game files change update and which don't touch.

For modders to check everything (all game files) even after small hotfix - it is sado maso...
It would be trivial to make a script that checksums files and spits out a table, you could compare it in excel or something. Or do a git init in the game folder and have it do it for you