Jump to content

Unresponsive Kerbal after rover crash


Recommended Posts

Running Windows 8.1 | 64-bit | 8gb mem, KSP v0.90, with SCANsat_v10, Romfarer_LazorSystem_v35, and Claw's StockBugFixModules.v0.1.7d (DLLs: AnchoredDecouplerFix, EVAEjectionFix, KerbalDebrisFix)

I have a rover on Minmus which has crashed; Going too fast down a mountain and then slammed into the flats at the bottom, 2 flat tires, rolled and flipped several times before coming to a stop (sort of).

The rover landed upright, smashed, with the Kerbal driver standing in the external command seat. The rover continues to roll (very slowly, circling in reverse) even though all battery power has been shut down; I can still right-click the batteries to turn them on/off. No other part of the rover is controllable. The Kerbal is not responsive or controllable; When right-clicked however, his EVA propellant shows. The Resources display shows both battery level and EVA propellant levels.

Examining the Persistent file, the Vessel declaration for the rover (named: M-Sci-Rover) is not listed as debris; It's listed as 'type = Rover'. The Kerbal in question (named: Siggas), is listed as a Part with 'name = kerbalEVA', and 'state = Seated (Command)'... yet Siggas is standing, not sitting ... see picture below.

Claw's StockBugFixModules for some reason are not preventing this issue. I've also reviewed Claw's thread for the mod, and have tried (manually editing the persistent file) all of the listed suggestions - to no avail.

My persistent.sfs file can be obtained here.

There is a second rover present (also named: M-Sci-Rover), sent to pick up Siggas to continue the mission; It is operational, autonomous.

Any suggestions or solutions would be appreciated. :)

Qrmg9yi.png

Link to comment
Share on other sites

This is an old stock bug that has to do with the kerbal getting classified as debris, to fix it you have to edit your save games persistance.sfs in a text editor, also it looks like some one has written a plugin that will actively fix this issue, info on the bug and fixes as well as a link to the plugin can all be found here :)

Cheers

Edit: I guess I should read the entire post before replying :blush: lol. interesting I'll go over your save and see what I can find

Edited by Akira_R
Link to comment
Share on other sites

The weird thing is, in the persistence file, the kerbal is still listed as a part of the ship. Normally the bug is caused by the kerbal becoming detached from the ship and being incorrectly flagged as debris, but this is not what appears to have happened in your case, which is why the bugfix module thing and the usual solutions didn't work. Have you tried switching to the other vessel, switching back again, then trying to right-click the seat? If that doesn't work, you could try ramming (or pushing) one rover with the other. If the kerbal is not attached to the rover and isn't wedged in place, he won't move when the rover does, so will fall off it.

You could try docking with it (if it has a docking port) or clawing at it.

EDIT: Are you using 64-bit KSP? You said your computer is 64-bit, but is your copy of the game? 64-bit KSP has a lot of weird bugs like that.

Edited by TheMoonRover
typo
Link to comment
Share on other sites

The weird thing is, in the persistence file, the kerbal is still listed as a part of the ship. Normally the bug is caused by the kerbal becoming detached from the ship and being incorrectly flagged as debris, but this is not what appears to have happened in your case, which is why the bugfix module thing and the usual solutions didn't work. Have you tried switching to the other vessel, switching back again, then trying to right-click the seat? If that doesn't work, you could try ramming (or pushing) one rover with the other. If the kerbal is not attached to the rover and isn't wedged in place, he won't move when the rover does, so will fall off it.

You could try docking with it (if it has a docking port) or clawing at it.

One would think the Kerbal is detached from the rover, because he's standing in the seat... but honestly I have no idea why this is so, still being seen as a 'Part'. I've switched back and forth between the rovers, and all the other craft on have on Minmus as well. I've even gone to KSC and come back, and exited the game and come back; The situation remains the same.

I can right-click the Kerbal, but all that shows is his EVA propellant level. I can right-click on the batteries and turn them on/off, but no other parts of the rover respond (no right-clicking on the science experiments, or lights, etc).

In my reviewing the persistent file, I went back into the game and moved another of my Kerbals out of the mobile science lab and onto the surface - EVA. Examining the persistent data between the two of them, nothing looks abnormal; To my eye anyway, I'm not very up on all the variables used in the persistent script. Maybe I should take some time and look at KSP's dev docs and learn more.

One thing I've not tried is ramming the rover with the other. Good suggestion. I'm going to go and try that right now and see if he moves / falls off.

Link to comment
Share on other sites

Ok, well this is bizarre. I went back into the game to try and ram the dead rover with the other working rover... and I find that Kerbal Siggas is sitting in his seat rather than standing. Not only that, but I also had full control over him (right-click menu). So I had him get up and off the broken rover and walked him over to the working one (after gathering the science from the remaining experiments, 3 of them, successfully), and had him board its seat. I was going to drive him over to the rover complex (mobile science lab) which is not too far away, but decided to exit the game and come post results and screenies here. However, when I pressed the Esc(ape) key to get back to the KSC and menus - the game crashed. I've not tried to restart it yet. I want to look at the crash data, see if I can make some sense of it. Wondering if I should submit it to the Devs, especially with v1.0 release due at this point.

RgK5O2K.png

yHEBHD2.png

- - - Updated - - -

Can't read the dump file, but the error text file says: "KSP.exe caused an Access Violation." :huh:

Link to comment
Share on other sites

Access Violations are usually RAM crashes if I remember correctly, does your output_log.txt show a lot of NREs before the crash?

"NREs"? Not sure what that means.

From what I'm looking at, all seemed somewhat normal(?). Here's a portion of the log from the point where I pressed the Esc key...

[HighLogic]: =========================== Scene Change : From FLIGHT to SPACECENTER (Async) =====================

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

InvalidOperationException: Collection was modified; enumeration operation may not execute.
at System.Collections.Generic.List`1+Enumerator[UnityEngine.Collider].VerifyState () [0x00000] in <filename unknown>:0

at System.Collections.Generic.List`1+Enumerator[UnityEngine.Collider].MoveNext () [0x00000] in <filename unknown>:0

at Part.OnDestroy () [0x00000] in <filename unknown>:0

(Filename: Line: -1)

[LazorEVA: Disposing LazorEVA system on M-Sci-Rover]

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

[LazorEVA: Disposing LazorEVA system on Jan Kerman]

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

UnloadTime: 88.870270 ms
Unloading 4 Unused Serialized files (Serialized files now loaded: 0 / Dirty serialized files: 0)

Unloading 1472 unused Assets to reduce memory usage. Loaded Objects now: 90847.
Total: 273.117584 ms (FindLiveObjects: 5.252869 ms CreateObjectMapping: 6.833477 ms MarkObjects: 255.410141 ms DeleteObjects: 5.160923 ms)

Crash!!!

- - - Updated - - -

I should note that Jan Kerman was not the Kerbal on the rover, Siggas was. Jan was on EVA, standing at the base of the original (wrecked) rover's complex (mobile science lab, base of operations). See my notes above about that.

Link to comment
Share on other sites

NRE is short for NullReferenceException; they are either game breaking, create excessive lag, or have no apparent effect (usually one or both first two). They display much like the InvalidOperationException in your log, although I've never seen that before. It's probably unrelated, although that's just a guess.

Edited by TheMoonRover
Link to comment
Share on other sites

This is a similar event to when the kerbal is forcefully separated from the seat and ends up frozen. However, as you have discovered, there are times when the kerbal can get stuck in the seat.

It's a related bug for sure, but I don't know what the trigger is for this one exactly. It certainly happens during crashes (just like when the kerbal ends up as external debris), where the kerbal ends up ragdolled in the seat, but for some reason doesn't separate. Because I haven't really been able to replicate this one, my fix does not address this issue. However, I think I can maybe fake a save game and give it a try. My goal is to do some work on the fixes this weekend, and hopefully I can follow through on that.

If you want to fix the guy in the seat, try this post (I'm not sure if this is the one you were referring to earlier). http://forum.kerbalspaceprogram.com/threads/75586-Master-Thread-Unresponsive-Kerbals-in-EVA?p=1072667&viewfull=1#post1072667

As for NREs, they happen when the game tries to reference something that does not exist. They will pretty much always screw up the game in some way, but as noted above, the affects greatly vary. A lot of times it appears like they don't cause a problem until you stumble onto the right spot in the game where everything falls apart. Like GUI NREs that cause a ship to infinitely accelerate when trying to time warp. Seemingly unconnected events with catastrophic results.

Hopefully some bit of info in the above is useful for you. My fix won't do anything about this situation, since it's not programmed to (at this time).

Cheers,

~Claw

Link to comment
Share on other sites

NRE is short for NullReferenceException; they are either game breaking, create excessive lag, or have no apparent effect (usually one or both first two). They display much like the InvalidOperationException in your log, although I've never seen that before. It's probably unrelated, although that's just a guess.

Ok, yes, thank you. And, yes, I did find a few... SCANsat related. Don't know if that's a bug or related to what happened here though.

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_LazorSystem/part/Romfarer_LazorSystem'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

NullReferenceException: Object reference not set to an instance of an object
at System.Guid.BaseToString (Boolean h, Boolean p, Boolean [0x00000] in <filename unknown>:0

at System.Guid.ToString () [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.ToString () [0x00000] in <filename unknown>:0

at System.String.Concat (System.Object[] args) [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.IsActiveLazorSystem () [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.onPartDestroy () [0x00000] in <filename unknown>:0

at Part.OnDestroy () [0x00000] in <filename unknown>:0
UnityEngine.Object:DestroyImmediate(Object, Boolean)
UnityEngine.Object:DestroyImmediate(Object)
PartLoader:StripComponent(GameObject)
PartLoader:CreatePartIcon(GameObject, Single&)
PartLoader:ParsePart(UrlConfig, ConfigNode)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
PartLoader:StartLoad()
:MoveNext()

(Filename: Line: -1)

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_LazorSystemStack/part/Romfarer_LazorSystemStack'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

NullReferenceException: Object reference not set to an instance of an object
at System.Guid.BaseToString (Boolean h, Boolean p, Boolean [0x00000] in <filename unknown>:0

at System.Guid.ToString () [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.ToString () [0x00000] in <filename unknown>:0

at System.String.Concat (System.Object[] args) [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.IsActiveLazorSystem () [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.onPartDestroy () [0x00000] in <filename unknown>:0

at Part.OnDestroy () [0x00000] in <filename unknown>:0
UnityEngine.Object:DestroyImmediate(Object, Boolean)
UnityEngine.Object:DestroyImmediate(Object)
PartLoader:StripComponent(GameObject)
PartLoader:CreatePartIcon(GameObject, Single&)
PartLoader:ParsePart(UrlConfig, ConfigNode)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
PartLoader:StartLoad()
:MoveNext()

(Filename: Line: -1)

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_LazorSystemStackBig/part/Romfarer_LazorSystemStackBig'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

NullReferenceException: Object reference not set to an instance of an object
at System.Guid.BaseToString (Boolean h, Boolean p, Boolean [0x00000] in <filename unknown>:0

at System.Guid.ToString () [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.ToString () [0x00000] in <filename unknown>:0

at System.String.Concat (System.Object[] args) [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.IsActiveLazorSystem () [0x00000] in <filename unknown>:0

at Romfarer.LazorSystem.onPartDestroy () [0x00000] in <filename unknown>:0

at Part.OnDestroy () [0x00000] in <filename unknown>:0
UnityEngine.Object:DestroyImmediate(Object, Boolean)
UnityEngine.Object:DestroyImmediate(Object)
PartLoader:StripComponent(GameObject)
PartLoader:CreatePartIcon(GameObject, Single&)
PartLoader:ParsePart(UrlConfig, ConfigNode)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
PartLoader:StartLoad()
:MoveNext()

(Filename: Line: -1)

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_Lazor_Blue/part/Romfarer_Lazor_Blue'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_Lazor_Green/part/Romfarer_Lazor_Green'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_Lazor_Magenta/part/Romfarer_Lazor_Magenta'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_Lazor_Red/part/Romfarer_Lazor_Red'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

PartLoader: Compiling Part 'Romfarer/Parts/Romfarer_Lazor_Yellow/part/Romfarer_Lazor_Yellow'

(Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)

PartLoader: Compiling Part 'SCANsat/Parts/MapTraq/part/SCANsat_Tracker' ... etc etc etc

This is a similar event to when the kerbal is forcefully separated from the seat and ends up frozen. However, as you have discovered, there are times when the kerbal can get stuck in the seat.

It's a related bug for sure, but I don't know what the trigger is for this one exactly. It certainly happens during crashes (just like when the kerbal ends up as external debris), where the kerbal ends up ragdolled in the seat, but for some reason doesn't separate. Because I haven't really been able to replicate this one, my fix does not address this issue. However, I think I can maybe fake a save game and give it a try. My goal is to do some work on the fixes this weekend, and hopefully I can follow through on that.

If you want to fix the guy in the seat, try this post (I'm not sure if this is the one you were referring to earlier). http://forum.kerbalspaceprogram.com/threads/75586-Master-Thread-Unresponsive-Kerbals-in-EVA?p=1072667&viewfull=1#post1072667

As for NREs, they happen when the game tries to reference something that does not exist. They will pretty much always screw up the game in some way, but as noted above, the affects greatly vary. A lot of times it appears like they don't cause a problem until you stumble onto the right spot in the game where everything falls apart. Like GUI NREs that cause a ship to infinitely accelerate when trying to time warp. Seemingly unconnected events with catastrophic results.

Hopefully some bit of info in the above is useful for you. My fix won't do anything about this situation, since it's not programmed to (at this time).

Cheers,

~Claw

As mentioned, I did try the fixes, but no go. This is something different. I'm not sure if the crash caused the SCANsat NRE probem or if it's a bug in the mod... or if it has anything to do with preventing your fixes from working.

I can see I've got a few tests to check out here lol.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...