Bug #3977
Crash at Resume Saved - ArgumentOutOfRangeException
0%
Description
I have an apparently corrupt persistent.sfs file, and instead of rolling back to a quick save (which was many hours of excitement prior), I'm attempting to get to the bottom of why it's failing. I reviewed the file itself and everything looks fine, but there must be something I'm missing as part of the load process. I'd like to know if there is any way we can either fix the persistent.sfs file itself, or perhaps have new code introduced into the game to work around issues like these.
Error I'm receiving (from player.log - Download: https://www.dropbox.com/s/golborevesdhk3a/Player.log?dl=0)
ArgumentOutOfRangeException: Argument is out of range. Parameter name: index at System.Collections.Generic.List`1[Experience.ExperienceTraitConfig].get_Item (Int32 index) [0x00000] in <filename unknown>:0 at KerbalRoster.SetExperienceTrait (.ProtoCrewMember pcm, System.String traitName) [0x00000] in <filename unknown>:0 at ProtoCrewMember..ctor (Modes mode, .ConfigNode node, KerbalType crewType) [0x00000] in <filename unknown>:0 at KerbalRoster..ctor (.ConfigNode node, Modes mode) [0x00000] in <filename unknown>:0 at Game..ctor (.ConfigNode root) [0x00000] in <filename unknown>:0 at GamePersistence.LoadGame (System.String filename, System.String saveFolder, Boolean haltIfIncompatible, Boolean suppressErrorMessage) [0x00000] in <filename unknown>:0 at MainMenu.LoadGame () [0x00000] in <filename unknown>:0 at TextButton3D+.MoveNext () [0x00000] in <filename unknown>:0 (Filename: Line: -1)
A screenshot can be downloaded here - https://www.dropbox.com/s/t51ggs5qrq916ty/screenshot80.png?dl=0
Persistent.sfs can be downloaded here - https://www.dropbox.com/s/h85yr3y7o8naca7/persistent.sfs?dl=0
Other details:
Version:
build id = 00705 2014-12-15_13-59-25 Branch: master Kerbal Space Program - 0.90.0.705 (OSXPlayer) BETA
System
OS: Mac OS X 10.10.2 CPU: Intel(R) Core(TM)2 Duo CPU P8800 @ 2.66GHz (2) RAM: 8192 GPU: NVIDIA GeForce 9600M GT OpenGL Engine (256MB) SM: 30 (OpenGL 2.1 [2.1 NVIDIA-10.0.19 310.90.10.05b12]) RT Formats: ARGB32, Depth, ARGBHalf, RGB565, ARGB4444, Default, DefaultHDR, ARGBFloat, RGFloat, RGHalf, RFloat, RHalf, R8
System report can be downloaded here - https://www.dropbox.com/s/yyh1dwlhculon2h/MacBook%20Pro.spx?dl=0
History
#1 Updated by BeguiledAardvark almost 10 years ago
I should state the game doesn't actually crash - it just fails to load anything. Sorry for the confusion - please correct the title of this entry if possible.
#2 Updated by Squelch almost 10 years ago
- Status changed from New to Need More Info
- Severity changed from High to Low
The savegame certainly seems to be corrupt, but there are few clues as to how it came to be this way.
Looking at the save, there are Kerbals assigned to seats but there doesn't appear to be a craft capable of supporting them. Setting the idx for each of them in the roster section of the save to -1 will enable the file to be loaded, but this is not recommended.
What happened to get the save into this condition? For this to be treated as a serious bug report, we need to know how to reproduce it. If you can remember the steps taken before the save corruption it would give us a starting point.
#3 Updated by BeguiledAardvark almost 10 years ago
The idx values did stand out to me as I was going over the persistence file, however, I wasn't sure what it equated to. Now that you've stated it has to do with seat positions, that makes me think a bit more about the situation. I had recently returned three Kerbonauts from an orbit they were stranded in - Jeb, Jerrigh and Donlas. They were all in the MunarLander Mega mk1 craft. I had to fly drone flights up to bring it back home by basically embracing it and decelerating it to a point it would re-enter Kerbin atmosphere. They all landed and as a matter of fact, I have a screenshot of it [ https://www.dropbox.com/s/revqc57r0vtxtty/screenshot78.png?dl=0 ]. After all of that I took a break and saved my game by backing out via the standard exit menus - not by forcing a quit on the game (Cmd-Q on Mac).
When I came back to play later it refused to load. The only thing that changed between when I closed the game and tried it again was that I added a few plugins:
Planetshine - http://www.curse.com/ksp-mods/kerbal/224876-planetshine
Chatterer - http://www.curse.com/ksp-mods/kerbal/223841-chatterer
When the failure started occuring, I removed the above mods and tried again with no luck.
I then removed a previously-installed mod:
Docking Port Alignment Indicator - http://www.curse.com/ksp-mods/kerbal/220299-docking-port-alignment-indicator-version-5-1
The docking mod had been installed for a long time prior to this issue, and existed through many saves and resumes.
So, aside from adding those few mods (which wouldn't affect it in my mind?) nothing else really stands out of the ordinary.
If I were to set the idx values for these three Kerbonauts to -1, I'm assuming they will no longer be "attached" to a seat on some craft somewhere, and will in turn be available for assignment to new missions, correct? Also, you stated it's not recommended to make this change, but is that due to the fact that if there was a flight in progress it would then break due to there being missing Kerbonauts? If that is the case I have no worries there as I only have a few flights currently in progress (or should) and they are all drone-based.
Thanks for the response and for working with me on this. I will keep trying to provide whatever information I can to help quash any save issues that exist.
#4 Updated by Squelch almost 10 years ago
Thank you for your latest information. It does reveal a few areas of concern.
You may be aware that the current release has had some memory issues with OSX and possibly Windows 32bit. The use of mods can only increase the memory burden. The problems have manifested themselves in unexpected ways, and a corrupt savegame cannot be ruled out as another symptom. Removing mods from an existing save also runs a high risk of leaving artefacts and corruption. I also note that you have KSP Utilities installed. Were these used after the corruption or before?
While setting idx = -1 may allow the save to loaded, the rest of the save cannot be trusted for integrity. There are other variables set on mission completion/recovery that may also be incomplete or incorrect. You may get away with it in this case, but please be aware that there may be problems later in that game.
While the ability to mod is supported and encouraged, it is impossible to compensate for the effects that mods bring when dealing with bugs in the core game. Save edits fall into the same category.
I'm afraid there's not much else we can offer other than the paraphrased advice that "all warranties are void for modded or edited games"
#5 Updated by BeguiledAardvark almost 10 years ago
I didn't know KSP Utilities existed or how it was installed. I wasn't even aware of its existence prior to you mentioning it. Not sure what I can say on that front.
Adjusting the values to -1 did not, in fact solve the issue either. I guess I'll go back to my most recent quicksave and go from there. That's a bummer.
#6 Updated by Squelch almost 10 years ago
- Status changed from Need More Info to Not a Bug
- % Done changed from 0 to 100
I'm sorry to hear that, and I do know how frustrating it can be when a long game gets broken in such a manner. May I suggest regular hard saves? It is a little immersion breaking, but means large chinks of progress are not lost.
Thank you for your report, and for the quick responses. It has uncovered some aspects that might need attention, but regardless, it has also been a learning exercise I hope.
I'll mark this as not a bug.
#7 Updated by BeguiledAardvark almost 10 years ago
Sounds good, I appreciate the efforts in the research. I have seen backup alternatives and will go down that route as well just in case. If I find anything new I'll bring it back to the bug tracker.
#8 Updated by BeguiledAardvark almost 10 years ago
One final update and something that I have a feeling is going to probably frustrate you...
Quick save replacements werent working either, so I decided to start a new career. When I attempted to choose a flag, there were no textures available. This was my first clue. Second clue: I then thought about the loading times and how they seemed to have improved recently, but I was naively chalking that up to .9 being more efficient at loading...
Considering the fact that missing assets may mean something deeper is amiss, I downloaded a fresh copy of .9, unpacked it, and started comparing.
Turns out I was missing both the NASAMission and Squad directories within GameData. How those disappeared I have no idea as I did not delete them, but I'm wondering if one of the addons didn't have something to do with it. I'm back in business now, and I apologize for the bother and once again I apreciate the efforts!