# RemoteTech¶

RemoteTech is a modification for Squad’s “Kerbal Space Program” (KSP) which overhauls the unmanned space program. It does this by requiring unmanned vessels have a connection to Kerbal Space Center (KSC) to be able to be controlled. This adds a new layer of difficulty that compensates for the lack of live crew members.

You can find out if the RemoteTech addon is available in the current game installation by usng the boolean expression addons:available("RT").

## Interaction with kOS¶

Note

When you have RemoteTech installed you can only interact with the core’s terminal when you have a connection to KSC on any unmanned craft. Scripts launched when you still had a connection will continue to execute even if your unmanned craft loses connection to KSC. But you should note, that when there is no connection to KSC the archive volume is inaccessible. This will require you to plan ahead and copy necessary scripts for your mission to probe hard disk, if your kerbals and/or other scripts need to use them while not connected.

If you launch a manned craft while using RemoteTech, you are still able to input commands from the terminal even if you do not have a connection to the KSC. The archive will still be inaccessible without a connection to the KSC. Under the current implementation, there is no delay when accessing the archive with a local terminal. This implementation may change in the future to account for delays in reading and writing data over the connection.

### Remote Tech and the kOS GUI widgets¶

New in version v1.1.0.

The kOS GUI widget system tries to obey the signal delay imposed by RemoteTech, when Remote Tech is installed. A user’s interaction with GUI widgets on the screen will be subject to the same signal delay rules as the interactive flying controls of the ship.

### Antennas¶

It is possible to activate/deactivate RT antennas, as well as set their targets using kOS:

SET P TO SHIP:PARTSNAMED("mediumDishAntenna")[0].
SET M to p:GETMODULE("ModuleRTAntenna").
M:DOEVENT("activate").
M:SETFIELD("target", "Mission Control").
M:SETFIELD("target", mun).
M:SETFIELD("target", somevessel).
M:SETFIELD("target", "minmus").


Acceptable values for “target” are:

• “no-target”
• “active-vessel”
• a Body
• a Vessel
• a string containing the name of a body or vessel
• a string containing the name of a ground station (case-sensitive)

You can use RTADDON:GROUNDSTATIONS to get a list of all ground stations. The default ground station is called “Mission Control”.

### Communication¶

When installed RemoteTech will influence communication between vessels. In order to send a message to another vessel a valid RemoteTech connection will have to exist between them and of course messages will arrive to their destination with a proper delay. Documentation of Connection class contains further information on how RemoteTech will change the behaviour of some of its suffixes.

structure RTAddon
Suffix Type Description
AVAILABLE Boolean (readonly) True if RT is installed and RT integration enabled. It is better to use addons:available("IR") for this.
DELAY(vessel) Scalar Get shortest possible delay to given Vessel
KSCDELAY(vessel) Boolean Get delay from KSC to given Vessel
ANTENNAHASCONNECTION(part) Boolean True if given Part has any connection
HASCONNECTION(vessel) Boolean True if given Vessel has any connection
HASKSCCONNECTION(vessel) Boolean True if given Vessel has connection to KSC
HASLOCALCONTROL(vessel) Boolean True if given Vessel has local control
GROUNDSTATIONS() List of String Get names of all ground stations
RTADDON:AVAILABLE
Type: Boolean Get only

True if RT is installed and RT integration enabled.

It is better to use ADDONS:AVAILABLE("RT") first to discover if RemoteTech is installed.

RTAddon:DELAY(vessel)
Parameters: vessel – Vessel (Scalar) seconds

Returns shortest possible delay for vessel (Will be less than KSC delay if you have a local command post).

RTAddon:KSCDELAY(vessel)
Parameters: vessel – Vessel (Scalar) seconds

Returns delay in seconds from KSC to vessel.

RTAddon:ANTENNAHASCONNECTION(part)
Parameters: part – Part Boolean

Returns True if part has any connection (including to local command posts).

RTAddon:HASCONNECTION(vessel)
Parameters: vessel – Vessel Boolean

Returns True if vessel has any connection (including to local command posts).

RTAddon:HASKSCCONNECTION(vessel)
Parameters: vessel – Vessel Boolean

Returns True if vessel has connection to KSC.

RTAddon:HASLOCALCONTROL(vessel)
Parameters: vessel – Vessel Boolean

Returns True if vessel has local control (and thus not requiring a RemoteTech connection).

RTAddon:GROUNDSTATIONS()
Returns: List of String

Returns names of all RT ground stations