-
-
Notifications
You must be signed in to change notification settings - Fork 386
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Current master build crashes when loading savefiles created with current release #5920
Comments
Yeah, no surprise here. I think we've had other PRs merged (the ones touching name-gen & culture) that aught to have bumped it. Either way, if the new equipment branch is merged soon-ish. |
We've typically (in recent memory) bumped savegame versions shortly before release, after all of the PRs that break compatibility are merged. That being said, I'm planning on merging a bump "early" after #5734 is merged sometime in the next two weeks. |
So "master" does not always contain a build which can be reasonably expected to work? Ie, it is a dev branch (which occasionally gets tagged as a release), but not a release branch where any commit on it could potentially be turned into a release? (Not a criticism, just wrapping my head around this project.. :) ) |
Speaking generally, the Speaking to your specific concern - At current, we're in the middle of a savebump cycle, with multiple PRs in the pipeline and at least one already merged which break compatibility with previous versions of the game. We tend to only increase save versions by a single version between tagged releases, as being able to migrate / restore saves from each incremental change during the development cycle are generally not a concern worth the limited developer time available.
TL;DR: this is correct. Pioneer operates quite a bit differently than any software company you might have experience with - we have a very loose organizational structure, very limited manpower, and a small audience for the game that mostly plays tagged release builds. As a result, there's little desire to have a truly "stable" branch, and the relative stability of the master branch is mostly a result of an intentional effort towards catching bugs during the PR process rather than discovering them after merge. Unfortunately, what we're lacking the most is dedicated user QA when it comes to proposed pull requests - often only the PR author or maybe one other developer has the time and ability to fully test a branch, and some bugs (like this one!) can go unnoticed if they don't show themselves within that developer's testing setup. Hopefully that helps you to wrap your head around the way Pioneer works 😄 |
Thank you, yes it does. Again, no right or wrong, nor a criticism, just trying to figure it all out :) |
Closing as it is "working as intended". |
Observed behaviour
Attempt to load a savegame created with the current AppImage release (https://github.com/pioneerspacesim/pioneer/releases/download/20240710/Pioneer-x86_64.AppImage) with the current master build crashes.
This appears to have been broken by #5840
Despite the description stating that there would be a bump in the savefile version, both the old and the new savefile (attached below) are version 90.
A new save created with the current master build ("Micha_test_new.json") shows that the "Shields" entry of the player ship ("MW72") has moved location from the "model_body" to the "ship". There is no fall-back if the "shields" entry under "ship" does not exist and the above assertion in the JSON parser is triggered and the game crashes.
Expected behaviour
Game successfully loads older savegame.
Steps to reproduce
My pioneer version (and OS):
OS: Debian GNU/Linux 12
Pioneer Version: as described above
My output.txt (required) and game save (optional, but recommended)
Save 1: "Micha_test.json" : created using AppImage version
Save 2: "Micha_test_new.json" : created using current "master" build
Micha_test_new.json
Micha_test.json
output.txt
The text was updated successfully, but these errors were encountered: