License here:  http://creativecommons.org/licenses/by-nc-sa/3.0/
--------------------------------------------------------------------------
Credit to Captain Murphy for creating the OXP and maintaining the
versions up to 1.5.x, to Norby, Keeper, Chimrod and phkp for the fixes 
in versions 1.6.x, and to ZygoUgo for the background images.
--------------------------------------------------------------------------

Version 1.7.2 (2026-02-02 by phkb)
Updated some PNG files to remove invalid colour profile.

Version 1.7.1 (2015-12-04 by Fritz G.) 

This version fixes several bugs (see below), but most changes apply to the 
comms messages. Some of these were repeated much too often, which could 
be very annoying, especially during fighting. This was fixed by adding 
some counters in the code, and some message were shortened a litle bit, 
as well as the ship's name, which is now "[name]'s [ship type]" instead 
of "Trader [name]'s [ship type]".

Most comms messages can now appear in different variants, adding more 
realism in the style of Comms Pack A. This was achieved by using string 
expansion and adding a discriptions.plist.

Another more than minor change is the contract assignment procedure: 
While trying to find the "0 available" bug (see below) I noticed that target
systems had to have a lower government type than the current system. This 
meant that fewer contracts were offered in unsafe systems, and getting a 
contract in anarchies was impossible. 

The new logic simply choses from all systems in jump range with a
government type of 5 or lower. The probability of one of them being
chosen is still higher for unsafe systems. I have moved the probability 
factors and a switch for changing between the old and the new selection 
logic to the begin of Escort_Contracts.js, so that it is easy to adjust 
without having to dig deep into the code.

Because of these rather significant changes, I decided to change the 
version number to 1.7.1. instead of 1.6.4.

What I didn't change is the hectic and somtimes a litte suicidal mother AI. 
The experience of escorting and fighting should be exactly the same as before, 
except that the mother isn't so talkative anymore.  

I tested my changes only with Oolite version 1.82 on Windows 7, but they 
should work with version 1.79 and newer too.


Bugfixes: 
- No NPC escorts for the mother (fix in shipdata.plist) 
- The mission will not break anymore if the player arrives in the target 
  system some seconds before the mother. Was a follow-up bug to some 
  strange behaviour of Oolite itself.  
- "Escort Contracts (0 available)" will not appear anymore on the F4 
  screen, the contract option is not shown at all in this case. 
- After docking, new escort contracts are available immediately. In older 
  versions you had to save and reload the game. (You can still do this 
  repeatedly to "cheat" if the offered contracts don't fit you, but I 
  consider this a minor issue, because the differences in payment are not 
  as big as with parcel or passenger contracts.)
- No new missions will be offered after loading a game including an 
  accepted contract.
- Price calculation now works after flying a mission that was saved and 
  reloaded (was a follow-up bug to the previous one). 
- Upper case letters in background filenames changed to lower case, fixing 
  the missing background issue in the mission success screens. 
- Using the map during contract selection doesn't change the target system  
  anymore.
  
Comms messages:
- Added descriptions.plist with random variations of most messages.  
- Added suppression code to prevent some messages to be repeated over and 
  over again, somtimes only seconds apart. In these cases, the electronic 
  voice coldn't keep up. There is still room for improvement in some cases.
- Some communication messages shortened and "Trader" omitted from 
  displayName for better working with eSpeak. 
- Replaced "jump drive" with "torus drive" consequently to avoid confusion.

Other:  
- Torus synchronisation will need a little more precision in heading 
  alignment, but in practice this doesn't make it more difficult for the 
  player. I changed it because synchronised torus driving looks odd if the 
  headings differ too much. 
- Added beacon_label "Escort Mother" in shipdata.plist 
- The "python-trader" is included in shipdata.plist as a possible mother.
- Adapted ec_mother_dockingAI.plist to dockingAI.plist from Oolite 1.82,
  hoping that this will fix the problem of the docking procedure getting 
  stuck sometimes. The only difference between the two docking AIs is 
  now the AI switched to when being attacked. I still have stuck traders
  in rare cases, mostly when I'm immediately behind them in the docking
  corridor, but it's difficult to reproduce. If a trader is stuck, it can
  be 'reanimated' by approaching very close and activating the collision 
  avoidance behaviour, so a mission can still be finished successfully.
- Script code tidied up (mostly indention and bracket issues). 

Modified or added files (compared to version 1.6.3)
- descriptions.plist (new file)
- ec_mother.js 
- Escort_Contracts.js 
- Escort_Contracts_Rep.js (only a little code cleanup)
- shipdata.plist (escorts fixed, python-trader added)
- equipment.plist (damage_probability=0)
- missiontext.plist (fixed a minor typographic issue)






