Intergrid Message Service
Grids running Mother can communication by sending messages to each other. This is useful for coordinating actions between multiple ships like docking, or sharing position data.
To send a command to another grid remotely, you must begin the command with the grid's Name, which is stored in the Almanac. Your grid's name is found in the Info tab of the terminal screen.
Caution
At this time, grid names should not contain spaces " ".

Sending a Remote Command
The simplest form of intergrid communication is to send a remote command. Mother may send a command to any other grid running Mother contained in the Almanac, and available on the antenna network. The receiving grid will execute the command as if it were entered in the local Programmable Block terminal. See the Security for more information on protecting intergrid communication from unauthorized access.
Commands not sending?
Check out troubleshooting intergrid communication. Also check your semi-colons.
Example
Imagine we have a drone and want it come directly to our position. We could pilot it remotely, but this is time consuming. Instead, we can send a command to the ship no matter where it is, and no matter where we are. When sending a command remotely, another grid will attempt to run it exactly as is. See below for when you want to run a custom command that is defined on the remote grid.
We can change the color of the landing pad lights on the Mothership:
; remotely set a flight plan on SurveyDrone grid
@Mothership light/color LandingPadLights red;
Or send it a flight plan command and start autopilot to your current position:
; remotely set a flight plan, and start autopilot on SurveyDrone grid
@SurveyDrone nav/set-flight-plan "GPS:CurrentPosition#1:211.78:-52.93:59.19:#FF75C9F1:"; fcs/start;
See the Flight Planning Module for more information on flight planning.
Note
Mother will automatically reduce all remote commands to core commands listed in the Cheatsheet. This means that all grids can run remote routines as long as they contain the same core command library. Keep Mother OS up to date to ensure you have the most recent library of core commands across your grids.
Using Communication Channels
As you add more grids to your network, you will quickly look for ways to organize them. Mother supports communication channels, which enables communication with multiple factions at once, or the isolation of grids localized to an outpost, station, or squadron.
Channels are defined in the [channels] section the Programmable Block's Custom Data. The * channel is the default public channel. You may leave a channel's value empty to indicate that the channel is unencrypted. If a channel has a value, then it is encrypted using the provided passcode.
[channels]
; Set public channel as available and unencrypted.
*=
; The private channels are encrypted if a passcode is provided.
MyFaction=Sup3rSecr3tP4ssw0rd
OtherFaction=An0therP4ssw0rd
; No passcode means no encryption on this channel.
ThirdFaction=
Important
Communication channels are new in version 0.2.14. If you are using an older version of Mother OS, then you should update to the latest version.
Caution
By default, all grids in Space Engineers can access Intergrid Communication (IGC), so ensuring that your faction's passcode is secure is important. If you are in a public server, this is the only way to ensure other factions cannot intercept messages and execute remote commands on your grid.
Should your grid receive a unencrypted message, or with an incorrect passcode, Mother will log the message, but will not respond.
Running Commands Defined on a Remote Grid
In most cases, the commands you define will only be relevant to this grid. When sending a command remotely, Mother tries to pass it in the most primitive form. Let's take a look at the PowerOff command on our SurveyDrone grid.
PowerOff;
Within the programmable block's custom data we can see that it is running a command we have defined locally.
[commands]
PowerOff=
| block/off Thrusters;
| block/off Lights;
| block/off Antenna;
We may want to call this command remotely, but the Mothership does not know what the PowerOff command is. It does not have a PowerOff command defined locally so we expect an error.
We prefix the remote command with an underscore _ indicating that the command is a custom remote command. This allows Mothership to call commands defined locally on the SurveyDrone grid.
@SurveyDrone _PowerOff
This command will call the PowerOff command stored in the SurveyDrone's Custom Data.
Warning
Failing to include an underscore _ when running a remotely defined command could result in your local grid taking action. This could be dangerous if the command is not intended for your local grid but it has a command with the same name defined.
