15 Commits

Author SHA1 Message Date
Chris Morris
ae84915d19 Some AI changes and related tidying:
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
2012-07-29 20:21:11 +00:00
Eric Walch
86bc4b2c36 - Added RESTARTED messages to some of the AIs that use the new fleeQMineAI to prevent leaving the ships idle.
- also added the q-mine warning inside becomeEnergyBlast so that custom q-mines also give a warning, albeit later.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@4903 127b21dd-08f5-0310-b4b7-95ae10353056
2012-05-03 20:34:19 +00:00
Chris Morris
052f596e61 Improvements to (mostly Thargoid) AIs
Bug fixes:
1) Giving a ship an aft Thargoid laser and a forward Thargoid laser
   now has a different effect to giving it just a forward Thargoid
   laser. (It gives it double attack power with its laser; use sparingly!)
2) Thargoid laser rate of fire no longer depends on the frame rate.

AI upgrades:
1) Pilots with fear will attempt to flee from Q-Mines at top speed
2) Pilots without fear will attempt to blow up Q-Mines, then avoid the
   cloud if unsuccessful.
3) Ships with a Thargoid laser fitted will use the fact that they have
   an omnidirectional laser to their advantage in combat.
4) Ships with multidirectional weapons (thargoid lasers, plasma
   turrets) can now track multiple targets with those weapons, which
   need not be the primary target, and use these weapons as point
   defense. New AI commands have been added for optimal use of point
   defense, but even old AIs will do reasonably well.

New AI commands:
1) "addPrimaryAggressorAsDefenseTarget"
2) "addFoundTargetAsDefenseTarget"
3) "findNewDefenseTarget"
4) "clearDefenseTargets"

New AI alerts:
1) DEFENSE_TARGET_LOST
2) DEFENSE_TARGET_DESTROYED
3) CASCADE_WEAPON_DETECTED


git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@4899 127b21dd-08f5-0310-b4b7-95ae10353056
2012-05-02 20:08:54 +00:00
Eric Walch
14ec5bedc9 No longer shuttle launches from additional planets without nearby stations.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@4852 127b21dd-08f5-0310-b4b7-95ae10353056
2012-04-14 20:58:44 +00:00
Eric Walch
79b17ebcef Added
- new behaviour BEHAVIOUR_LAND_ON_PLANET that takes care of the whole landing and removal.
- AI command: performLandOnPlanet. Works only very close (500 meters) to the planet surface were APPROACHING_SURFACE has be send. Otherwise returns: NO_PLANET_NEARBY
- ship event: shipLandedOnPlanet(planet)
- changed the old AI message LANDED_ON_PLANET from normal to reactToMessage.  The normal one never triggered because of ship removal in the same update.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@4844 127b21dd-08f5-0310-b4b7-95ae10353056
2012-04-13 07:43:38 +00:00
Eric Walch
b585e1d0ed Added a JS method for player: addMessageToArrivalReport(message). Added a eventhandler that fires after the last arrivalReportScreen is shown. Changed the internal missions so they no longer overwrite this report.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2276 127b21dd-08f5-0310-b4b7-95ae10353056
2009-08-06 20:24:25 +00:00
Eric Walch
900e439603 Limited checkcourseToDestination to scanner range so it only changes course when it actually "sees" something.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2274 127b21dd-08f5-0310-b4b7-95ae10353056
2009-08-03 17:11:24 +00:00
Eric Walch
7842440808 Added a new AI command launchIndependentShipWithRole. Gave sunskimmers heatshielding so they get a chance to jump. Added missile delay to sunskimmerAI.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2259 127b21dd-08f5-0310-b4b7-95ae10353056
2009-07-24 19:51:37 +00:00
Eric Walch
706bb46790 Fixed rare bug in various AI files. Added a randomPauseAI command and added a delay to trader reactions on incoming missiles.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2229 127b21dd-08f5-0310-b4b7-95ae10353056
2009-07-08 16:20:10 +00:00
Jens Ayton
4ca8806312 Bunch of cleanup, mostly tabs vs. spaces (yes, I'm silly). Reformatted AIs for consistency, and removed do-nothing handlers. Deleted old sky code.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1724 127b21dd-08f5-0310-b4b7-95ae10353056
2008-08-03 15:44:57 +00:00
Giles Williams
ea0c50f8c1 use standard utility AIs (gotoWaypointAI, receiveDockingAI) as subroutines to simplify AIs
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@610 127b21dd-08f5-0310-b4b7-95ae10353056
2006-06-23 16:10:55 +00:00
Dylan Smith
1264b83cf0 Move cocoa-merge (GUSTO) to trunk
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@289 127b21dd-08f5-0310-b4b7-95ae10353056
2006-03-05 16:26:25 +00:00
dajt
bd201d29ff Putting XML plists back in place.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@77 127b21dd-08f5-0310-b4b7-95ae10353056
2005-06-08 10:22:59 +00:00
dajt
2a3ece755c Win32 changes, TextureStore uses SDL.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@76 127b21dd-08f5-0310-b4b7-95ae10353056
2005-06-08 10:14:52 +00:00
Dylan Smith
3274cb3ea6 organize the source tree somewhat better
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@30 127b21dd-08f5-0310-b4b7-95ae10353056
2005-04-28 21:47:22 +00:00