Ships in these screenshots are from Griffs all in one.
This screenshot provided by Makara - ships are core versions.
Download current version 1.5.6 from http://www.box.com/s/fqux5e4dpq3s5asp3euq
Escort Contracts version 1.5.6 (07/05/12)
By Capt Murphy 2011,2012
Licence: CC BY-NC-SA 3.0 : Please visit http://creativecommons.org/licenses/by-nc-sa/3.0/ for more info.
Requires Oolite 1.76
Overview: Allow players to enter into short-term escort contracts with NPC lone wolf traders.
The Independent Traders and Hauliers Association have reacted to demand from lone wolf NPC Traders and introduced a system to allow them to enter into short-term escort contracts with vetted and rated freelance escort pilots.
Players who wish want to access these contracts must purchase an I.T.H.A Independent Escort License available to players with a Clean legal status at systems with a Tech Level of 3 or above and not Anarchies, Feudal States or Multi-Governments.
Once purchased players whose legal rating is still Clean may be offered short term escort contracts on docking at a system’s main station. The chance of being offered contracts is based on the player’s reputation as an escort. The fees offered are also affected by the player’s reputation as an escort and government type of the target system. Target systems are always within 1 jump of the starting system. Reputation is increased when a contract is successfully fulfilled and reduced when a contract is failed.
Once a contract is agreed the player has 3 game hours to launch from the station or the contract is failed (be careful about buying equipment – it takes up time). The NPC trader (or 'mother') will be waiting in the station aegis and will prompt the player to approach as they prepare to jump to the target system. The player can follow them through their wormhole or alternatively jump themselves to the target system. Failure to arrive at the target system by the point the wormhole expires ends the contract.
Once in the target system the player’s task is to escort the mother to the system's main station. Mothers will issue various prompts to players in flight, will request assistance if attacked, and will assist the player if the player is attacked. The contract is fulfilled once the mother has entered the aegis of the target system's main station, unless there are hostile craft in the vicinity in which case the player must stand by to protect the mother until it has safely docked.
Game Balance and Playability:
In order to avoid these contracts being long and rather dull in between hostile encounters, this OXP gives the mother the ability to 'synchronise jump drives' with the player. The mother has been given scan_class CLASS_ROCK (but with custom scanner colours) so will not mass-lock the player. In flight if there is nothing else to mass-lock the player the mother will prompt the player to approach to between 500m - 2500m and to match heading. If the player does so the mother will synchronise jump drives with the player and both mother and player will travel on the mother’s heading at torus speeds, until the player or mother is mass-locked again.
If the player is mass-locked but with no hostile contacts in the vicinity the mother may after a short delay decide to try and use injectors to get out of the mass-locked situation so that the player and mother can take advantage of the mother’s synchronised jump drive capability. This feature will only operate if the player also has working injectors and at least 1 LY of fuel.
Mothers will normally be an Anaconda, Boa, Boa Cruiser or Python and all come equipped with ECM, injectors, and fore and aft beam lasers as standard.
The shipdata.plist is set up to 'like_ship' to the core versions of these ships (or a retextured version if the core versions have been replaced by a retexture OXP), and if installed any of the versions from retexture OXPs that add variants in addition to core ships. Currently supported are Griff's, DeepSpace, Shady Sungs, Smiv's and Neolite Core.
If you have a retexture pack installed that does not replace the core models and want to suppress usage of the core models in this OXP you can edit the shipdata.plist to reduce the roleweighting of the core ships. Instructions are included in the shipdata.plist as comments.
The shipdata.plist is also set up to use these OXP ships as potential mothers if installed:
From Neolite Companion : Monitor, Python Cruiser, Python ET Special;
From Old Ships 2010 : Monitor, Monitor2;
From Far Arm Ships : Tanker;
From Clippers: Python Clipper, Boa Clipper.
From Staer9's Shipset: Monitor, Python Cruiser, Python ET Special.
You can use these entries as a template to use ships from your favorite OXP. However be wary of doing this with any OXP ship that normally requires its own shipscript, or is too large to dock at a normal station as the results may be unpredictable.
If you have an Advanced Space Compass installed the Mother will be marked with an ‘M’ beacon code.
Version 0.9 (24/4/11) - Initial Release.
Version 0.9.1 (29/4/11)
Fixed a bug in detecting player kills (the mother should pay a bonus for hostile kills made during the contract - was broken in version 0.9).
Added code for mother to use injectors to try and escape from mass lock situations after a few minutes.
Made criteria for contract success arrival in target system's station aegis rather than mother safely docked to save player time.
Replaced shield enhancers with shield boosters as standard equipment for mothers as they were a little too uber.
Added code to stop the I.T.H.A. Independent Escort License being damaged in combat.
Added an additional world script which displays the players escort reputation on the manifest screen.
Version 0.9.2 (29/4/11)
Fixed a small bug in calculation and display of contract prices.
Version 1.0 (8/5/11)
Added a cap to escort reputation.
Removed shield boosters as standard equipment for mothers and gave them fore beam lasers instead of military lasers. Mothers now really do need your help to survive an encounter with multiple hostiles.
Many improvements to the AI for the mother using injectors feature.
Fixed a cosmetic bug in the mission screen timing.
Fixed a bug where the mother could still be found waiting to dock after the player had docked, met the mother’s pilot in the bar, got their reward and re-launched.
Improvements and bug fixes to the combat AI, mainly relating to mother - player communication.
Removed player auto targeting mother’s primary aggressor (potential for confusion if other auto target-locking OXP’s are installed).
Adjusted criteria for contract success. If no hostiles in vicinity the contract is fulfilled once the mother is in the station aegis. If there are hostiles in the vicinity when the mother arrives in the aegis the player must not dock until the mother is safely docked to fulfill the contract. The mother will explicitly tell the player this on arrival at the station aegis.
Added code so that if repeatedly attacked by the player, the mother will eventually ‘turn’ and attack the player. The contract is immediately failed at this point.
Added code so the timer that checks to see if the player has followed the mother through it’s wormhole kicks as the wormhole closes. Uses same calculation as oolite engine to work out wormhole expiry time depending on the mother ship mass.
Version 1.1 (15/6/11)
Various improvements to AI following tester reports of occasional anomalous docking and route finding behaviour.
Added a pilot and cargo to the mother (thanks to Eric Walch for the tip).
Added code to gradually reduce a positive or negative escort reputation over time.
Added code so that any fire from a players ‘Hired Guns’ from the OXP of the same same are treated as Friendly Fire.
Version 1.2 (13/7/11)
Fixed dockingAI that would not parse correctly on Mac systems.
Tweaked and tidied the synchronised jump code. Player must be between 500m-2500m and on approximately same heading as mother before synchronised jump will happen. The minimum distance has been introduced to avoid mother making course changes whilst hopping due to avoiding ‘collision’ with the player.
Added an additional check to avoid anomalous communication from the mother when docked.
Version 1.3 (7/8/11)
Added code to Mission Screen handling to allow access to Short Range Chart whilst perusing contracts.
Added check to avoid contract being offered to post-Nova system.
Version 1.3.1 (7/8/11)
Fixed missiontext.plist that would not parse correctly on Mac systems.
Version 1.4 (19/9/11)
Changed synchronised jump mechanism to use ship.velocity and a frame callback to simulate synchronised jump behaviour rather than a ‘teleport/hop’. Change prompted by reports of original method causing a crash to desktop on some systems (seemingly caused by changing the mother’s ship.position by script), and retained as the effect is more pleasing. Thanks to FleurdeMal for reporting the crash and testing the revised version.
If player leaves mission screen to access short range chart and does not return within a fairly short time period there is a chance that the contracts on offer will have changed.
Tweaked AI for initial hyperspace jump to reduce incidence of mother trying to jump when jumps are blocked by the station’s mass.
Version 1.4.1 (24/9/11)
Minor tweaks. Can now access both short range and long range charts and return to mission screens.
Tweaked the AI, so mother more likely to use injectors if mass-locked repeatedly by same NPC.
Version 1.4.2 (20/11/11)
Some tweaks to the mother ship-script to reduce processing overhead.
Fixed small bug where player was rewarded extra for a ‘hostile’ kill even if the kill was an asteroid or boulder.
Version 1.5 (28/1/12)
Made JS strict mode compatible.
Made Save Anywhere OXP compatible.
Reduced use of missionVariables.
Tweaked calculation of contract rewards - average is 25% lower than previous versions but with significant random variation.
Kills are only counted by the mother if the player is within 3 x her scanner range.
If mother is 'abandoned' by the player for any length of time there is a chance she will be ambushed by pirates - frequency is higher in more dangerous government types.
Added a little randomness to some of the comms messages from the mother.
Eliminated unneccesary and irritating repeat comms messages, particulary the 'Jump Drive Synchronised' message.
Added a background image to mission screens.
Made the code to remove mother ship from ooniverse on contract failure more robust.
Found and fixed a few potential bugs if the player does something 'weird' such as not dock to collect the reward at the end of a contract.
Version 1.5.1 (05/02/12)
Fixed small bug in display of reputation introduced in last release.
Reduced frequency of some other comms messages in response to user feedback.
Expanded shipdata.plist to use ship variants as mothers from the 5 main retexture shipsets if available, and several other OXP ships if available.
Version 1.5.2 (05/03/12)
Tweaked AI to stop mother injecting indefinately in fleeing from attack in starting system.
Reduced max speed of escort contracts variant of Boa Clipper.
Enabled entries for the addition version of Smiv's v4 shipset.
Version 1.5.3 (07/03/12)
Fixed small bug where player was rewarded extra for a ‘hostile’ kill even if the kill isCargo.
Version 1.5.4 (21/04/12)
Tweak to the chances of contracts being offered. Was in a range of 25% to 100% depending on escort reputation, now a range of 20% to 80%.
Set specific spawn position for mother of 19km directly behind main station to avoid issues with bigger stations (e.g the Torus) (thanks to cim for bug report and suggestion for appropriate fix).
Version 1.5.5 (05/05/12)
Added Staer9 shipset versions of the Monitor, Python Cruiser, & Python ET Special as potential mother variants if the OXP is installed.
Made the Escort License transferable equipment when buying a new ship.
Version 1.5.6 (07/05/12)
Mother spawn position set to sphere radius 4km centred on a spot 14km directly behind main station.
Mother will hold this position until player approaches and then start moving directly away from station/planet rather than towards witchpoint, whilst preparing to jump.
If mother's maxSpeed is greater than 95% of player.ship.maxSpeed she will limit her cruising speed and injector speed to 95% of equivalent player.ship.maxSpeeds (apart from in combat).
Fixed logic bug with behaviour controlling when to start/stop injecting. Starting was based on player's mass lock status, ending on the mothers. Ending now checks both.
Increased frequency of check to stop injecting to every second - previously every 3 seconds.
Thanks to Lone_wolf and cim for highlighting the issues leading to these tweaks.