ChangeLogs Archive 1

Introduction

This changelog contains the recent changes made to ISXEVE. Users are encouraged to click on the "watch" tab at the top of this page in order to be informed of when ISXEVE is updated.

The Latest change log is available here: http://www.isxgames.com/isxeve/Extensions/ISXEVEChanges.txt

THIS PAGE IS AN ARCHIVE

For recent changes, please see ChangeLogs


July 10, 2007 -- By Amadeus [ISXEVE-20070703.0401]

  • Added new METHODS to the 'entity' datatype:

 1. OpenCargo
 2. CloseCargo
 3. StackAllCargo                 (ie, consolidate stacks of items)
 4. SetName[]               (It's the responsibility of the script to know whether or not an entity can have its name 'set')

  • Added new MEMBERS of the 'entity' datatype. These members require that the entity in question have a cargo hold (ie, containers), and that you have "opened" the cargo hold (using the method above) at least once, which will make "IsCargoAccessible" return TRUE.

 1. CargoCapacity                 (double type)
 2. UsedCargoCapacity             (double type)
 3. GetCargo                      (int type)  
    GetCargo[]        (int type)    [int would be the "CargoCount" from this entity's cargo hold
 4. IsCargoAccessible             (bool type)   This member returns TRUE once you've opened the cargohold at least once and the contents have been populated by the server.]

  • Added new MEMBER to the 'ship' datatype:

 1. IsCargoAccessible             (bool type)   [This member returns TRUE once you've opened your cargohold at least once and the contents have been populated by the server.]
    ~ NOTE:  This method should be used for the purposes of checking on the accessibility of Cargo, Drones, or Modules.  Though accessed by different means, they're all 'really' part of your "cargo".

  • Added new METHOD to the 'ship' datatype:

 1. StackAllCargo

  • Added new METHODS to the 'item' datatype:

 1. Jettison                      
 2. MoveTo[MyShip
    MoveToMyShip,
    MoveToHangar
    MoveToHangar,
    MoveTo
    MoveTo,]
    ~ This method will move the item from its current cargo location to the cargohold/location of the ID# you specify.  If no quantity is given, it will move the entire stack.
    ~ For examples, see the forums.

  • Added new DATATYPE: "station"
  • Added new MEMBER to the 'character' datatype:

 1. Station                       (station type)

  • Added new MEMBERS to the 'station' datatype:

 1. GetHangarItems                (int type)    
    GetHangarItems[  (int type)
 2. GetHangarShips                (int type)    
    GetHangarShips]  (int type)

  • Added new METHOD to the 'station' datatype:

 1. StackAllHangarItems

July 9, 2007 -- By Amadeus [ISXEVE-20070703.0305]

  • Added new MEMBERS to the 'item' datatype:

 1. Slot                          (string type)
 2. SlotID                        (int type)
 ~ NOTE: These two members are aliases for "Location" and "LocationID" respectfully.  They are being added since when used in the context of fitted modules, it will make more sense to use these labels.

  • Removed MEMBERS of the 'ship' datatype:

 1. Module
 2. ModuleCount
 3. DroneCount
 4. CargoCount

  • Added MEMBERS to the 'ship' datatype:

 1. GetModules                      (int type)
    GetModules[]      (int type)     [int returned is the number of modules fitted on your ship
 2. ModuleSlotName                (module type)
    ~ SlotName can be: "HiSlot#", "MedSlot#", "LoSlot#" ..where # is between 0 and 7
 3. GetCargo                        (int type)
    GetCargo]          (int type)     [int returned is the cargo count in your ship
 4. GetDrones                       (int type)
    GetDrones]         (int type)     [int returned is the drone count within your ship's drone bay]

  • Added new DATATYPE: 'module'
  • Added new MEMBERS to the 'module' datatype:

 1.  ToItem                         (item tye)     [Use this to get things like Name, ID, Slot, etc..
 2.  IsGoingOnline                  (bool type)
 3.  IsWaitingForActiveTarget       (bool type)
 4.  IsChangingAmmo                 (bool type)
 5.  IsReloadingAmmo                (bool type)
 6.  IsOnline                       (bool type)
 7.  IsActivatable                  (bool type)
 8.  IsAutoReloadOn                 (bool type)
 9.  IsActive                       (bool type)    only works for "IsActivateable" type modules 
 10. IsOffensive                    (bool type)    only works for "IsActivateable" type modules 
 11. IsAssistance                   (bool type)    only works for "IsActivateable" type modules 
 12. EffectCategory                 (int type)     only works for "IsActivateable" type modules 
 13. Charge                         (item type)    only works if the module currently possesses a charge
 14. CurrentCharges                 (int type)     only works if the module currently possesses a charge
 15. MaxCharges                     (int type)     only works if the module currently possesses a charge
 16. GetAvailableAmmo] (int type)     [int returned is the number of items in your ship's cargo hold that will work as ammo]

  • Added new METHODS to the 'module' datatype:

 1. Click
 2. ChangeAmmo[AmmoID#             (ie, the item.ID from your ship's cargo)
    ChangeAmmoAmmoID#,Quantity]
    ~ NOTE: This method will replace your current ammo with the ammo given in the same quantity unless you provide the optional 2nd argument, which would be the quantity.  Be careful though, if you use a quantity that is too high for the module, it'll fail entirely.
 3. SetAutoReloadOn        
 4. SetAutoReloadOff
 5. PutOnline
 6. PutOffline
 
 

July 9, 2007 -- By Amadeus [ISXEVE-20070703.0251]

  • Made some more tweaks to 'InStation' to be even more reliable.
  • Added new MEMBERS to the 'entity' datatype:

 1. ShieldPct              (double type)
 2. ArmorPct               (double type)
 3. StructurePct           (double type)

  • Added new MEMBER to the 'ship' datatype:

 1. Capacitor              (double type)

July 5, 2007 -- By Amadeus [ISXEVE-20070703.0096]

  • The 'InStation' member of the 'character' datatype should now be much more reliable. It should show as being TRUE only when the ship is completely in the station, and FALSE when the ship is completely in space.

July 5, 2007 -- By Amadeus [ISXEVE-20070703.0045]

  • Added new METHOD to the 'entity' datatype:

 1. MakeActiveTarget                    [only works for entities that are already 'locked' as targets]

  • Added new MEMBERS to the 'entity' datatype:

 1. IsActiveTarget           (bool type)      [is your active target
 2. IsLockedTarget           (bool type)      is one of your locked targets
 3. IsTargetingMe            (bool type)      is targeting you!
 4. BeingTargeted            (bool type)      your currently in the process of locking it as a target]

  • Added new MEMBERS to the 'character' datatype:

 1. ActiveTarget             (entity type)
 2. GetTargets[]      (int type)       [index must be of the type 'index:entity'
 3. GetTargeting]    (int type)       [index must be of the type 'index:entity'
 4. GetTargetedBy]   (int type)       [index must be of the type 'index:entity']
 
 

July 4, 2007 -- By Amadeus [ISXEVE-20070703.0026]

  • Added new METHOD to the 'character' datatype:

 1. Undock

  • Added new METHOD to the 'entity' datatype:

 1. Dock           (if the entity is a station, of course)
 ~ NOTE: This method only works if you're within docking range of the station.  Use the 'WarpTo' (0 meters) method before using this method if your distance to the station is greater than the docking range.
         

July 4, 2007 -- By Amadeus [ISXEVE-20070703.0011]

  • Added new MEMBER to the 'eve' datatype:

 1. GetEntities[,,...                (int type) 
 ~ In LavishScript, this method requires at least one argument, and that argument must be of the type 'index:entity'.  If no optional parameters are used, then the given index is filled with an array of entities visible to the client at the point of creation (sorted by distance.)  The optional parameters can be anything typically used with the entity search routines (including 'sorting' parameters).  An example of this might be: 
   "EVE:GetEntitiesEntities,categoryID,6,radius,10000,SecurityR,-1.0,0"
 ~ The return value is the number of entities in your newly created index.
 ~ Here is an example lavishscript script that would illustrate the functionality of this particular member.  Please keep this example handy as any other methods provided for custom array handling will use the same concepts:
             function main()
             {
                 variable index:entity Entities
                 echo Populating Entities List:: ${EVE.GetEntitiesEntities} entities total
   
                 echo The second Entity in the array is: ${Entities.Get2].Name} at ${Entities.Get[2.Location}.
                 echo The third Entity in the array is: ${Entities.Get3].Name} at ${Entities.Get[3].Location}.
             }
 ~ For more information about using the 'index' datatype, please see http://www.lavishsoft.com/wiki/index.php/ObjectType:index  

June 19, 2007 -- By Amadeus [ISXEVE-20070619.0001]

  • Update for 6.19.2007 patch.

June 2, 2007 -- By Amadeus [ISXEVE-20070524.0588]

  • Added new MEMBER to the 'pilot' datatype:

 1. TypeID                          (int type)

  • Added new MEMBERS to the 'character' datatype:

 1. Name                            (string type)
 2. Corporation                     (string type)
 3. Alliance                        (string type)

  • ISXEVEWrapper.dll is now included with ISXEVE. This file serves as a .NET wrapper for creating .NET applications with innerspace and ISXEVE.

May 30, 2007 -- By Amadeus [ISXEVE-20070524.0362]

  • Added the following MEMBER to the 'eve' datatype:

 1. Standing[#,#]
 ~ This member retrieves the standing between the two ID#s given.  Any 'CharID', 'ShipID', 'CorporationID', or 'AllianceID' should work.

  • Added new datatype: 'ship'.

 Please note that many members of the 'ship' datatype will be unavailable until you access certain aspects of your 
 ship.  For example, to get the CargoCapacity, you'll need to open your cargo hold at least once.  Ditto for the items in your drone bay.  Also, 
 note that many times you have to do this at least once every time you change 'states' or go from being in a station to being in space, or vice-versa.
 Of course, since you can't open your drone bay while in space, the drone bay attributes will not be available unless you're in a station.

  • Added a new MEMBERS to the 'character' datatype:

 1.  Ship                          (ship type)
 2.  InStation                     (bool type) 
 3.  StationID                     (int type)     [if this is NULL, then you're not in a station!]
 4.  AutoPilotOn                   (bool type)

  • Added a new datatype: "item".
  • Added the following MEMBERS to the 'ship' datatype:

 1.  CargoCapacity                 (double type)
 2.  UsedCargoCapacity             (double type)
 3.  DronebayCapacity              (double type)
 4.  UsedDronebayCapacity          (double type)
 5.  CargoCount                    (int type)     [number of items in your ship's cargo hold
 6.  Cargo#]                      (item type)    [# is between 1 and "CargoCount"
     CargoName                        
 7.  ModuleCount                   (int type)     number of modules currently fitted
 8.  Module#]                     (item type)    [# is between 1 and "ModuleCount"
     ModuleName
 9.  DroneCount                    (int type)     number of drones in your drone bay 
 10. Drone#]                      (item type)    [# is between 1 and "DroneCount"
     DroneName]     [Note:  This member only deals with drones that are stored within your ship's drone bay.]

  • Added new MEMBERS to the 'item' datatype:

 1.  Name                          (string type)
 2.  OwnerID                       (int type)
 3.  MacroLocation                 (string type)  [ie, "Amadeus' Harbinger"
 4.  MacroLocationID               (int type)
 5.  Group                         (string type)
 6.  GroupID                       (int type)
 7.  Category                      (string type)
 8.  CatetoryID                    (int type)
 9.  TypeID                        (int type)   
 10. Location                      (string type)  ie, "DroneBay"]
 11. LocationID                    (int type)
 12. IsContraband                  (bool type)
 13. Quantity                      (int type)
 14. ID                            (int type)

May 29, 2007 -- By Amadeus [ISXEVE-20070524.0321]

  • Added new METHOD to the 'eve' datatype:

 1. Execute[Cmd]
 ~ Commands are as follows:
  CmdAccelerate               CmdActivateHighPowerSlot1       CmdActivateHighPowerSlot2       CmdActivateHighPowerSlot3       CmdActivateHighPowerSlot4
  CmdActivateHighPowerSlot5   CmdActivateHighPowerSlot6       CmdActivateHighPowerSlot7       CmdActivateHighPowerSlot8       CmdActivateLowPowerSlot1
  CmdActivateLowPowerSlot2    CmdActivateLowPowerSlot3        CmdActivateLowPowerSlot4        CmdActivateLowPowerSlot5        CmdActivateLowPowerSlot6
  CmdActivateLowPowerSlot7    CmdActivateLowPowerSlot8        CmdActivateMediumPowerSlot1     CmdActivateMediumPowerSlot2     CmdActivateMediumPowerSlot3
  CmdActivateMediumPowerSlot4 CmdActivateMediumPowerSlot5     CmdActivateMediumPowerSlot6     CmdActivateMediumPowerSlot7     CmdActivateMediumPowerSlot8
  CmdCloseActiveWindow        CmdCloseAllWindows              CmdDecelerate                   CmdExitStation                  CmdMinimizeActiveWindow
  CmdMinimizeAllWindows       CmdQuitGame                     CmdReloadAmmo                   CmdResetMonitor                 CmdSendBroadcast_EnemySpotted
  CmdSendBroadcast_HealArmor  CmdSendBroadcast_HealCapacitor  CmdSendBroadcast_HealShield     CmdSendBroadcast_HoldPosition   CmdSendBroadcast_InPosition
  CmdSendBroadcast_JumpBeacon CmdSendBroadcast_Location       CmdSendBroadcast_NeedBackup     CmdStopShip                     CmdToggleAudio  
  CmdToggleAutopilot          CmdToggleMap                    CmdToggleWindowed               OpenAssets                      OpenBrowser
  OpenCalculator              OpenCargoHoldOfActiveShip       OpenChannels                    OpenCharactersheet              OpenConfigMenu
  OpenContracts               OpenCorporationPanel            OpenDroneBayOfActiveShip        OpenFactory                     OpenFitting
  OpenFpsMonitor              OpenHangarFloor                 OpenHelp                        OpenInbox                       OpenJournal
  OpenJukebox                 OpenLog                         OpenMapBrowser                  OpenMarket                      OpenMonitor
  OpenMoonMining              OpenNotepad                     OpenOverviewSettings            OpenPeopleAndPlaces             OpenScanner
  OpenShipConfig              OpenShipHangar                  OpenStationManagement           OpenTutorials                   OpenWallet
  PrintScreen 

  • Added new MEMBERS to the 'entity' datatype:

 1. GroupID                  (int type)
 2. CategoryID               (int type)
 3. TypeID                   (int type)

  • FIXED the following MEMBERS of the 'entity' datatype: "Group", "Category", "Type". They should now always return a string!
  • Adjusted the following "Entity Search Routines" to use the ID# instead of the name (string). (The parameter name changed as well.)

 1. Entity[TypeID,#
 2. EntityGroupID,#
 3. EntityCategoryID,#]
 ~ The reason for this change is because there are over 14,000 types and 600 groups.  Doing it by 'name' will cause a massive surge in 
   server communication (which we don't want.)  Using ID#s does not have that same effect.  Users are encouraged to provide with their
   scripts 'include files' that will define the ID#s of the most used groups and types.  They can be easily determined by manually checking
   via the 'GroupID'/'Group' and 'TypeID'/'Type' members of the "entity" datatype or, eventually, via other datatypes dealing with inventory.
 ~ Since the list of categories is short, I will provide those ID#s for you:
 #System (ID: 0)         Owner (ID: 1)           Celestial (ID: 2)           Station (ID: 3)
 Material (ID: 4)        Accessories (ID: 5)     Ship (ID: 6)                Module (ID: 7)
 Charge (ID: 8)          Blueprint (ID: 9)       Trading (ID: 10)            Entity (ID: 11)
 Bonus (ID: 14)          Skill (ID: 16)          Commodity (ID: 17)          Drone (ID: 18)
 Implant (ID: 20)        Deployable (ID: 22)     Structure (ID: 23)          Reaction (ID: 24)
 Asteroid (ID: 25)

May 28, 2007 -- By Amadeus [ISXEVE-20070524.0221]

  • Removed the "ToPilot" member of the the 'entity' datatype. (See the new "Owner" member below.)
  • Added new MEMBER to the 'entity' datatype:

 1. OwnerID                           (int type)
 2. Owner                             (pilot/int type)
 ~ NOTE: IF the entity has an owner that is currently in your "Locals" list, then this will return that owner as a 'pilot' datatype object.  If not, it will return the ownerID# as an integer.

  • GENERAL NOTE: I am fairly certain that the "IDs" that EVE uses for players (ie, ShipID, CharID, CorpID, etc..) never change. Therefore, although a player may no longer be in your pilots or entities list, it might be wise to keep a database of their ID numbers.

May 25, 2007 -- By Amadeus [ISXEVE-20070524.0211]

  • Added new MEMBERS to the 'character' datatype:

 1. CharID                            (int type)
 2. ToPilot                           (pilot type)
 3. Standing[#]                       (float type)  [Your current standing towards any CharID, CorporationID, or AllianceID]
   (Note: "StandingTo" will also work, and functions identically.)

  • Added new METHODS to the 'character' datatype:

 1. SetCorpStanding[#,#,Reason       (the first argument is the "CorporationID" of the Corp, the second is the new "Standing", and then the "Reason")
 2. SetPilotStanding#,#,Reason]      (the first argument is the "CharID" of the Pilot, the second is the new "Standing", and then the "Reason")

  • Added new MEMBERS to the 'entity' datatype:

 1. CharID                            (int type)
 2. ToPilot                           (pilot type)

  • Added new MEMBER to the 'eve' datatype:

 1. LocalsCount                        (int type)
 2. EntitiesCount                     (int type)

  • Added new datatype: "pilot"
  • Added new TLO: "Local" (returns a 'pilot' datatype object) [NOTE: "Pilot" will also work as an alias for "Local"]

 - Syntax:  ${Local[#}              (number between 1 and ${EVE.LocalCount})
            ${LocalName]}           (Name = name of the pilot in your locals window)

  • Added new MEMBERS to the 'pilot' datatype:

 1.  Name                            (string type)
 2.  CharID                          (int type)
 3.  Type                            (string type)  [this is, for the most part, your 'race' subtype)
 4.  Corporation                     (string type)  
 5.  CorporationID                   (int type)
 6.  Alliance                        (string type)
 7.  AllianceID                      (int type)
 8.  ToEntity                        (entity type)  [if they're within range of your overhead, of course
 9.  Standing                        (double type)   The pilots standing towards you.
 10. StandingTo#]                   (double type)   [The pilots standing towards any other CharID, CorporationID, or AllianceID]

  • Added new METHODS to the 'pilot' datatype:

 1. SetStanding[#,Reason]            (EXAMPLE:  "Local[Amadeus]:SetStanding[5.0,Amadeus rocks]"

  • The "Entity" ("Overhead") TLO will now accept a single integer as an argument that would be a number

 between 1 and ${EVE.EntitiesCount}  (for iteration).

May 24, 2007 -- By Amadeus [ISXEVE-20070524.0067]

  • Added new COMMAND: "Where"

 - This command lists, in the console, all of the entities currently visible to you in space.  The format for this listing is:
     ~ [group] Name (distance .. security status) [category .. Type]
     (Note:  Sometimes the 'type' is not available for a particular entity.)
 - Arguments for "Where" are identical to the "Entity search routines" that are used with the Entity TLO except for instead of 
   delimiting with commas, you delimt with spaces.  For example: "Where category Ship Radius 10000 SecurityR -1.0 0"
* Added new MEMBERS to the 'character' datatype:
  1. CorporationID          (int type)
  2. AllianceID             (int type)
  3. RegionID               (int type)
  4. ConstellationID        (int type)
  5. SolarSystemID          (int type)
  6. GangID                 (int type)
  7. ShipID                 (int type)

May 24, 2007 -- By Amadeus [ISXEVE-200705xx.xxxx]

  • Removed the "Target" METHOD of the 'entity' datatype.
  • Added the following METHODS to the 'entity' datatype:

 1. LockTarget
 2. UnlockTarget
 3. KeepAtRange[distance    {Distance is in meters.  If no distance is given, ISXEVE uses a default of 1000.}
 4. Orbitdistance]          {Distance is in meters.  If no distance is given, ISXEVE uses a default of 5000.}

  • Updated Entity 'search routines'.

 1. Entity[type,
 2. Entitygroup,
 3. Entitycategory,
 4. Entityid,#
 5. Entitynotid,#
 6. EntityRadius,#                (in meters)
 7. EntityRadiusR,#,#             (Entity within a range -- in meters)
 8. EntitySecurityR,#,#           (Entity within a security status range) 
 9. Entity
   - EXAMPLE: ${Entitycategory,Ship,radius,10000,SecurityR,-1.0,0]}
   

May 23, 2007 -- By Amadeus [ISXEVE-200705xx.xxxx]

  • Notes:

 1. ISXEVE will not load until you're completely logged into the game.  This also means that you cannot 'autoload' isxeve with innerspace the way 
    most extensions are done.  Instead, have innerspace run the script "LoadISXEVE" (which is included with ISXEVE) during its startup routine.
    This script will attempt to load ISXEVE every couple of seconds until it succeeds.
 2. ISXEVE will crash the game if you unload it.  Once the extension is loaded, you should have no reason to unload it, so this should not affect
    most users.

  • Added new datatype: isxeve
  • Added new TLO: ISXEVE (returns an 'isxeve' datatype object)
  • Added the following new MEMBERS to the 'isxeve' datatype:

 1. Version             (string type)
 2. IsReady             (bool type)    [Note: All scripts should check to make sure that this is true before running.
 3. IsLoading           (bool type)    returns true if the extension is currently in the authentication/patching phase of loading]

  • Added a new datatype: 'eve'
  • Added a new TLO: 'EVE' (returns an 'eve' datatype object)
  • Added the following new METHODS to the 'eve' datatype:

 1. InfoWindow[text  
   - This method creates a simple EVE popup window with the 'text' given.
 2. SetInSpaceStatustitle,text]
   - This method sets the status text that appears in space over your ship controls.

  • Added a new datatype 'character'
  • Added a new TLO "Me" (returns a 'character' datatype object)
  • Added the following new MEMBERS to the 'character' datatype:

 1. ToEntity           (entity type)

  • Added new METHODS to the 'character' datatype

 1. SetVelocity[#]     (argument is a PERCENTAGE of your max velocity!)

  • Added a new datatype 'entity'.
  • Added a new TLO: "Entity" ("Overhead" will also work, they both function exactly the same)

 - NOTE: This TLO (obviously) only works while you're in space.
 - Below is a list of possible search parameters.  Please note that they can be combined within the same search. 
 (ie, there is no limit to the number of arguments on this TLO.)
 1. Entity[type,
 2. Entitygroup,
 3. Entitycategory,
 4. Entityid,#
 5. Entitynotid,#
 6. EntityRadius,#                (in meters)
 7. EntityRadiusR,#,#             (Entity within a range -- in meters)
 8. EntitySecurityR,#,#           (Entity within a security status range) 
 9. Entity
   - EXAMPLE: ${Entitycategory,categoryShip,radius,10000,SecurityR,-1.0,0]}

  • Added the following new MEMBERS to the 'entity' datatype:

 1.  ID                  (int type)
 2.  Name                (string type)
 3.  IsCloaked           (bool type)
 4.  IsInteractive       (bool type)
 5.  IsMassive           (bool type)
 6.  IsGlobal            (bool type)
 7.  IsMoribund          (bool type)
 8.  MaxVelocity         (double type)
 9.  Security            (double type)
 10. Type                (string type)        [If the type is 'unknown' it will return an integer (as a string) instead
 11. Mode                (int type)            2 = stopped, 3 = in warp]
 12. Category            (string type)
 13. Group               (string type)
 14. AllianceID          (int type)
 15. CorporationID       (int type)
 16. FormationID         (int type)
 17. WreckID             (int type)
 18. X                   (double type)
 19. Y                   (double type)
 20. Z                   (double type)
 21. Location            (point3f type)
 22. vX                  (double type)
 23. vY                  (double type)
 24. vZ                  (double type)
 25. vLocation           (point3f type)
 26. gotoX               (double type)
 27. gotoY               (double type)
 28. gotoZ               (double type)
 29. gotoLocation        (point3f type)
 30. Pitch               (double type)
 31. Roll                (double type)
 32. Yaw                 (double type)
 33. Distance            (float type)
 34. FollowRange         (double type)
 35. Mass                (double type)
 36. Radius              (double type)  
 37. Approaching         (entity type)     
 38. Following           (entity type)
 39. IsWarpScrambled     (bool type)

  • Added the following new METHODS to the 'entity' datatype:

 1. WarpTo[distance         {Distance is in meters.  If no distance is given, zero distance will be used.}
 2. LockTarget
 3. UnlockTarget
 4. Approachdistance       {Distance is in meters.  If no distance is given, ISXEVE uses a default of 50.}
 5. KeepAtRangedistance    {Distance is in meters.  If no distance is given, ISXEVE uses a default of 1000.}
 6. Orbitdistance]          {Distance is in meters.  If no distance is given, ISXEVE uses a default of 5000.}

Add picture from clipboard (Maximum size: 95.4 GB)