Subject was called: Out-of-Range NPC ship jump-related crash!
Running latest v1.75.2 trunk on Win XP SP3.
Probable causes:
out-of-bounds arrays, NPCs scripted to jump to impossible places.
I discovered a game-crashing effect of one-way ticket to Oresrati OXP, which I am hacking to bits. If you "miss" a jump, the jump number counter can tick past the last element in the array...and then try jumping to a "null" system.ID, which often results in a game crash.
this.planetArray = [88,118,88,162];
this.ship1.exitSystem(this.planetArray[missionVariables.owt2o_nextPlanet]);
missionVariables.owt2o_nextPlanet +=1;
missionVariables.owt2o_nextPlanet can count upwards past the 162 value if a jump is missed/fails.
Another problem is trying to jump to an out-of-range system.ID seems to cause problems, which can happen if a jump is missed. Strangely, this seemed to cause even more severe problems than the jump to "null" location!
Here's the error message:
00:35:07.218 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
Hacked code causing these effects here:
OneWayTicket2Oresrati v0.3.zip
http://www.mediafire.com/?ky3qqyyx6kfw13z
That one was a crash-to-desktop. I even saw it happen when the jump should have been possible, as the system was within 7 LY and the script "fuels up" the NPC ship on creation.
Here's the later version, less prone but not completely immune of the same effects:
http://www.mediafire.com/?el9hgh3ybbyyr6f
(Yeah, I need to increase version. # )
Player ship hyperspace jump crash to desktop
Moderators: winston, another_commander, Getafix
Player ship hyperspace jump crash to desktop
Last edited by Switeck on Tue Apr 12, 2011 4:56 pm, edited 1 time in total.
- Okti
- ---- E L I T E ----
- Posts: 700
- Joined: Sun Sep 26, 2010 1:51 pm
- Location: A GH shop, near witchpoint to Oresrati in Galaxy 8
Re: Out-of-Range NPC ship jump-related crash!
Hi Switeck,
We discussed this topic on IRC,
In the original version I was changing the position of the ship to another one than witchspace entry positions. Because there are a lot of OXP's populating, interstellar space as an example assasins guild, you may end up with a NPC with a huge mass near the player ship. And obviously the exitsytem will not sucseed.
We discussed this topic on IRC,
In the original version I was changing the position of the ship to another one than witchspace entry positions. Because there are a lot of OXP's populating, interstellar space as an example assasins guild, you may end up with a NPC with a huge mass near the player ship. And obviously the exitsytem will not sucseed.
Re: Out-of-Range NPC ship jump-related crash!
Oh, I expect mass-locking to cause the jump to fail ingame as far as the NPC failing to jump.
But it was generating game crashes as well when that happened.
But it was generating game crashes as well when that happened.
- Commander McLane
- ---- E L I T E ----
- Posts: 9520
- Joined: Thu Dec 14, 2006 9:08 am
- Location: a Hacker Outpost in a moderately remote area
- Contact:
Re: Out-of-Range NPC ship jump-related crash!
A crash is always bad and shouldn't happen. Something has to be fixed in the game code.
However, short of fixing the crash issue the OXP-script should be made fail-safe, preventing it from the faulty incrementation which ultimately caused the crash. If that is possible, which I can't say because I don't have it.
However, short of fixing the crash issue the OXP-script should be made fail-safe, preventing it from the faulty incrementation which ultimately caused the crash. If that is possible, which I can't say because I don't have it.
Re: Out-of-Range NPC ship jump-related crash!
I eliminated out-of-range array calls as even remotely possible (by making the array immensely longer, or having it restart if it is about to go over) and still experienced crashes in my tests.
Telling an NPC ship to jump to a system.ID that's out of range due to low fuel or beyond 7 LYs...is one thing. I saw the NPC ship in my test fail on <7 LY jumps even when the script starts off by topping off its fuel. I put in debug-style reporting of both which array element was being called and what system.ID was being attempted.
The problem is pretty much beyond me at this point.
Telling an NPC ship to jump to a system.ID that's out of range due to low fuel or beyond 7 LYs...is one thing. I saw the NPC ship in my test fail on <7 LY jumps even when the script starts off by topping off its fuel. I put in debug-style reporting of both which array element was being called and what system.ID was being attempted.
The problem is pretty much beyond me at this point.
Re: Out-of-Range NPC ship jump-related crash!
Ok, I think this is related...so I'm making a NEW post here to draw attention to it.
(MIS!)Jumping too much in Galaxy 8 produced this crash:
18:30:22.281 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
Misjumping again, without null gates or 1way ticket 2 Oresrati installed:
19:39:35.750 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
Repeatedly misjumping to the same location (and ending up <0.5 LY from it after each jump):
19:49:12.234 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
What seems to make these crashes MORE likely is running the game at 4x, 8x, or 16x speed while jumping...but I have seen it happen without resorting to that.
NONE of these crashes can be attributed in any way to OneWayTicket2Oresrati, as I intentionally pulled it out of my add-ons folder to test. I was probably just mistaken to think that was the cause of the errors before.
(MIS!)Jumping too much in Galaxy 8 produced this crash:
18:30:22.281 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
Misjumping again, without null gates or 1way ticket 2 Oresrati installed:
19:39:35.750 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
Repeatedly misjumping to the same location (and ending up <0.5 LY from it after each jump):
19:49:12.234 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
What seems to make these crashes MORE likely is running the game at 4x, 8x, or 16x speed while jumping...but I have seen it happen without resorting to that.
NONE of these crashes can be attributed in any way to OneWayTicket2Oresrati, as I intentionally pulled it out of my add-ons folder to test. I was probably just mistaken to think that was the cause of the errors before.
- Cholmondely
- Archivist
- Posts: 5364
- Joined: Tue Jul 07, 2020 11:00 am
- Location: The Delightful Domains of His Most Britannic Majesty (industrial? agricultural? mainly anything?)
- Contact:
Re: Player ship hyperspace jump crash to desktop
Switeck - are there working versions of this? Or has it been nobbled by the various Oolite updates since 2011?Switeck wrote: ↑Mon Apr 04, 2011 11:54 pmSubject was called: Out-of-Range NPC ship jump-related crash!
Running latest v1.75.2 trunk on Win XP SP3.
Probable causes:
out-of-bounds arrays, NPCs scripted to jump to impossible places.
I discovered a game-crashing effect of one-way ticket to Oresrati OXP, which I am hacking to bits. If you "miss" a jump, the jump number counter can tick past the last element in the array...and then try jumping to a "null" system.ID, which often results in a game crash.
this.planetArray = [88,118,88,162];
this.ship1.exitSystem(this.planetArray[missionVariables.owt2o_nextPlanet]);
missionVariables.owt2o_nextPlanet +=1;
missionVariables.owt2o_nextPlanet can count upwards past the 162 value if a jump is missed/fails.
Another problem is trying to jump to an out-of-range system.ID seems to cause problems, which can happen if a jump is missed. Strangely, this seemed to cause even more severe problems than the jump to "null" location!
Here's the error message:
00:35:07.218 [exception]: ***** Exception during [JUMP!] in -[PlayerEntity performWitchspaceCountdownUpdates:] : NSInternalInconsistencyException : NSIncrementExtraRefCount() asked to increment too far *****
Hacked code causing these effects here:
OneWayTicket2Oresrati v0.3.zip
http://www.mediafire.com/?ky3qqyyx6kfw13z
That one was a crash-to-desktop. I even saw it happen when the jump should have been possible, as the system was within 7 LY and the script "fuels up" the NPC ship on creation.
Here's the later version, less prone but not completely immune of the same effects:
http://www.mediafire.com/?el9hgh3ybbyyr6f
(Yeah, I need to increase version. # )
Comments wanted:
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
Re: Player ship hyperspace jump crash to desktop
OneWayTicket2Oresrati v0.3.zip is so out-of-date as to be irrelevant.
It was mostly a personal hack by me of Okti's original OneWayTicket2Oresrati OXP.
But it has become the source OXP I modified to make other auto-jumping OXPs
...that I mostly haven't released due to being cheats.
...and doing my head in with their complexity.
It was mostly a personal hack by me of Okti's original OneWayTicket2Oresrati OXP.
But it has become the source OXP I modified to make other auto-jumping OXPs
...that I mostly haven't released due to being cheats.
...and doing my head in with their complexity.