[MOD] Automated Emergency Jump - v2.17 (5 jan 2016) - Comp. 3.61 / 4.00 beta 4
Moderators: Scripting / Modding Moderators, Moderators for English X Forum
-
- Posts: 30
- Joined: Tue, 13. May 14, 01:29
-
- Posts: 421
- Joined: Wed, 22. Jul 09, 22:31
I never had this kind of error with the recent (and current) versions. I've let them running for a few days (and nights) on SETA, for me they are error free.
What's the exact error you're getting?
Did you install it on a plot game or with active missions? If yes, that isn't recommended and could produce errors (should no longer be the case for the next version though).
With the current information I have I can't say if the next version with fix your issues, but it's possible since vanilla script won't longer be modified (they will but no blocking action will be added to the <actions> node, much better for compatibility).
Don't hesitate to upload your save file, tell me the list of your mods, etc. It might help.
What's the exact error you're getting?
Did you install it on a plot game or with active missions? If yes, that isn't recommended and could produce errors (should no longer be the case for the next version though).
With the current information I have I can't say if the next version with fix your issues, but it's possible since vanilla script won't longer be modified (they will but no blocking action will be added to the <actions> node, much better for compatibility).
Don't hesitate to upload your save file, tell me the list of your mods, etc. It might help.
-
- Posts: 30
- Joined: Tue, 13. May 14, 01:29
Exact error:
This occurred 25 min into a new game (DeVries Freelancer start) on Hard on Beta 4.3, default NPC smart jump, changed player jump from smart to threshold almost exactly before it happened(?). I disabled Conquest and War before to see if that was the cause, error still happened.
AEJ: emergency jump
Aborted
Cmd: (pilot name)
Ship: SS Marauder Titurel
Zone: Forge-welded mail
Event name: null
I have seen similar errors for PMC, Split capital, Reaver, Xenon, Terran, AG, and HV ships.
Mod list (active):
AEJ 2.17
Devries Freelancer Start 0.10
Teladi DLC
Hud Only Cockpit 0.53
Less Highway Traffic 1.0
Cap Ship Bridge 2.40
Marine Rebalance 0.51 (nexus)
Small talk hack 0.01
Carriers 1.56
More Carriers 1.06
Fusion Reactors Optimized 1.01
No Steering Notification 3.00
NPCs gain XP 0.91
Multi Assign 1.55
Remove Boarding Cutscene 0.01
RevealThingZ 1.00
SideBar Extender 0.60
Silence you all 1.11
TAF! 1.20
This occurred 25 min into a new game (DeVries Freelancer start) on Hard on Beta 4.3, default NPC smart jump, changed player jump from smart to threshold almost exactly before it happened(?). I disabled Conquest and War before to see if that was the cause, error still happened.
AEJ: emergency jump
Aborted
Cmd: (pilot name)
Ship: SS Marauder Titurel
Zone: Forge-welded mail
Event name: null
I have seen similar errors for PMC, Split capital, Reaver, Xenon, Terran, AG, and HV ships.
Mod list (active):
AEJ 2.17
Devries Freelancer Start 0.10
Teladi DLC
Hud Only Cockpit 0.53
Less Highway Traffic 1.0
Cap Ship Bridge 2.40
Marine Rebalance 0.51 (nexus)
Small talk hack 0.01
Carriers 1.56
More Carriers 1.06
Fusion Reactors Optimized 1.01
No Steering Notification 3.00
NPCs gain XP 0.91
Multi Assign 1.55
Remove Boarding Cutscene 0.01
RevealThingZ 1.00
SideBar Extender 0.60
Silence you all 1.11
TAF! 1.20
-
- Posts: 421
- Joined: Wed, 22. Jul 09, 22:31
Oh that, it's a custom debug message I made. I thought you were talking about errors thrown by X Rebirth and shown in the debug window / text file. It's something I left behind because I expected people to report me this message, but since pretty much nobody did it's been there since quite some time. Basically I needed to know what ships could be involved in that error, if it affected only some zones or not...
When you see this message it means that a "base" script aborted AEJ's script(s), which led to the ship either not jumping or not waiting for repairs after a jump, and resuming it's original "vanilla" action. As far as I know, in the current version of AEJ, it only occurs with escorts when their leader changes zone, with "plunder" ships (NPC only) when their target changes zone and maybe with player owned scripts if the player gives them an order (only during an emergency jump or soon after it). So it's not really game breaking, just spammy at worst.
For AEJ, the fact that a script can so easily abort scripts that are on top of it is extremely annoying (done through <abort_called_scripts/> and <run_interrupt_script abortscripts="true"/>, both ignore script priorities). I mean, what's the point of an emergency jump if any previous script can abort it for whatever reason?
In order to prevent that I told myself I could just add checks everywhere, add extra conditions in the interrupt nodes of these scripts so that they don't abort mine for silly reasons... I experimented with that idea a while but I eventually abandoned it since it could break too easily after a patch (basically it would require me to check all files after each patch). Also I couldn't possibly do that for other mods (Conquest and War is one of them).
So I came with something else, and that something is forcing my scripts to resume themselves each time they're aborted by another one. It might seem very aggressive but it's actually quite tolerant (might not be the correct word but whatever). The base script is allowed to run its interrupt code (set / update some variables and all that) and to resume at any point it wants (which wasn't the case with my original idea). Then my script is simply restarted on top of that. There's no loss of instruction. The only danger I see would be infinite loops, but interrupts shouldn't be spammed in the first place anyway.
And this is one of the reasons why I'm rewriting a big part of AEJ (yes, that error will disappear with the next update). The other one is to make AEJ more easily compatible with other mods, currently a big chunk of code has to be added to custom scripts, and since it adds blocking actions (...), well, it sucks. With the next update, only this will be necessary:
I've pretty much finished it (the next update) but I still have some test to do. Also I'm trying to find out what I should do with player orders during an emergency jump (abort it or not, abort it everywhere or only for other ships in the same zone, etc.)
To conclude, you can still play with the current version, even though that message can sometimes get a little spammy it actually doesn't affect gameplay that much.
As for Conquest and War, it isn't entirely compatible, some NPC ships will simply not jump. This is something I can't fix on my end, but as I've said its developer will soon be able to add support for AEJ very easily if he wants to (one line to add to scripts that act as "entry points").
By the way, if you have a save file without AEJ, you might want to wait for the next version before installing it, otherwise it would have to reset / stop scripts to make your save compatible again. Usually it's not a big problem but it can be a hassle if you have a lot of ships.
I hope this answers your question(s).
When you see this message it means that a "base" script aborted AEJ's script(s), which led to the ship either not jumping or not waiting for repairs after a jump, and resuming it's original "vanilla" action. As far as I know, in the current version of AEJ, it only occurs with escorts when their leader changes zone, with "plunder" ships (NPC only) when their target changes zone and maybe with player owned scripts if the player gives them an order (only during an emergency jump or soon after it). So it's not really game breaking, just spammy at worst.
For AEJ, the fact that a script can so easily abort scripts that are on top of it is extremely annoying (done through <abort_called_scripts/> and <run_interrupt_script abortscripts="true"/>, both ignore script priorities). I mean, what's the point of an emergency jump if any previous script can abort it for whatever reason?
In order to prevent that I told myself I could just add checks everywhere, add extra conditions in the interrupt nodes of these scripts so that they don't abort mine for silly reasons... I experimented with that idea a while but I eventually abandoned it since it could break too easily after a patch (basically it would require me to check all files after each patch). Also I couldn't possibly do that for other mods (Conquest and War is one of them).
So I came with something else, and that something is forcing my scripts to resume themselves each time they're aborted by another one. It might seem very aggressive but it's actually quite tolerant (might not be the correct word but whatever). The base script is allowed to run its interrupt code (set / update some variables and all that) and to resume at any point it wants (which wasn't the case with my original idea). Then my script is simply restarted on top of that. There's no loss of instruction. The only danger I see would be infinite loops, but interrupts shouldn't be spammed in the first place anyway.
And this is one of the reasons why I'm rewriting a big part of AEJ (yes, that error will disappear with the next update). The other one is to make AEJ more easily compatible with other mods, currently a big chunk of code has to be added to custom scripts, and since it adds blocking actions (...), well, it sucks. With the next update, only this will be necessary:
Code: Select all
<interrupts>
<handler ref="AEJ.handler"/>
<interrupts/>
To conclude, you can still play with the current version, even though that message can sometimes get a little spammy it actually doesn't affect gameplay that much.
As for Conquest and War, it isn't entirely compatible, some NPC ships will simply not jump. This is something I can't fix on my end, but as I've said its developer will soon be able to add support for AEJ very easily if he wants to (one line to add to scripts that act as "entry points").
By the way, if you have a save file without AEJ, you might want to wait for the next version before installing it, otherwise it would have to reset / stop scripts to make your save compatible again. Usually it's not a big problem but it can be a hassle if you have a lot of ships.
I hope this answers your question(s).
-
- Posts: 30
- Joined: Tue, 13. May 14, 01:29
-
- Posts: 30
- Joined: Tue, 13. May 14, 01:29
-
- Posts: 421
- Joined: Wed, 22. Jul 09, 22:31
So I was getting close to release the next update (which was a complete rewrite for better performances, and better everything for short) when I saw this from the 4.00 beta 6 patch note.
I went to check, and "Retreat maneuvers" also means emergency jumps.
Their implementation is quite different than mine but it basically has the same goal, which means that this mod will soon replace an existing feature instead of adding a new one. Because of that I see no reason to keep it alive (for smartjump and configuration menu, at best) and probably won't even bother finishing my rewrite.
I would have liked to know about it earlier since that means I've spent the past week on this for pretty much nothing, but still, it's nice to see a mod feature being implemented to the game.
So yeah ¯\_(ツ)_/¯ I'll see if I can find an idea for a new mod, ideally one that has something to do with AI.
Code: Select all
Added NPC flee and retreat maneuvers based on skills.
Their implementation is quite different than mine but it basically has the same goal, which means that this mod will soon replace an existing feature instead of adding a new one. Because of that I see no reason to keep it alive (for smartjump and configuration menu, at best) and probably won't even bother finishing my rewrite.
I would have liked to know about it earlier since that means I've spent the past week on this for pretty much nothing, but still, it's nice to see a mod feature being implemented to the game.
So yeah ¯\_(ツ)_/¯ I'll see if I can find an idea for a new mod, ideally one that has something to do with AI.
-
- Posts: 30
- Joined: Tue, 13. May 14, 01:29
-
- Posts: 421
- Joined: Wed, 22. Jul 09, 22:31
I think I'll wait for 4.00 to be released, they might tweak / add some stuff until then.
Currently it's a little "clunky" in my opinion. For example I don't think it's good to have a ship waiting right at the beacon (after it jumped) until you give him another order (with AEJ I made them fly away, but even that was supposed to be a temporary solution). I also suspect NPC ships to immediately go back to action with their low hull / destroyed modules. Basically if it stays like this, it would be worth it to replace it I think.
I would really like to know what are their plans so that I don't have to either take risk of continuing working on it for nothing or being in this "standby" state. But eh.
Anyway, in the end it really depends on people liking or not the default behavior. Unfortunately I no longer get much feedback.
About the nags, I'm too lazy now to reupload it to the workshop. If you don't want to wait you can remove them yourself, you just have to open the biggest dat file and remove these lines (search with ctrl+f):
That should do it.
Currently it's a little "clunky" in my opinion. For example I don't think it's good to have a ship waiting right at the beacon (after it jumped) until you give him another order (with AEJ I made them fly away, but even that was supposed to be a temporary solution). I also suspect NPC ships to immediately go back to action with their low hull / destroyed modules. Basically if it stays like this, it would be worth it to replace it I think.
I would really like to know what are their plans so that I don't have to either take risk of continuing working on it for nothing or being in this "standby" state. But eh.
Anyway, in the end it really depends on people liking or not the default behavior. Unfortunately I no longer get much feedback.
About the nags, I'm too lazy now to reupload it to the workshop. If you don't want to wait you can remove them yourself, you just have to open the biggest dat file and remove these lines (search with ctrl+f):
Code: Select all
<show_help custom="'AEJ: Emergency jump aborted\nCmd: %1\nShip: %2\nZone: %3\nEvent name: %4'.[this.name, this.ship.name, $previouszone.knownname, event.name]"/>
<write_to_logbook category="general" text="'AEJ: Emergency jump aborted\nCmd: %1\nShip: %2\nZone: %3\nEvent name: %4'.[this.name, this.ship.name, $previouszone.knownname, event.name]"/>
-
- Posts: 334
- Joined: Sat, 3. May 14, 12:36
Your variant works a lot better than Egosoft's early one for the time being - hopefully they'll take a few cues from here, like adjustable jump-bias and the ships distancing themselves from jump-beacons. If what's in 4.00B6 now goes live with unchanged I'd certainly appreciate an update of the better implementation here, if you're keen.
The feedback thread on the beta forums might be of interest.
The feedback thread on the beta forums might be of interest.
-
- Posts: 30
- Joined: Tue, 13. May 14, 01:29
-
- Posts: 421
- Joined: Wed, 22. Jul 09, 22:31
Thanks for the feedback and the link!Archaeosis wrote:Your variant works a lot better than Egosoft's early one for the time being - hopefully they'll take a few cues from here, like adjustable jump-bias and the ships distancing themselves from jump-beacons. If what's in 4.00B6 now goes live with unchanged I'd certainly appreciate an update of the better implementation here, if you're keen.
The feedback thread on the beta forums might be of interest.
Whoops, not sure why it happened. I have some free time today and will probably push the update then. I could just fix this and don't change anything else... But naaay.Shazbot01 wrote:I removed the lines you posted and the config icon has disappeared again.
Talking about ships distancing themselves after a jump, in 4.00 B6 (maybe since B5, I don't know) they no longer stop and they keep boosting away until they're repaired. Apparently NPC ships (both player owned and non player owned) no longer create temporary zones when moving between zones, and I was relying on that. I don't know if this is an issue (what happens if a ship goes too far away?) but in the next update they'll stop after about 75km or if they hit another zone.
-
- Posts: 421
- Joined: Wed, 22. Jul 09, 22:31
-
- Posts: 1278
- Joined: Sun, 7. Dec 03, 12:03
-
- Posts: 764
- Joined: Thu, 15. Dec 05, 21:27