Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • More categories and sub menus have been added for the commands to make it easier to find the commands you need
  • Some of the commands have been move to different menus where it makes sense
  • The Search Filter can be used to filter the list of available commands so you can just type in what you are looking for
  • An 'All Commands' section has been added that shows all the commands in a single list, useful when using the search filter
  • The parameter/variable menu has tabs added and split up the various selection so you don't need to scroll a lot to find things
  • The parameter/variable menu also works with the search filter to quickly find things
  • The Search filter also works in the script listing, and the various selection menus.

Script Constants

The script constants have been expanded with a large number of new constants.
The constants have also been grouped in collapsible groups rather than a single large list.
The search filter is also available to search by text

List Script Constants

Datatypes

There are a number of new datatypes available. Some related to the new features, others are useful for general scripting.

...

  • DATATYPE_AGENT - This is an agent object for use with diplomacy
  • DATATYPE_AGENTCOMMAND - This is a diplomacy task use by agents in diplomacy, similar to ship/station commands
  • DATATYPE_TABLE - See below for Table Info
  • DATATYPE_LOADOUTRET - This is a return value from the ship loadout script commands
  • DATATYPE_MERCHANT - This is for the merchant objects (Barter Menu) for use with script commands to control the barter system
  • DATATYPE_DEALER - Similar to Merchant, but used on the Black Market instead of Barter, most commands can use either merchant or dealer
  • DATATYPE_CARRIERROLE - This is the ship role for use with the carrier management, i.e. Fighter, Defender, Drone, etc
  • DATATYPE_COMMANDMENU - This is one of the sub menus in the ship command menu, i.e. Trade, Combat, General, etc. For use with script commands dealing with command menu changes
  • DATATYPE_GSUBTYPE - This is the Global Subtype class of objects, used by some ship/station information commands
  • DATATYPE_MAINTYPE - This is the main type of a variable in the script engine
  • DATATYPE_TIME - This is a time variable for using ms timing, there are various commands allowing you to manipulate time values
  • DATATYPE_XMLDATA - This stores a parsed xml data structure, for use with reading and writing xml files

 

Tables

Tables will store data based on keys, previously, you had some limited table support by using the global/local variables to store data in string keys, which used tables internally to store this. Now you have more access to the table system, and can use them locally within your scripts. Like arrays, tables are stored by reference, so passing tables between scripts, or storing them in local/global variables will store the pointer to the table, so the same table can be modified across multiple scripts.

...

NOTE: some of the new script commands will use tables as arguments or return values

Parameter Definitions

There have been a number of Parameter Definitions added.
These are the selection list types for various things, used in the arguments of scripts to get input of a certain type, or for use with the get user input command.
Script commands themselves also use these to limit the parameter selection

...

  • Var/Agent Command
  • Var/Agent
  • Var/Table
  • Var/Array/Table
  • Var/LoadoutRet
  • Var/Merchant
  • Var/Dealer
  • Var/Merchant/Dealer
  • Var/CarrierRole
  • Var/CommandMenu
  • Var/Galaxy SubType
  • Var/Main Type
  • Var/Available Ware
  • Var/Space Object
  • Var/Player Station Type
  • Var/Property Group
  • Var/Turret Command
  • Var/Object/Turret Command
  • Var/HSAP
  • Var/Time
  • Var/Retired Agents
  • Var/Laser
  • Var/Shield
  • Var/Missile Type
  • Var/Goods
  • Var/Equipment
  • Var/XMLData
  • Var/Ship Command
  • Var/Custom Wing

Diplomacy Tasks

With the new diplomacy system, you can add your own tasks, this works similar to the command console custom commands where you first register a new command, then set the global map, to map that command with a script. To get input for the script, you can also assign a menu script, this will run the menu using the new input system then send the final arguments onto the diplomacy script. Diplomacy command scripts have the first argument as the Diplomat object that's running the command.

...

This displays a timer instead of the progress bar (use this for commands that run permanently)

Advanced Hotkeys

The hotkey system has been updated to allow customisation, 4 new script commands have been added:

...

"pressed" - This is sent when the hotkey is first pressed (doesn't repeat if you hold down the key)
"released" - This is sent when you release the hotkey
"short" - This is sent after "released" and indicates it was pressed for a short time
"long" - This is send after "released" and indicates it was pressed for a longer time
"double" - This is sent instead of a second "pressed" event when a hotkey is pressed twice in a short period of time

Script Commands

A large amount of new script commands has also been added, including some changes to existing ones

...