User Tools

Site Tools


modding:function:shporder

This is an old revision of the document!


Discuss this page on this pages TalkPage

shpOrder

See shpOrder at Xelerus

Syntax (shpOrder ship string [expression])
Arguments ship: The ship that you want to order.
string: A string representing the order.
expression: The optional arguments if needed by the order. Multiple arguments possible
Returns condition: True if successful, Nil otherwise.
Category orders, ship
Description Gives the ship the order.
  • shpOrder
    • ship
      • order
        • “guard”: Ship docks with a target and fights enemies that attack or come near the target. Ship gives up attacking an enemy if it is no longer detectable to the target. Ends if target is destroyed.
          • SpaceObject: target
        • “sentry”: Similar to guard but makes the ship hold at its current position and has a duration. Ends when target is destroyed
          • SpaceObject: target
          • Integer: Duration in seconds; infinite by default.
        • “dock”: Ship attempts to dock with a target. If no docking ports are available, ship will move back and forth over the target until a port is available.
          • SpaceObject: target
        • “attack”: Ship fires its weapons against a target for a specified duration or until the target is destroyed.
          • SpaceObject: target
          • [Integer]: Duration in seconds; infinite by default
        • “wait”: Ship does absolutely nothing for a specified duration.
          • [Integer]: Duration in seconds; infinite by default
        • “gate”: Ship attempts to leave the system through an object (typically a stargate).
          • SpaceObject (does not need to be a stargate): target
        • “gateOnThreat”: Ship waits until it is attacked and then attempts to leave the system. This order usually comes after a dock order. Ship is considered a subordinate of the object it is docked at.
        • “gateOnStationDestroyed”: Ship waits until a station is destroyed and then attempts to leave the system. This order usually comes after a dock order. Ship is considered a subordinate of the object it is docked at.
        • “patrol”: Ship orbits the target at a specified distance and fights enemies that attack or come near the target. Ship gives up fighting an enemy if it is no longer detectable by the target.
          • SpaceObject: target
          • [Integer]: distance in light-seconds at which to orbit the target.
        • “escort”: Ship follows a target, fighting enemies that attack or come near the target. Ship gives up fighting an enemy if it is no longer detectable by the target.
          • SpaceObject: target
          • [Integer]: angle or formation
          • [Integer]: distance
        • “scavenge”: Ship wanders around system until there is a wreck with items in it, at which point the ship will loot the wreck. Does not retaliate if the wreck is destroyed.
        • “followPlayerThroughGate”: Cannot be given by shpOrder; returned by the event OnPlayerLeftSystem as “followPlayer”. Ship follows the player through the nearest gate.
          • SpaceObject: target
        • “attackNearestEnemy”: Attack the nearest enemy at the time that this order is assigned.
        • “tradeRoute”
        • “wander”: Ship follows a diamond-like path around the system, fighting enemies that attack it
        • “loot”: Ship takes all items from the target after a few seconds, ignoring cargo space. Ship does not retaliate to attacks while looting. Does not retaliate if target is destroyed.
          • SpaceObject: target
        • “hold”: Ship brakes and attempts to stay at its current position, attacking nearby enemies
          • Integer: duration in seconds
        • “mine”:
          • SpaceObject: target
        • “waitForPlayer”: Cannot be given by shpOrder; returned by the event OnPlayerLeftSystem. Ship waits for the player to return to the system.
        • “attackPlayerOnReturn”: Usually given during the OnPlayerLeftSystem event. Ship will attack player upon gating back into the system.
        • “follow”: Ship follows a target, staying at a position relative to the target and matching the target's direction.
          • SpaceObject: target
          • Integer: Angle in degrees
          • Integer: Distance in light-seconds
        • “navPath”
          • ?: navID
        • “goto”:
          • SpaceObject: destination
          • Integer: distance
        • “waitForTarget”: Ship waits until a target approaches a certain distance or until a certain amount of time passes.
          • SpaceObject: target to wait for.
          • Integer: distance from the target in light-seconds, defaults to detection range.
          • Integer: duration in seconds until the wait ends; infinite by default.
        • “waitForEnemy”
          • Integer: duration in seconds until the wait ends; infinite by default.
        • “bombard”: Orders a ship to attack a station
          • SpaceObject (must be a station): target
          • Integer: duration in seconds that the ship will spend bombarding
        • “approach”: Ship approaches a target until a certain distance
          • SpaceObject: target
          • Integer: distance in light-seconds
        • “aim”: Ship aims at a target without firing weapons
          • SpaceObject: target
        • “orbit”: Ship moves clockwise in a circular path around the target at a specified distance for a specified duration
          • SpaceObject: target
          • Integer: distance in light-seconds
          • Integer: duration in seconds
        • “holdCourse”:
          • Integer: angle in degrees
          • Integer: distance in light-seconds
        • “turnTo”:
          • Distance: angle (absolute) in degrees
        • “attackHold”:
          • SpaceObject: target
          • Integer: duration in seconnds
        • “attackStation”:
          • SpaceObject: target
          • [?]: unknown
        • “fireEvent”: Fires the event on the target's event handler. aShipObj is the ship that fired it.
          • SpaceObject: target
          • String: event to fire
        • “waitForUndock”:
          • SpaceObject: target
          • Integer: duration
        • “sendMessage”:
          • SpaceObject: target
          • String: message
        • “attackArea”: Ship attacks all enemies that are within a specified distance of a specified object for a specified time, probably in random orderverify
          • SpaceObject: target
          • Integer: distance in light-seconds
          • [Integer]: time in seconds; infinite by default.
        • “holdAndAttack”: Same as attackHold
          • SpaceObject: target to attack
          • Integer: duration in seconds
        • “gotoPos”: Ship moves to the specified position.
          • Position: destination
        • “waitForThreat”: Ship waits until it detects an enemy or the duration passes.
          • Integer: duration in seconds

Example

	(shpOrder
		(random (sysFindObject Nil "s A"))
		'gate
		(random (sysFindObject Nil "G A"))
		)

Orders a random ship in the system to exit through a random gate as soon as all its orders are done.

Return to Functions list

modding/function/shporder.1498271529.txt.gz · Last modified: 2017/06/24 02:32 by 0xabcdef