Compatibility
Mother OS is designed to be compatible with other scripts and most ingame systems. This page outlines several considerations for players and script developers to maximize compatibility.
Running other Scripts with Mother OS
Mother OS is designed to be compatible with other scripts. However, some scripts may not work as expected due to the way they are designed to accept arguments. If you are developing your own script, it is recommend that you accept the Script update type in your Main method. This allows programmable blocks scripts to run commands on other programmable blocks.
Example main function that accepts the Script update type:
public void Main(string argument, UpdateType updateSource)
{
if (updateSource == UpdateType.Script)
{
// Run based on a trigger from another programmable block script.
}
}
Tips
Check out the documentation for UpdateTypes for more information.
3rd Party Scripts
Easy Automation v2.0
It has been reported that Mother is only able to communicate with Easy Automation via the pb/run command when a short delays is introduced. Luckily, we can solve this with a little hack - wait 0 only waits one cycle so you'll hardly notice.
[commands]
EasyAutomationTest=
; Follow the Easy Automation Tutorial
| wait 0;
| pb/run EasyAutomationProgrammableBlock "Tutorial LCD(My Block)"
Quote Check!
Don't forget to wrap your outbound argument in double quotes "if it contains spaces".
Credit to CyberChoom for cracking this one!
Known Issues
1. Multiple Mother OS Instances
You should NOT run multiple instances of Mother OS on your grid. This will lead to duplicated event monitoring and the programmable blocks will compete to render your LCD displays. Mother OS should only be installed once per ship/station construct.
