X3 Commands List (v2.0.02) by Boron Ol Fh'art

 


 

General Commands


<RetVar/IF><Expression>

inc <RetVar> =

dec <RetVar> =

@<RetVar/IF>wait <Var/Number> ms

@<RetVar/IF>wait randomly for <Var/Number> to <Var/Number>ms

<RetVar> = random value from 0 to <Var/Number> -1

<RetVar> = script engine version

<RetVar> = random value from <Var/Number> to <Var/Number> -1

*<Comment>

<RetVar> = = get script priority

<RefObj> -> start task <Var/Number> with script <script name> and prio <Var/Number>: arg1=<value> arg2=<value> arg3=<value> arg4=<value> arg5=<value>

<RefObj> -> interrupt task <Var/Number> with script <script name> and prio <Var/Number>: arg1=<value> arg2=<value> arg3=<value> arg4=<value>

<RefObj> interrupt with script <Script Name> and prio <Var/Number>: arg1=<Value> arg2=<Value> arg3=<Value> arg4=<Value>

set script priority to <Var/Number>

<RetVar/IF> is script with prio <Var/Number> on stack

<RetVar/IF> get task ID

<RetVar/IF> get task PID

<RefObj> interrupt with script <Script Name> and prio <Var/Number>

<RefObj> connect ship command/signal <Object Command/Signal> to script <Script Name> with prio <Var/Number>

<RefObj> set ship command/signal <Object Command/Signal> to global default behaviour

<RefObj> ignore ship command/signal <Object Command/Signal>

enable signal/interrupt handling: <Var/Number>

<RetVar/IF> is signal/interrupt handling on

global script map: set: key=<Object Command/Signal>,class=<Var/Class>,race=<Var/Race>,script=<Script Name>,prio=<Var/Number>

global script map: remove: key=<Object Command/Signal>,class=<Var/Class>,race=<Var/Race>

global script map: ignore: key=<Object Command/Signal>,class=<Var/Class>,race=<Var/Race>

set script command upgrade: command=<Object Command/Signal> upgrade=<Var/Ware>

<RetVar> = get script command upgrade: command=<Object Command/Signal>

set script command: <Object Command/Signal>

<RetVar/IF> get script command

set script command target: <Value>

<RetVar/IF> get script command target

<RetVar> = datatyp[<Value>]

<RetVar/IF> is datatyp[<Value>] == <Var/Script Data Type>

<RetVar> = read text: page=<Var/Number> id=<Var/Number>

<RetVar> = sprintf: fmt=<Var/String>,<Value>,<Value>,<Value>,<Value>,<Value>

<RetVar> = sprintf: pageid=<Var/Number> textid=<Var/Number>,<Value>,<Value>,<Value>,<Value>,<Value>

load text: id=<Var/Number>

<RetVar> = state of news article: page=<Var/Number> id=<Var/Number>

set state of news article: page=<Var/Number> id=<Var/Number> to <Var/Number>

<RetVar/IF> system date is month=<Var/Number>,day=<Var/Number>

<RetVar> = playing time

infinite loop detection enabled=<Var/Number>

set script command upgrade: command=<Object Command/Signal> upgrade=<Var/Ware> script=<Script Name>

<RefObj> set local variable: name=<Var/String> value=<Value>

<RetVar/IF><RefObj> get local variable: name=<Var/String>

set global variable: name=<Var/String> value=<Value>

<RetVar/IF> get global variable: name=<Var/String>

al engine: register script =<Script Name>

al engine: unregister script <Script Name>

al engine: set plugin <Var/String> description to <Var/String>

al engine: set plugin <Var/String> timer interval to <Var/Number> s

<RetVar> = get script version

<RetVar> = get script name

<RetVar/IF> = is plot <Var/Number> state flag <Var/Number>

<RetVar> = get random name: race=<Var/Race>

<RetVar> = get Khaak aggression level

set Khaak aggression level to <Var/Number>

<RetVar/IF> <RefObj>is script <Script Name> on stack of task=<Var/Number>

<RetVar/IF> <RefObj>is task<Var/Number> in use

register quest script<Script Name> instance multiple=<Var/Number>

set quest state with message: quest=<Var/Quest> state=<Var/Number> msg=<Var/String>

set quest/event<Var/Quest> timer to <Var/Number>ms

set quest<Var/Quest> timeout to <Var/Number>

<RefObj> add event listener: quest/event=<Var/Quest> objevent=<Var/Number> script=<Script Name>

<RefObj> remove event listener: quest/event=<Var/Quest>

<RetVar/IF> display news article: page=<Var/Number> newsid=<Var/Number> occurrences=<Var/Number> maxoffertime=<Var/Number> maxtime=<Var/Number> placeholder: race1=<Var/Number> race1=<Var/Number> customarray=<Var/Array>

change event news availabilty: <Var/Number> race=<Var/Race> sector=<Var/Sector> jumps=<Var/Number>

<RetVar> = register hotkey <Var/String> to call script <Script Name>

unregister hotkey <Var/Number>

register god event: script= <Script Name>mask=<Var/Number>

abort god event: <Var/Quest>

finish god event: <Var/Quest>

<RefObj> connect wing command/signal <Object Command/Signal> to script <Script Name> with prio <Var/Number>

<RetVar/IF> is new script version available

 

General Commands - Flow Control


end conditional

else

continue

break

goto label <Label>

define label <Label>

gosub <Label>

endsub

 

General Commands - Script Calls


return <Value>
</pre></code>
<hr>
<h2><b>General Commands - Arrays</h2></b><br/>
<pre><code>
<RetVar> = array alloc: size=<Var/Number>

<RetVar/IF> <Var/Array>[<Var/Number>]

<Var/Array>[<Var/Number>] = <Value>

<RetVar/IF> = size of array <Var/Array>

<RetVar> = clone array <Var/Array>: index <Var/Number>... <Var/Number>

copy array <Var/Array> index <Var/Number> ... <Var/Number> into array <Var/Array> at index <Var/Number>

insert <Value> into array <Var/Array> at index <Var/Number>

append <Value> to array <Var/Array>

remove element from array <Var/Array> at index <Var/Number>

resize array <Var/Array> to <Var/Number>

<RetVar/IF> <Var/Array>[<Var/Number>][<Var/Number>]

<Var/Array>[<Var/Number>][<Var/Number>] = <Value>

<RetVar> = get index of <Value> in array<Var/Array> offset =<Var/Number> +1

<Var/Array>[<Var/Number>] = <Var/Array>[<Var/Number>]

 

General Commands - Strings

<RetVar/IF> = get length of string <Var/String>

<RetVar> = find position of pattern <Var/String> in <Var/String>

<RetVar> = get substring of <Var/String> offset =<Var/Number> length=<Var/Number>

<RetVar> = string <Var/String> to integer

<RetVar> = substitute in string <Var/String>: pattern <Var/String> with <Var/String>

<RetVar> = format seconds <Var/String> to Zura time string


 

General Commands - Math

<RetVar> = = fixed sin <Var/Number>

<RetVar> = = fixed cos <Var/Number>

<RetVar> = square root of <Var/Number>


 

Audio Commands


play sample <Var/Number>

play sample: incoming transmission <Var/Number>, from object <Value>

<RefObj> send audio message <Var/Number> to player

send incoming message <Var/String> to player: display it=<Var/Number>

send incoming question <Var/String> to player: callback=<Script Name>

<RetVar/IF/START> speak text: page=<Var/Number> id=<Var/Number> priority=<Var/Number>

<RefObj> send incoming message: text = <Var/Sting> temporary = <Var/Number>

Logbook Commands

write to player logbook <Value>

write to player logbook: printf: fmt=<Var/String>,<Value>,<Value>,<Value>,<Value>,<Value>

write to player logbook: printf: pageid=<Var/Number> textid=<Var/Number>,<Value>,<Value>,<Value>,<Value>,<Value>

<RefObj> write to logbook <Value>

write to log file #<Var/Number> append=<Var/Number> value=<Value>

write to log file #<Var/Number> append=<Var/Number> printf: fmt=<Var/String>, <Value>, <Value>, <Value>, <Value>, <Value>

write to log file #<Var/Number> append=<Var/Number> printf: pageid=<Var/Number> textid=<Var/Number>, <Value>, <Value>, <Value>, <Value>, <Value>


Fly Commands

@<RetVar/IF><RefObj> fly to home base

@<RetVar/IF><RefObj> fly to station <Var/Station>

@<RetVar/IF><RefObj> fly to sector <Var/Sector>

<RetVar/IF><RefObj> find nearest enemy ship: max.dist=<Var/Number>

<RetVar/IF><RefObj> find nearest enemy station: max.dist=<Var/Number>

<RetVar/IF><RefObj> fire lasers on target <Value> using turret <Var/Number>

@<RetVar/IF><RefObj> turn turret <Var/Number> to target <Var/Ship/Station>: timeout=<Var/Number> ms

@<RetVar/IF><RefObj> attack run on target <Value>: timeout=<Var/Number> ms

@<RetVar/IF><RefObj> defensive move: type=<Var/Number>,intensity=<Var/Number>,timeout=<Var/Number> ms, avoid object=<Value>

@<RetVar/IF><RefObj> move to ware object <Value> for collecting: timeout=<Var/Number> ms

<RetVar/IF><RefObj> catch ware object <Value>

@<RetVar/IF><RefObj> move around <Var/Number> ms

@<RetVar/IF><RefObj> escort ship <Var/Ship>

@<RetVar/IF><RefObj> escort ship <Var/Ship>: timeout=<Var/Number> ms

<RefObj> set formation <Var/Number>

<RefObj> add to formation with leader <Var/Ship>

<RefObj> remove from any formation

<RetVar/IF><RefObj> get formation leader

<RetVar> = <RefObj> get formation follower ships

START <RefObj> command <Object Command>: arg1=<Value>,arg2=<Value>,arg3=<Value>,arg4=<Value>

<RefObj> send signal <Object Signal>: arg1=<Value>,arg2=<Value>,arg3=<Value>,arg4=<Value>

@<RetVar/IF><RefObj> follow object <Var/Ship> with precision <Var/Number> m

@<RetVar/IF><RefObj> follow <Var/Ship> with precision <Var/Number> m: timeout=<Var/Number> ms

<RefObj> set follow mode <Var/Number>

<RetVar/IF><RefObj> get follow mode

<RefObj> set destination to <Value>

<RetVar/IF><RefObj> get destination

<RefObj> set attack target to <Value>

<RetVar/IF><RefObj> get attack target

@<RetVar/IF><RefObj> move to position x=<Var/Number> y=<Var/Number> z=<Var/Number> with precision <Var/Number> m

<RefObj> set command: <Object Command>

<RetVar/IF><RefObj> get command

<RefObj> set command target: <Value>

<RetVar/IF><RefObj> get command target

<RefObj> set command target2: <Value>

<RetVar/IF><RefObj> get command target2

<RetVar> = <RefObj> select new formation leader by: ship class=<Var/Number> strength=<Var/Number> min.speed=<Var/Number>

<RetVar/IF><RefObj> has formation ships

<RefObj> give formation leadership to <Var/Ship>

<RefObj> set pilot fightskill to <Var/Number>

<RetVar> = <RefObj> get pilot fightskill

<RetVar/IF> get player tracking aim

<RetVar/IF><RefObj> is <Var/Ship/Station> in firing range of turret <Var/Number>

<RetVar> = <RefObj> find enemy in firing range of turret <Var/Number>

<RefObj> set command: <Object Command> target=<Value> target2=<Value> par1=<Value> par2=<Value>

<RetVar/IF><RefObj> fire missile <Var/Ware> on <Value>

<RetVar/IF><RefObj> get current missile

<RetVar/IF><RefObj> find best missile for target <Value>

<RetVar> = best missile type for target <Value>

<RetVar/IF><RefObj> launch <Var/Number> fight drones: protect me or attacktarget=<Value>

<RetVar/IF><RefObj> is missile <Var/Ware> ready to fire

<RetVar/IF><RefObj> should a missile be fired

<RetVar> = <RefObj> get fire missile probability

<RetVar> = <RefObj>get fire missile time difference in seconds

<RefObj> set fire missile probability to <Var/Number>

<RefObj> set fire missile time difference to <Var/Number> s

<RetVar/IF><RefObj> fits laser <Var/Ware> into turret <Var/Number>

<RetVar> = <RefObj> get max. number of lasers in turret <Var/Number>

<RetVar> = <RefObj> get laser type in turret <Var/Number> at slot <Var/Number>

<RetVar> = <RefObj> get number of turrets

<RetVar> = get range of missile type <Var/Ware>

<RetVar> = <RefObj> find nearest missile aiming to me

<RetVar/IF><RefObj> can missile <Var/Ware> be installed

<RetVar/IF><RefObj> decouple ships

<RetVar/IF><RefObj> is decoupled ships leader

<RetVar/IF><RefObj> get current galaxy flight timestep in ms

<RetVar/IF><RefObj> is landing

<RetVar/IF><RefObj> is starting

@<RetVar/IF><RefObj> move to position continue: x=<Var/Number> y=<Var/Number> z=<Var/Number> with precision <Var/Number> m

<RetVar/IF><RefObj> move to debris/asteroid <Value> and turn turret <Var/Number> to target: timeout=<Var/Number

<RetVar/IF><RefObj> use jump drive: target=<Value>

<RetVar/IF><RefObj> needed jump drive energy for jump to sector <Var/Sector>

<RetVar/IF><RefObj> check, select and fire missile on <Value>

<RetVar/IF><RefObj> add big ship <Var/Ship>

<RetVar/IF><RefObj> has a free big ship dock port: ship subtype = <Value>

<RetVar/IF><RefObj> can be controlled by race logic

<RefObj> set race logic control enabled to <Var/Number>

<RetVar/IF><RefObj> can execute StartAction

<RefObj> set StartAction enabled to <Var/Number>

<RefObj> set as player wingman: <Var/Number>

<RetVar/IF><RefObj> is player wingman

set player tracking aim to <RefObj>

<RetVar> = <RefObj> get formation

<RetVar/IF><RefObj> get current action

<RetVar> = <RefObj> get array of missiles aiming at me

<RetVar/IF><RefObj> turret <Var/Number> can use laser <Var/Ware>

<RefObj> set pirate cover state to <Var/Number>

<RetVar/IF><RefObj> scan potential pirate <Var/Ship> for illegal wares

@<RetVar/IF><RefObj> attack run on target <Value> : timeout= <Var/Number> ms speedlimit=<Var/Nmber>

<RetVar/IF><RefObj> is target visible <Var/Ship/Station>

<RetVar> = <RefObj> get scanner range

<RefObj> select and switch lasers for target <Var/Ship/Station> in turret <Var/Number> : scan for friends <Var/Number>

<RetVar/IF><RefObj> get homesector

<RefObj> set homesector to <Var/Sector>

<RetVar/IF><RefObj> get job leader

<RetVar> = <RefObj> get job idle rate

<RetVar> = <RefObj> get flight time

<RefObj> reset flight time

<RetVar> = <RefObj> get job jump range

<RetVar/IF><RefObj> wait idle rate minimum: <Var/Number> ms

<RetVar> = <RefObj> fire laser of turret <Var/Number> ahead

<RefObj> auto sync patrol sector with environment: <Var/Number>

<RefObj> add to patrol group for sector: <Var/Sector>

<RefObj> remove from patrol group for sector: <Var/Sector>

<RefObj> remove all patrol group references

<RefObj> set relations from notoriety: include player as target and race > teladi as owner =<Var/Number>

<RetVar/IF><RefObj> get job id

 

Trade Commands


<RetVar/IF> get player money

add money to player: <Var/Number>

<RetVar/IF><RefObj> add<Var/Number> units of <Var/Ware>

<RetVar/IF><RefObj> install <Var/Number> units of <Var/Ware>

<RetVar> = get volume of ware <Var/Ware>

<RetVar> = get transport class of ware <Var/Ware>

<RetVar/IF> find station: product <Var/Ware> with best price: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station: product <Var/Ware> with min. jumps: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station: resource <Var/Ware> with best price: min.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station: resource <Var/Ware> with min. jumps: min.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station sells: resource <Var/Ware> with best price: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station sells: resource <Var/Ware> with min. jumps: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar> = get average price of ware <Var/Ware>

<RetVar> = get max price of ware <Var/Ware>

<RetVar> = get min price of ware <Var/Ware>

<RetVar> = get max price of ware <Var/Ware> as secondary resourcer

<RetVar> = get min price of ware <Var/Ware> as secondary resourcer

<RetVar/IF> is ware <Var/Ware> illegal in <Var/Race> sectors

<RetVar> = get maintype of ware <Var/Ware>

<RetVar> = get subtype of ware <Var/Ware>

<RetVar> = get ware from maintype <Var/Number> and subtype <Var/Number>

<RetVar> = get number of subtypes of maintype <Var/Number>

<RetVar> = <RefObj> get maintype

<RetVar> = <RefObj> get subtype

<RetVar/IF><RefObj> find station: product <Var/Ware> with best price: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF><RefObj> find station: product <Var/Ware> with min. jumps: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF><RefObj> find station: resource <Var/Ware> with best price: min.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF><RefObj> find station: resource <Var/Ware> with min. jumps: min.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF><RefObj> find station sells: resource <Var/Ware> with best price: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF><RefObj> find station sells: resource <Var/Ware> with min. jumps: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station: product <Var/Ware> with best price depend on jumps: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station: resource <Var/Ware> with best price depend on jumps: min price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar/IF> find station sells: resource <Var/Ware> with best price depend on jumps: max.price=<Var/Number>, amount=<Var/Number>, max.jumps=<Var/Number>, startsector=<Var/Sector>, trader=<Var/Ship/Station>

<RetVar> = get relvalue of <Var/Ware>


 

Trade Commands - Ships


<RetVar/IF><RefObj> buy<Var/Number> units of <Var/Ware>

<RetVar/IF><RefObj> buy<Var/Number> units of <Var/Ware> to a max. price of <Var/Number> Cr

<RetVar/IF><RefObj> sell <Var/Number> units of <Var/Ware>

<RetVar/IF><RefObj> load <Var/Number> units of <Var/Ware>

<RetVar/IF><RefObj> unload <Var/Number> units of <Var/Ware>

<RetVar> = <RefObj> get max. ware transport class

<RetVar/IF><RefObj> get cargo bay size

<RetVar/IF><RefObj> get free volume of cargo bay

<RetVar/IF><RefObj> get volume of ware <Var/Ware> in cargo bay

<RetVar/IF><RefObj> get true volume of ware <Var/Ware> in cargo bay

<RetVar/IF><RefObj> get free volume of ware <Var/Ware> in cargo bay

<RetVar/IF><RefObj> get total volume in cargo bay

<RetVar/IF><RefObj> can transport ware <Var/Ware>

<RefObj> add default items to ship

<RefObj> switch laser in turret<Var/Number> gun <Var/Number> to <Var/Ware>

<RefObj> set wanted ware count to <Var/Number>

<RefObj> set wanted ware to <Var/Ware>

<RetVar> = <RefObj> get wanted ware count

<RetVar> = <RefObj> get wanted ware

<RetVar/IF><RefObj> has illegal ware onboard: race=<Var/Race>

<RetVar/IF><RefObj> get tradeable ware array from ship

<RetVar> = <RefObj> get upgradeable price: cargo-speed-rot <Var/Ware> units:<Var/Number>


 

Trade Commands - Stations


<RetVar/IF><RefObj> get best store amount of ware <Var/Ware>

<RetVar/IF><RefObj> get max. store amount of ware <Var/Ware>

<RetVar/IF><RefObj> can buy ware <Var/Ware>

<RetVar/IF><RefObj> can sell ware <Var/Ware>

<RetVar/IF><RefObj> get price of ware <Var/Ware>

<RetVar/IF><RefObj> get average price of ware <Var/Ware>

<RefObj> set price of ware <Var/Ware> to <Var/Number> Cr

<RetVar/IF><RefObj> uses ware <Var/Ware> as primary resource

<RetVar/IF><RefObj> uses ware <Var/Ware> as secondary resource

<RetVar/IF><RefObj> uses ware <Var/Ware> as product

<RetVar/IF><RefObj> trades with ware <Var/Ware>

<RetVar/IF><RefObj> get product ware

<RetVar/IF><RefObj> get number of resources

<RetVar/IF><RefObj> get number of primary resources

<RetVar/IF><RefObj> get number of secondary resources

<RetVar/IF><RefObj> get max trade jumps

<RetVar/IF><RefObj> only player own ships can trade with

<RetVar> = <RefObj> get tradeable ware array from station

<RetVar> = <RefObj> get production cycle time: account for secondary resources=<Var/Number>

<RetVar> = <RefObj> get remaining production cycle time

<RetVar> = <RefObj> get number of products per cycle

<RetVar> = <RefObj> get number of resources per cycle for ware <Var/Ware>

<RetVar> = <RefObj> get production status: as percentage=<Var/Number>

<RefObj> factory production task: on=<Var/Number>

<RetVar/IF><RefObj> get products -----  Does not work

<RetVar/IF><RefObj> get intermediates buyable

<RefObj> set intermediates buyable to <Var/Number>

<RetVar/IF><RefObj> get intermediates sellable

<RefObj> set intermediates sellable to <Var/Number>


 

Trade Commands - Ships & Stations


<RetVar/IF><RefObj> get money

<RefObj> add money: <Var/Number>

<RetVar/IF><RefObj> get amount of ware <Var/Ware> in cargo bay

<RetVar/IF><RefObj> get true amount of ware <Var/Ware> in cargo bay

<RetVar/IF><RefObj> get free amount of ware <Var/Ware> in cargo bay

<RetVar/IF><RefObj> get max amount of ware <Var/Ware> that can be stored in cargo bay


 

Trade Commands - Merchant


add merchant <Var/String> base=<RefObj> wanted wares=<Var/Array> owned wares=<Var/Array> cash=<Var/Number> rank=<Var/Number>

<RetVar> = <RefObj> get merchants

remove merchant <Var/Sting>

merchant <Var/String> got ware <Var/Ware>: quantity=<Var/Number>

merchant <Var/String> sold ware <Var/Ware>: quantity=<Var/Number>

reset merchant <Var/String> expiry

<RetVar> = get data for merchant <Var/String>: item number=<Var/Number>

<RetVar> = get ware array for <Var/Ship>

<RetVar/IF><RefObj> lock ware: <Var/Ware> on station: <Var/Station> for this

<RetVar/IF><RefObj> get defined amount of ware <Var/Ware> as ship hardware

<RetVar/IF><RefObj> set defined amount of ware <Var/Ware> as ship hardware

<RetVar> = <RefObj> get ship hardware as array


 

General Object Commands


<RetVar/IF><RefObj> get object class

<RetVar/IF><RefObj> get owner race

<RetVar/IF><RefObj> get environment

<RetVar/IF><RefObj> get sector

<RetVar/IF><RefObj> get homebase

<RetVar/IF><RefObj> is of class <Var/Class>

<RetVar/IF><RefObj> exists

<RetVar/IF><RefObj> get ware type code of object

<RefObj> set serial name of station to <Var/Stations Serial>

<RetVar/IF><RefObj> get serial name of station

<RetVar/IF> find station in galaxy: startsector= <Var/Sector> class or type=<Value> race=<Var/Race> flags=<Var/Number> refobj=<Value> serial=<Var/Stations Serial> max.jumps=<Var/Number>

<RetVar/IF><RefObj> is of type <Var/Ship Type/Station Type>

<RetVar/IF> get jumps from sector <Var/Sector> to sector <Var/Sector>

<RetVar/IF> get next sector on route from sector <Var/Sector> to sector <Var/Sector>

<RefObj> set homebase to <Var/Ship/Station>

<RetVar/IF><RefObj> get current shield strength

<RetVar/IF><RefObj> get maximum shield strength

<RetVar/IF><RefObj> get current laser strength

<RetVar/IF><RefObj> get maximum laser strength

<RetVar/IF><RefObj> get max laser strength in turret <Var/Number>

<RetVar/IF><RefObj> get max. shield type that can be installed

<RetVar/IF><RefObj> get number of shield bays

<RetVar/IF><RefObj> get number of laser bays

<RetVar/IF><RefObj> get most destructive missile type that can be installed

<RetVar/IF><RefObj> get relation to object <Var/Ship/Station>

<RetVar/IF><RefObj> get relation to race <Var/Race>

<RetVar/IF><RefObj> get notoriery to race <Var/Race>

<RetVar/IF> get notoriery from race <Var/Race> to race <Var/Race>

<RetVar/IF><RefObj> is <Var/Ship/Station> a enemy

<RetVar/IF><RefObj> is <Var/Ship/Station> a friend

<RetVar/IF><RefObj> is <Var/Ship/Station> neutral to me

<RetVar/IF><RefObj> get shield type in bay <Var/Number>

<RetVar/IF><RefObj> get laser type in bay <Var/Number>

<RetVar/IF><RefObj> has same environment as <Var/Ship/Station>

<RetVar/IF><RefObj> is in same sector as <Var/Ship/Station>

<RetVar/IF><RefObj> is landed

<RetVar/IF><RefObj> is docked

<RetVar/IF><RefObj> is docking possible of <Value>

<RetVar/IF><RefObj> is docking allowed at <Var/Ship/Station>

<RetVar/IF><RefObj> is in sector

<RetVar/IF><RefObj> get attacker

<RefObj> set attacker to <Var/Ship/Station>

<RetVar> = get distance between <Var/Ship/Station> and <Var/Ship/Station>

<RetVar> = <RefObj> get distance to: x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar> = <RefObj> get distance to: position array=<Var/Array>

<RetVar> = get distance: position array1=<Var/Array> array2=<Var/Array>

<RetVar> = create ship: type=<Var/Ship Type> owner=<Var/Race> addto=<Value> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar> = <RefObj> get x position

<RetVar> = <RefObj> get y position

<RetVar> = <RefObj> get z position

<RetVar> = <RefObj> get position as array

<RetVar> = get player ship

<RefObj> set relation against <Value> to <Relation>

<RetVar> = create station: type=<Var/Station Type> owner=<Var/Race> addto=<Var/Sector> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar> = create gate: type=<Var/Number> addto=<Var/Sector> gateid=<Var/Number> dstsecx=<Var/Number> dstsecy=<Var/Number> dstgateid=<Var/Number> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar> = create asteroid: type=<Var/Number> addto=<Var/Sector> resource=<Var/Number> yield=<Var/Number> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RefObj> add product to factory or dock: <Var/Ware>

<RefObj> add primary resource to factory: <Var/Ware>

<RefObj> add second resource to factory: <Var/Ware>

<RefObj> remove product from factory or dock: <Var/Ware>

<RefObj> remove primary resource from factory: <Var/Ware>

<RefObj> remove second resource from factory: <Var/Ware>

<RetVar> = create nebula: type=<Var/Number> addto=<Var/Sector> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar> = create sun: subtype=<Var/Number> r=<Var/Number> g=<Var/Number> b=<Var/Number> addto=<Var/Sector> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar> = create planet: subtype=<Var/Number> addto=<Var/Sector> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar> = create special: type=<Var/Number> addto=<Var/Sector> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RetVar/IF> find ship: sector=<Var/Sector> class or type=<Value> race=<Var/Race> flags=<Var/Number> refobj=<Value> maxdist=<Var/Number> maxnum=<Var/Number> refpos=<Var/Array>

<RetVar/IF> find asteroid: sector=<Var/Sector> resourcetype=<Var/Number> min.yield=<Var/Number> flags=<Var/Number> refobj=<Value> maxdist=<Var/Number> maxnum=<Var/Number> refpos=<Var/Array>

<RetVar/IF> find flying ware: sector=<Var/Sector> maintype=<Var/Number> subtype=<Var/Number> flags=<Var/Number> refobj=<Value> maxdist=<Var/Number> maxnum=<Var/Number> refpos=<Var/Array>

<RetVar/IF> find station: sector=<Var/Sector> class or type=<Value> race=<Var/Race> flags=<Var/Number> refobj=<Value> maxdist=<Var/Number> maxnum=<Var/Number> refpos=<Var/Array>

<RetVar/IF><RefObj> is disabled

<RefObj> station trade and production tasks: on=<Var/Number>

<RetVar/IF><RefObj> get SectorObject ID

<RetVar> = get ware type of SectorObject <Var/Number>

<RetVar/IF> exists SectorObject <Var/Number>

<RetVar/IF> get object from SectorObject <Var/Number>

<RefObj> destruct: show no explosion=<Var/Number>

<RefObj> set position: x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RefObj> set rotation: alpha=<Var/Number> beta=<Var/Number> gamma=<Var/Number>

<RetVar> = create flying ware: maintype=<Var/Number> subtype=<Var/Number> count=<Var/Number> sector=<Var/Sector> x=<Var/Number> y=<Var/Number> z=<Var/Number> selfdestruct=<Var/Number>

<RetVar> = <RefObj> get rot alpha

<RetVar> = <RefObj> get rot beta

<RetVar> = <RefObj> get rot gamma

<RetVar> = <RefObj> get size of object

<RetVar/IF><RefObj> get max upgrades for upgrade <Var/Ware>

<RetVar/IF><RefObj> get max speed

<RetVar/IF><RefObj> get max hull

<RetVar/IF><RefObj> get hull

<RetVar/IF><RefObj> get hull percent

<RetVar/IF><RefObj> get shield percent

<RetVar/IF><RefObj> get shield and hull percent

<RetVar/IF><RefObj> get max upgraded speed

<RetVar/IF><RefObj> get dock bay size

<RetVar/IF><RefObj> get number of landed ships

player loses police licence for race <Var/Race>

<Var/Race> add notoriety: race=<Var/Race> value=<Var/Number>

<RefObj> set ship disabled to <Var/Number>

<RefObj> put into environment <RefObj>

<RefObj> station send defend squad against ship <Var/Ship/Station>

<RetVar/IF> = <RefObj> get name

<RefObj> set name to <Var/String>

<RefObj> set owner race to <Var/Race>

<RetVar/IF><RefObj> find ship: class or type=<Value> race=<Var/Race> flags=<Var/Number> refobj=<Value> maxnum=<Var/Number> with homebase=<Value>

<RetVar/IF> = find station in galaxy: startsector=<Var/Sector> class or type=<Value> race=<Var/Race> flags=<Var/Number> refobj=<Value> serial=<Var/Stations Serial> max.jumps=<Var/Number> num=<Var/Number>

<RetVar> = <RefObj> get ID code

<RetVar> = <RefObj> get pilot name

<RefObj> set pilot name to <Var/String>

<RefObj> set pilot speaker: voice=<Value>, face=<Value>, Pirate subrace=<Value>, Argon female=<Value>

<RefObj> set hull to <Var/Number>

<RefObj> set current shield strength to <Var/Number>

<RetVar> = <RefObj> get current max speed

<RetVar> = get fight rank

<RetVar> = get trade rank

<RetVar> = <RefObj> is known

<RefObj> set known status to <Var/Number>

<RetVar> = <RefObj> is detectable

<RetVar> = <RefObj> is hired

<RetVar> = <RefObj> serialise object

<RetVar> = get player name

<RefObj> disable ship rebuild

<RetVar> = <RefObj> get current speed

<RetVar> = order ship in next shipyard: owner=<Var/Race> sector=<Var/Sector> class=<Var/Class> optional: default shiptype for race: <Var/Race>

<RetVar/IF> = find nebula: sector=<Var/Sector> type=<Var/Number> effect=<Var/Number> flags=<Var/Number> refobj=<Var/Ship/Station> maxdist=<Var/Number> maxnum=<Var/Number> refpos=<Var/Array>

<RetVar> = <RefObj> is hidden

<RefObj> start job

START <RefObj> command: arg1=<Value>, arg2=<Value>, arg3=<Value>, arg4=<Value>

<RetVar> = <RefObj> get true owner

<RetVar> = create debris: type=<Var/Number> addto=<Var/Sector> resource=<Var/Number> yield=<Var/Number> x=<Var/Number> y=<Var/Number> z=<Var/Number>

<RefObj> add lasers per value:<Var/Number> flags:<Var/Number>

<RefObj> add shields per value:<Var/Number>

<RetVar/IF><RefObj> is asteroid scanned

<RefObj> set asteroid scanned to <Var/Number>

<RetVar> = <RefObj> get flying ware count

<RetVar> = <RefObj> get pilot morale

<RetVar> = <RefObj> get pilot aggression

set notoriety of <Var/Race> -> <Var/Race> to <Var/Number> points

<RetVar/IF> find debris: sector= <Var/Sector> resource= <Var/Ware> min yield=<Var/Number> flags= <Var/Number> refobj= <Value> num=<Var/Number> max distance= <Var/Number> refpos= <Var/Array>

 

General Object Commands - Weapon Information



<RetVar> = get power generator of ship/station type <Var/Ware>

<RetVar> = <RefObj> get power generator

<RetVar> = get range of laser <Var/Ware>

<RetVar> = get shield damage of laser <Var/Ware>

<RetVar> = get hull damage of laser <Var/Ware>

<RetVar/IF>get ammunition of laser <Var/Ware>

<RetVar> = get missile range of <Var/Ware>

<RetVar> = get missile max damage of <Var/Ware>


 

Universe / Sector Commands


<RetVar/IF> get sector from universe index: x=<Var/Number>, y=<Var/Number>

<RetVar> = get max sectors in x direction

<RetVar> = get max sectors in y direction

<RetVar/IF><RefObj> is sector known by the player

<RetVar> = <RefObj> get universe x index

<RetVar> = <RefObj> get universe y index

<RetVar/IF><RefObj> get warp gate: gate id=<Var/Number>

<RetVar> = <RefObj> get north warp gate

<RetVar> = <RefObj> get south warp gate

<RetVar> = <RefObj> get east warp gate

<RetVar> = <RefObj> get west warp gate

<RetVar> = find a random sector: startsector=<Var/Sector>, jumps=<Var/Number>, owner=<Var/Race>

<RetVar> = <RefObj> get ship array from sector/ship/station

<RetVar> = <RefObj> get station array from sector

<RetVar> = <RefObj> get factory array from sector

<RetVar> = <RefObj> get dock array from sector

<RetVar> = <RefObj> get player owned ship array from sector

<RetVar> = <RefObj> get player owned station array from sector

<RetVar> = <RefObj> get asteroid array from sector

<RetVar> = <Var/Warpgate> get gate destination: return sector=<Var/Number>

<RetVar> = <Var/Warpgate> get gate id

<RetVar/IF><RefObj> get owned ships: class/type=<Value>

<RetVar> = get ship array: of race <Var/Race> class/type=<Value>

<RetVar> = get station array: of race <Var/Race> class/type=<Value>

<RetVar/IF> = get next gate on route from <Var/Sector> to <Var/Sector>

<RetVar> = get random NPC

<RetVar> = <RefObj> get NPC personal ship

<RefObj> NPC send voice message: id= <Var/Number>

<RefObj> release NPC personal ship

<RefObj> release NPC

<RetVar> = <RefObj> NPC wants to bail

<RetVar> = <RefObj> NPC is aggressive

<RefObj> spawns NPC personal ship: rank=<Var/Number>

<RefObj> spawns NPC fleet: rank=<Var/Number>

<RetVar> = <RefObj> get NPC fleet

<RetVar> = <RefObj> get asteroid yield

<RetVar> = find a random sector: startsector=<Var/Sector>, jumps=<Var/Number>, owner=<Var/Race>, security level=<Var/Number>

<RetVar> = <RefObj> get resource waretype of asteroid

<RetVar/IF> <RefObj> has collectable rocks

 

Notes:

<RetVar> is the return value of a function

<RefObj> is the reference object, which implements the Funtion

Tags in <.. > are function parameters

@ before a function it means that it is interruptable

This is an updated version of a list that was originally found for X2 on the German forum.