[Release] EscortDeck v1.11 and EscortPack v1.2

Discussion and information relevant to creating special missions, new ships, skins etc.

Moderators: another_commander, winston

User avatar
Norby
---- E L I T E ----
---- E L I T E ----
Posts: 2577
Joined: Mon May 20, 2013 9:53 pm
Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
Contact:

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by Norby »

Damocles Edge wrote: Tue May 15, 2018 7:48 pm
I had been working off the name "Python" and also the dimensions listed in wiki pages (which unfortunately do not include mass figures).
For future reference what is the best way to find a ships mass?
Ship mass is calculated by the core from the model volume. If I need a mass then I search for the ship in F4/Gallery of all objects.
User avatar
Damocles Edge
---- E L I T E ----
---- E L I T E ----
Posts: 256
Joined: Thu Mar 30, 2017 9:57 pm

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by Damocles Edge »

Thanks for the info Norby - much appreciated.
Installing Gallery has proven a great addition to identify ship mass details.
Can't believe how big the Python Class Cruiser is (thought it was error at first when the Python CC came in at 939.012t :shock: )
O.C.T.D (Oolite Crash Test Dummy) Hmm Hmm Hmm Hmm......
User avatar
BlackWolf
---- E L I T E ----
---- E L I T E ----
Posts: 289
Joined: Thu Feb 15, 2018 9:30 am
Location: Texas

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by BlackWolf »

I have a question on the Escort Pack.
Is there a way to add the Ace Night Adder to the pack?
It is really nice looking ship that would look great in the pack. I'd personally love to have that style of ship running on my escort deck. lol
Creativity is a gift, use it well.
User avatar
Norby
---- E L I T E ----
---- E L I T E ----
Posts: 2577
Joined: Mon May 20, 2013 9:53 pm
Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
Contact:

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by Norby »

You can add any ships into your deck which fit into the size and mass limits, not only the ones in Escort Pack.
To catch one in deep space and make it to usable derelict is a rare but always possible way.
Alternatively the Hyperspace Hangar can help to buy one if you see it in a shipyard. Put it to the hangar then add it to the deck in EscortDeck interface screen.

I guess what you would like is the easy way to get one from the equipment shop. This is possible if the maintainer of Night Adder (phkb?) insert the next codes into that pack.
shipdata.plist:

Code: Select all

"escortdeck-nightadder" = {
                like_ship = "night_adder_player";
                accuracy = 7;
                ai_type = "EscortDeck_AI.plist";
                auto_ai = 0;
                beacon = "E";
                counts_as_kill = no;
                extra_cargo = 0;
                forward_weapon_type = "WEAPON_BEAM_LASER";
                fuel = 70;
                has_fuel_injection = 1;
                has_shield_booster = 0;
                has_shield_enhancer = 0;
                hyperspace_motor = no;
                max_cargo = 0;
                model = "night_adder.dat"; //must specify model for Oolite 1.81
                name = "Night Adder Escort";
                roles = "escortdeck-nightadder player";//the player role is needed by Carriers OXP
                script_info = {
                        buydesc = "This ship fit into the very small landing pads on the sides of Escort Deck.";
                        ccl_missionShip = true; //need to avoid changes by ShipVersion OXP
                };
                unpiloted = no;
}
equipment.plist:

Code: Select all

        (
                0,
                1200000,
                "Night Adder Escort",
                "EQ_ESCORTDECK_nightadder",
                "This ship fit into the very small landing pads on the sides of Escort Deck. This special design hold a Beam Laser and has Injectors but no cargo space nor hyperdrive.",
                {
                        "available_to_all" = yes;
                        "condition_script" = "escortdeck_condition_minipirate.js";
                }
        ),
script.js:

Code: Select all

"use strict";
this.name = "nightadder";
this.startUp = function() {
        var w = worldScripts.escortdeck;
        if(w) {
                if(!w.$EscortDeckEqs) w.$EscortDeckEqs = []; //buyable escort ship sizes and masses
                //must fill this array for condition check of equipment
                w.$EscortDeckEqs["EQ_ESCORTDECK_nightadder"] = [28.0, 8.0, 27.0, 4952];
        }
}
Well, it would be too easy to get this ship everywhere so I excluced the main stations in the above code.
You should look after in other stations, just keep in mind that some like Rock Hermits ask very high prices, like 4 times more or so than in standard stations.
Last edited by Norby on Wed Oct 10, 2018 9:38 pm, edited 1 time in total.
User avatar
BlackWolf
---- E L I T E ----
---- E L I T E ----
Posts: 289
Joined: Thu Feb 15, 2018 9:30 am
Location: Texas

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by BlackWolf »

Thank you so much. Actually now that I know I can buy it and add it to my deck as an escort through the Hyperspace Hanger it opens up a world of customizing for me. Thank you so much for that simple tip. :)
The more I learn the more I enjoy the hell out of this game. :)
Creativity is a gift, use it well.
DavidG
Above Average
Above Average
Posts: 25
Joined: Mon Nov 05, 2018 6:39 pm

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by DavidG »

I came across this when I accidentally bought the Escort Deck without realising, and then wondered what had happened to my rear view! So I have two questions - 1) should it be possible to sell it again, as I had to edit the save game to get rid of it as I didn't want it at the time and 2) is there anything that can be done about the hugely obstructed rear view? All I could see was the deck and a small slit with the cross hairs. I appreciate the 'realism' but I've always assumed the rear view is essentially a camera rather than actual window, so the camera could be mounted on the escort deck to give an unobstructed view... I'd love to have some back up, especially now the Soin Clan are baying (meowing?) for my blood!

I'm flying a Falcon-S by the way! If it makes a difference!
User avatar
Norby
---- E L I T E ----
---- E L I T E ----
Posts: 2577
Joined: Mon May 20, 2013 9:53 pm
Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
Contact:

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by Norby »

No sell option implemented because you always able to remove the package which will remove the equipment as well.
But you can fix your rear view by increasing the second number of view position (height) in your shipdata.plist, for example:

Code: Select all

                <key>view_position_aft</key>
                <string>0.0 10.1 -3.0</string>
DavidG
Above Average
Above Average
Posts: 25
Joined: Mon Nov 05, 2018 6:39 pm

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by DavidG »

Norby wrote: Mon Nov 12, 2018 6:36 pm
No sell option implemented because you always able to remove the package which will remove the equipment as well.
But you can fix your rear view by increasing the second number of view position (height) in your shipdata.plist, for example:

Code: Select all

                <key>view_position_aft</key>
                <string>0.0 10.1 -3.0</string>
cheers norby - will give that a go!
User avatar
Day
---- E L I T E ----
---- E L I T E ----
Posts: 545
Joined: Tue Mar 03, 2015 11:35 am
Location: Paris

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by Day »

Hi Norby,

just noticed this in my Latest.log:
18:41:19.513 [script.javaScript.exception.unexpectedType]: ***** JavaScript exception (escortdeck 1.11): TypeError: w.$EscortDeckHWS._shipsStored is undefined
I don't see any consequences currently, but this is on a relatively new savegame where I don't yet use escort decks.

My Oolite:1.89, EscortDeck: 1.11.

Hope that helps.
User avatar
Norby
---- E L I T E ----
---- E L I T E ----
Posts: 2577
Joined: Mon May 20, 2013 9:53 pm
Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
Contact:

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by Norby »

Day wrote: Wed Apr 10, 2019 4:53 pm
18:41:19.513 [script.javaScript.exception.unexpectedType]: ***** JavaScript exception (escortdeck 1.11): TypeError: w.$EscortDeckHWS._shipsStored is undefined
Thank you for the report. You can get this message when you installed Hyperspace Hangar OXP but you have not stored anything into HH yet. I think this is a harmless one so I do not plan to make a new version just to fix this.
User avatar
Day
---- E L I T E ----
---- E L I T E ----
Posts: 545
Joined: Tue Mar 03, 2015 11:35 am
Location: Paris

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by Day »

Norby wrote: Thu Apr 11, 2019 5:01 pm
Day wrote: Wed Apr 10, 2019 4:53 pm
18:41:19.513 [script.javaScript.exception.unexpectedType]: ***** JavaScript exception (escortdeck 1.11): TypeError: w.$EscortDeckHWS._shipsStored is undefined
Thank you for the report. You can get this message when you installed Hyperspace Hangar OXP but you have not stored anything into HH yet. I think this is a harmless one so I do not plan to make a new version just to fix this.
You're right, as it's almost a new game, I didn't store anything yet in the Hyperspace Hangar.

Thank you for the info :)
dybal
---- E L I T E ----
---- E L I T E ----
Posts: 499
Joined: Mon Feb 10, 2020 12:47 pm

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by dybal »

Greetings!

Bounty hunting + salvaging was starting to get boring... less than half an hour of dogfighting to get 8 derelicts, then 4h to tow them all to the main station... then I found out about this OXP and it's fun again... even if sometimes I get ships too big to deck and have to tow them, I still can usually cut my towing trips in half, and get some usable derelicts now and then.

I used to sell the usable derelicts, then I found out about HyperspaceHangar OXP and after some hacking could get it to work with the other OXPs I've installed, so now I can store the usable derelicts in HyperspaceHangar if I have too many or want to keep the EscortDeck free.

I haven't used them as escorts because I could not switch into them to make maintenance and upgrades, since they were not player ships... I tried to use them as they are and they fled... AI too smart! :lol:

Since I was in Riraes, in the Devil's Triangle (nice place to bounty hunt :P ), a TL 8 system, I sent them ahead (through HyperspaceHangar) to Raleen, a TL 11 system at the other side of the Triangle, as I did not expect to to be able to work out how to turn them into player ships for a few days.

Then I looked into phkb's IllicitUnlock OXP, created one like that for the ships I had in HyperspaceHangar and edited the save file to change the stored ships' keys to the ones a created.

I was in Retila then, and HyperspaceHangar let me see the ships, but didn't allow me to switch into them since they were not at the current station.

Then I found a bug: EscortDeck did not check that and allowed me to transfer them to the Deck...

EDIT: to check for the system the ship is before getting it form HyperSpaceHangar (escortdeck.js, around line 1346):

Code: Select all

                var sID = system.ID;         // new line
                for( var k in h._shipsStored ) {
                    var sh = JSON.parse(h._shipsStored[k]); //ship in hangar
                    if (sh[0][1] === sID) {     // new line
                        if( sh && !w.$EscortDeck_TooLarge2b(ps, w, pad, sh)) {
                            fitinto=true;
                            var n = sh[0];
                            if( n ) n = n[3]; else n = sh[1]; //show dataKey if no name
                            curChoices["22_"+k] = {
                                   text: "Get "+n+" from Hyperspace Hangar into Deck "
                                          +(pad+1),
                                   color:oc };
                         }
                    } else { log(this.name, "HyperSpaceHangar ship "+sh[0][3]+" is in system "+sh[0][4]); }     // new line
                }    
Also, instead of editing the savefile to change the escort ship's keys to one with player role so I can switch into them, I created a litte OXP with shipdata-overrides.plist for those ship definitions with roles that include player, and a shypyard.plist with entries for them... given the opportunity, I also defined extra_cargo porperties for them in that shipdata-overrides.plist, it looked strange that ships in the 20t~30t range should get 15t from Large Cargo Bay...
Last edited by dybal on Wed May 06, 2020 7:52 pm, edited 4 times in total.
dybal
---- E L I T E ----
---- E L I T E ----
Posts: 499
Joined: Mon Feb 10, 2020 12:47 pm

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by dybal »

I had three derelicts on the Escort Deck when I picked a derelict Chrysopelea MK-I and it was usable.

I set it to follow, then stopped and called it back... every time it tried to land it collided with something - destroyed one of the other derelicts on deck.

Then I started moving, v=100, and called it back again, it would come closer then keep distance, so I reduced speed and called it back again, and it would come a bit closer and the keep distance... 5km, 3km,2 km, 1km, the process repeated until it finally tried to land and collided with the another derelict, destroying it.

Then unloaded the remaining derelict from the deck and called the Chrysopelea home again, it collided with my ship but landed. I targeted the derelict I had let go and loaded it on deck again, it took the Crhysopelea position and I could not see the Chrys neither on the scanner neither visually, but telescope said it was close, 3km, so I played cold-hot blind until it was targeted (no visual feedback) and loaded on deck.

Code: Select all

09:17:43.882 [LogEvents]: VIEW_CUSTOM
09:17:45.311 [escortdeck_escort]: Derelict Fer-de-Lance: The Malefic Hand 6 terminated by [Ship "Chrysopelea MK-I" position: (-147316, 62633.6, -16256.5) scanClass: CLASS_CARGO status: STATUS_IN_FLIGHT] scrape damage
09:17:45.552 [LogEvents]: Metal fragment 19844 spawned at 0 km
09:17:52.557 [LogEvents]: VIEW_CUSTOM
09:22:37.549 [escortdeck_escort]: Derelict Gecko: Trumble 3 terminated by [Ship "Chrysopelea MK-I" position: (-162736, 61466, -34630.7) scanClass: CLASS_CARGO status: STATUS_IN_FLIGHT] scrape damage
09:22:37.774 [LogEvents]: Wreckage 16162 spawned at 0 km
09:22:37.774 [LogEvents]: Wreckage 22631 spawned at 0 km
09:23:02.132 [LogEvents]: targeted Telescope marker 22060 who has -1 energy
09:23:22.419 [LogEvents]: taking shield damage from Chrysopelea MK-I: Unholy Rocket of Maesin 9 9 30992 256+236 shield and 350 energy left
09:23:22.475 [LogEvents]: collided with Chrysopelea MK-I: Unholy Rocket of Maesin 9 9 30992
09:29:07.436 [LogEvents]: targeted Chrysopelea MK-I: Unholy Rocket of Maesin 9 9 30992 who has 300 energy
09:29:33.410 [LogEvents]: lost lock on Chrysopelea MK-I: Unholy Rocket of Maesin 9 9 30992
dybal
---- E L I T E ----
---- E L I T E ----
Posts: 499
Joined: Mon Feb 10, 2020 12:47 pm

Re: [Release] EscortDeck v1.11 and EscortPack v1.2

Post by dybal »

Docked in a Deep Space Dredger with a DTT Manta, usable, in the EscortDeck, locked.
After I launched the pad was still locked, but empty.
Nothing in Latest.log.
The DTT Manta is a special case, as in a prisitine condition it's too wide for the pads, but in combat, far before it's turned derelict, it looses its wings and then it fits in a pad.
I will turn debug back on on this OXP, perhaps next time there will be something in the logs.

UPDATE: usable DTT Mantas don't desappear at docking in a station (it was a Trade Post, not the main station), I was able to see it on the F4 interface for EscortDeck... I didn't store it in HypeSpaceHangar but launched, and it was gone.

From the Latest.log (I enabled Debug and put some logs cycling through the pads and "printing" the shipdata):

Code: Select all

11:42:16.036 [escortdeck]: Launching
11:42:16.037 [escortdeck]: Decks has 6 pads
11:42:16.037 [escortdeck]: Pad 5: null
11:42:16.037 [escortdeck]: Pad 4: null
11:42:16.037 [escortdeck]: Pad 3: 
11:42:16.037 [escortdeck]: Pad 2: 
11:42:16.037 [escortdeck]: Pad 1: 0,240,180107644484.46112,Derelict DTT Manta: Captain Blood's Song 6,Raleen,,,,,DTT Manta,,0,E1 DTT Manta,240,0.699999988079071,0.8999999761581421,1,0.8999999761581421,240,1,1,2,32,5,320,255,4,18,0.25,7,,15,,,128,128,2,128,128,2,0,dttmanta,EQ_WEAPON_BEAM_LASER,EQ_WEAPON_BEAM_LASER,,,,EQ_SC_SHIELD_CYCLER_INTERNAL,EQUIPMENT_OK,EQ_TELESCOPE,EQUIPMENT_OK,EQ_COMBATMFD,EQUIPMENT_OK,EQ_HEAT_SHIELD,EQUIPMENT_OK,EQ_MULTI_TARGET,EQUIPMENT_OK,EQ_FUEL_SCOOPS,EQUIPMENT_OK,EQ_ESCAPE_POD,EQUIPMENT_OK,EQ_ADVANCED_COMPASS,EQUIPMENT_OK,EQ_TARGET_MEMORY,EQUIPMENT_OK,EQ_ENERGY_UNIT,EQUIPMENT_OK,EQ_WORMHOLE_SCANNER,EQUIPMENT_OK,EQ_FUEL_INJECTION,EQUIPMENT_OK,EQ_NSHIELDS_NPC_SHIELD_BOOSTER,EQUIPMENT_OK,EQ_SCANNER_SHOW_MISSILE_TARGET,EQUIPMENT_OK,EQ_ECM,EQUIPMENT_OK,EQ_INTEGRATED_TARGETING_SYSTEM,EQUIPMENT_OK,EQ_TARGET_AUTOLOCK,EQUIPMENT_OK,EQ_SHIP_VERSION_69,EQUIPMENT_OK,,5.800000000000001,,,,22546,[object Object]
11:42:16.037 [escortdeck]: Pad 0: null
11:42:16.038 [escortdeck]: Spawn escort pad:0 d:null s:null
11:42:16.039 [escortdeck]: Spawn escort pad:1 d:0,240,180107644484.46112,Derelict DTT Manta: Captain Blood's Song 6,Raleen,,,,,DTT Manta,,0,E1 DTT Manta,240,0.699999988079071,0.8999999761581421,1,0.8999999761581421,240,1,1,2,32,5,320,255,4,18,0.25,7,,15,,,128,128,2,128,128,2,0,dttmanta,EQ_WEAPON_BEAM_LASER,EQ_WEAPON_BEAM_LASER,,,,EQ_SC_SHIELD_CYCLER_INTERNAL,EQUIPMENT_OK,EQ_TELESCOPE,EQUIPMENT_OK,EQ_COMBATMFD,EQUIPMENT_OK,EQ_HEAT_SHIELD,EQUIPMENT_OK,EQ_MULTI_TARGET,EQUIPMENT_OK,EQ_FUEL_SCOOPS,EQUIPMENT_OK,EQ_ESCAPE_POD,EQUIPMENT_OK,EQ_ADVANCED_COMPASS,EQUIPMENT_OK,EQ_TARGET_MEMORY,EQUIPMENT_OK,EQ_ENERGY_UNIT,EQUIPMENT_OK,EQ_WORMHOLE_SCANNER,EQUIPMENT_OK,EQ_FUEL_INJECTION,EQUIPMENT_OK,EQ_NSHIELDS_NPC_SHIELD_BOOSTER,EQUIPMENT_OK,EQ_SCANNER_SHOW_MISSILE_TARGET,EQUIPMENT_OK,EQ_ECM,EQUIPMENT_OK,EQ_INTEGRATED_TARGETING_SYSTEM,EQUIPMENT_OK,EQ_TARGET_AUTOLOCK,EQUIPMENT_OK,EQ_SHIP_VERSION_69,EQUIPMENT_OK,,5.800000000000001,,,,22546,[object Object] s:[Ship "DTT Manta" position: (1.00028e+07, 619.965, 3205.11) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]
11:42:16.042 [escortdeck]: Pad 2: too wide (130m > 70m)
11:42:16.042 [escortdeck]: 2. spawn [Ship "DTT Manta" position: (1.00028e+07, 619.965, 3205.11) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT] r:too wide (130m > 70m)
11:42:16.042 [escortdeck]: Spawn escort pad:2 d: s:null
11:42:16.042 [escortdeck]: Spawn escort pad:3 d: s:null
11:42:16.042 [escortdeck]: Spawn escort pad:4 d:null s:null
11:42:16.042 [escortdeck]: Spawn escort pad:5 d:null s:null
From the logs, it was spawned then found too wide for the pad (I presume I could find it near the Witchpoint...)

But in-flight I've had no trouble picking-up a derelict DTT Manta (no wings!) into EscortDeck, drop it and pick it again (I didn't try to launch and call back the usable one)... I guess restoring the shipdata to the spawned DTT Manta didn't restore it to the un-winged version.
dybal
---- E L I T E ----
---- E L I T E ----
Posts: 499
Joined: Mon Feb 10, 2020 12:47 pm

[Release] EscortDeck v1.12

Post by dybal »

[EliteWiki] EscortDeck OXP v1.12 is available on the Expansion Manager and here

Changes:
  • Updates escorts' AIs and scripts to avoid closing too fast at landing.
  • Increases TL for equipments and escort ships.
  • Adds configuration for launching/calling back when going in/out of red alert.
  • Adds configuration for base usable derelict probability.
  • Configuration via Svengali's Library 'Config for AddOns'.
  • Takes NPC_equipmentDamage OXP's equipment damage into account for usable derelict probability calculation (damaged equipment reduces base probability of being usable).
  • Makes Towbar not salvage usable derelicts if Hyperspace Hangar is installed.
  • Optimizes mass factor (degradation of ship maneuverability by ship's total mass, escortdeck payload included) updates.
  • Tests for a functional escortdeck in the player ship in event handlers.
  • Updates shipAtackedOther event handler to handle Laser Reductor presence and be compatible with use as a ship event handler for the escorts.
  • Puts a random factor into awarding equipment to usable derelicts, and those equipment could be awarded damaged.
  • Uses ShipStorageHelper OXP for ship serialization if installed.
  • Sets event handlers in the escorts' ship scripts to use Laser Reductor.
  • Fixes bug in scrolling along the pads in the MFD.
  • Makes Towbar's Tug Drone store usable derelicts in the Hyperspace Hangar.
  • Performance updates to FCB.
  • Adds status of escorts' shields to MFD.
  • Adds menu entry to refuel escort to EscortDeck Station Interface.
  • Sets current galaxy number and system ID to the shipdata array when storing an escort in Hyperspace Hangar.
Comments:

Norby's Towbar introduced Salvaging gameplay, which became a central part oy my gameplay.

Norby's EscortDeck, once I tried it, expanded that gameplay a lot, by turning Salvaging much more effective time wise, but also by introducing the usable derelict concept...

EscortDeck OXP introduces EscortDeck equipments that can be used by the player to transport other (smaller) ships. If those ships are functional, they can be used as escorts and launched to defend the player ship (and Norby created the EscortPack OXP so the player can buy escorts to populate his EscortDeck).

But the player can also launch with an empty (or partially empty) EscortDeck and use it to haul back a bunch of derelicts at once to a station for salvaging in a single trip (and when I found out about EscortDeck, I was routinely dealing with packs of 6+ pirates, so this cut back a lot in the back and forth between the ambush place and the nearest station to dispose of the battle aftermath...).

But once in a while, the player can find an usable derelict (and there is now a configuration parameter to define the probability of a given derelict being usable, so each player can tune the game balance to his taste), which once collected into the EscortDeck, can now be used as an escort.

Once docked, all derelicts in the EscortDeck are automatically salvaged, and there is and entry for EscortDeck in Station Interfaces (F4) for managing the escorts: the player can rename, refuel and salvage any of its escorts (no provision to repairing or outfitting them though), and, if HyperSpace Hangar OXP is installed, moving them to and from the HyperSpace Hangar.

Now, this integration with HyperSpace Hangar opens a can of worms: it conceptually allows a NPC ship to be used by the player, by transferring it to HyperSpace Hangar and then using HyperSpace Hangar to switch into it... which is NOT something the core game is ready for...

Norby tried to work around it by trying variations of the usable derelict datakey to see if any of them are "player usable", but that work around does not always work, since some NPC ships do not have a player variant (or even if it does, its datakey does not follow the variations he tried)... if that work around fails, there are two ways for the player to be able to use that ship as player ship:
  • if it has a player variant, editing the savefile to replace the ship's datakey for the datakey for the player variant in the mission variables... either EscortDeck's (mission_$EscortDeckShipData) if the ship is in the EscortDeck, of HyperSpace Hangar's (mission_hyperSpace_shipsStored) if stored in the HH; (if you try this, please make a copy of your savefile before editing, since it's *very* easy to mess it up...)
  • create a little OXP with a shipyard.plist file containing an entry for the NPC ship.
I started using the first approach, but after a while I switched to the second, since I already had a little OXP to override some ship's specs (mainly cargo space) to which I could add that shipyard.plist file... then I got bored with Oolite and spent some time playing other games... when I came back I got tired of that approach and hacked the core game to blur that playership distinction a bit... I will deal with that in another post though...

Being able to switch into an ex-NPC usable derelict as the player ship opens a few gameplays:
  • the player can now repair and outfit its escorts, which can improve their performance depending of the OXPs being run;
  • the player can turn into The Collector :-)
  • the player can take some of the escorts for a spin;

The last one has some implications, since some equipments are NPC-only, others are player-only, and those that have state will store that state in very different places for a NPC and playership... switching a NPC into playership back and forth seamlessly (without loosing equipment and their state) needs quite a bit of modifications to ShipStorageHelper OXP... I think I have most of them ironed out (otherwise I would not be publishing my modifications to EscortDeck), but they are too many for me to forward them to phkb (who is maintaining ShipStorageHelper) since merging them will be a lot of work (ShipStorageHelper has been modified meanwhile :-( )...

In this release I expanded the usable derelict concept to Towbar: if the player is running HyperSpaceHangar, towed usable derelicts (by the playership or by the Tug Drone) are stored in the HH upon arrival at the station. That allows the player to acquire usable derelicts too massive to be loaded into the EscortDeck, which opens another gameplay: upgrading the player ship up the mass scale through usable derelicts.
Post Reply