1) Make pirates with full holds (and other offenders using route1traderAI) less likely to go to main station, especially not fugitives. (Expansion of changes from r4770)
2) Experimentally ensure always at least one rock hermit in all non-nova systems. If normal generation does not place a hermit, one is added well away from all spacelanes.
3) New "ATTACKER_MISSED" AI event for when a ship tried to shoot a laser at its target but narrowly missed. Many stock AIs modified to treat this as a hostile action.
4) Tidy function/property names in docking code
5) Add checks for cloaking in some AI routines
6) Use weak refs rather than universal ID for targeting, and clean up
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5144 127b21dd-08f5-0310-b4b7-95ae10353056
* Fixed numerous format string problems, many of them real bugs.
* Added format attribute to OOLog, and fixed more format string problems.
* Cleaned up misuse of +[NSString stringWithString:].
* Updated OS X SDK to 10.7. Deployment target is still 10.5, although ideally
it should bet 10.6 for 64-bit. (See also long comment in
oolite-targets.xcconfig.)
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5139 127b21dd-08f5-0310-b4b7-95ae10353056
Fix some bugs with player docking clearance in new docking code
Disable logging of "ship could not launch because there aren't any launch docks"
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5130 127b21dd-08f5-0310-b4b7-95ae10353056
Add condition_script = "file.js" line to entry
Then calls in that file
- allowSpawnShip(shipkey) for shipdata.plist
- allowOfferShip(shipkey) for shipyard.plist
- allowAwardEquipment(eqkey,ship) for equipment.plist
if exists and returns false, prevents use. Otherwise existing behaviour including conditions from other sources.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5124 127b21dd-08f5-0310-b4b7-95ae10353056
- escorts now enter wormhole if it ambushed their mothership
- escorts now enter wormhole if clock adjustment while player docks makes it disappear (stops "lost" escorts hanging around station aegis)
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5121 127b21dd-08f5-0310-b4b7-95ae10353056
With weapons offline, the Target key works like the Ident key, and the Missile Safe key always prints "Ident system deactivated" instead of "Missiles on safety".
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5120 127b21dd-08f5-0310-b4b7-95ae10353056
All legacy scripts go into a single pot, as do marks from previous versions.
Unmarking removes from the legacy pot as well, for upgrade compatibility.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5117 127b21dd-08f5-0310-b4b7-95ae10353056
- Fix "ghost wormhole" bug most common around zero-distance doubles
- Fix minor bug in handling of wormhole player carriers
- Fix display bug with wormholes and sun
- Fix other minor bugs with wormholes
- Add "dayChanged" world script event
- Remove some runaway bounties, and remove some player/NPC distinction in bounty awards
- Offenders won't call for help, but may still beg for mercy
- Traders may dump cargo when attacked by NPCs, not just the player (and sometimes they will escape as a result, too)
- new "long-range-chart-title-N" descriptions.plist entries for individually-named galaxies.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5113 127b21dd-08f5-0310-b4b7-95ae10353056
Use OOWeakSet for _shipsOnHold in StationEntity.
This implementation is pretty naive. I have a "better" version, only it consistently crashes a lot.
Also, integrated unit tests (when building with Xcode 4). Tests are run at the end of TestRelease and Deployment builds, and can be run manually with Product -> Test.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@5109 127b21dd-08f5-0310-b4b7-95ae10353056