This record describes changes to the API in version 1.7 Beta 6.


  • <CanInstallItem> and <CanBeInstalled> get an aItemToReplace parameter if we're replacing a device (as opposed to installing a new device).


  • Immutable objects never blacklist the player.
  • In API 35, the default enemy exclusion radius is now 50 light-seconds (previously it was 30 light-seconds).
  • Item tables (plus armor and device tables) now support enhancement descriptors (not just enhancement numeric codes).
  • Generic types (<Type>) can how have <Communications> elements. Useful if you use a generic type as a ship's event handler.


  • Added (plyIncScore player inc) -> score to increment/decrement the player's score. Note that this increments the raw score, before adjusting for resurrections.
  • Added damageAdj property for armor and shield items.
  • Added shpGetOrderCount.
  • Added (shpCancelOrder ship [orderIndex]). Cancels either the current order or the order specified by index.
  • shpGetOrderDesc now takes an optional orderIndex argument to return details about a different order in the stack.
  • Equality comparisons now work on structs.
  • (@ struct) returns the list of keys in struct (or Nil).
  • Added radioactive property to ships and stations for both getting and setting.
  • sysHitScan now requires first parameter and takes options argument. By default, this function detects worlds/stars, which is a change from previous versions. To revert back to old behavior, add options: { excludeWorlds:True }.
  • Added showMapLabel property for stations to get/set whether a station shows its name on the map. This returns True even if a station is currently unknown (and thus not shown on the map).
  • Added known property for items.