Mother DocsMother Docs
Buy me a Coffee
Steam Workshop
Discord
  • Mother OS (Ingame Script)
Buy me a Coffee
Steam Workshop
Discord
  • Mother OS (Ingame Script)
  • Mother OS (Ingame Script)
    • Getting Started

      • Upgrade Guide
      • Installation
      • Command Line Interface (CLI)
      • Configuration
      • Modules
    • Core Modules

      • Activity Monitor
      • Almanac
      • Block Catalogue
      • Local Storage
      • Intergrid Message Service
    • Extension Modules

      • Air Vent Module
      • Battery Module
      • Terminal Block Module
      • Cockpit Module
      • Connector Module
      • Display Module
      • Docking Module
      • Door Module
      • Flight Control Module
      • Flight Planning Module
      • Gas Tank Module
      • Gyroscope Module
      • Hinge Module
      • Landing Gear Module
      • Light Module
      • Map Module
      • Piston Module
      • Programmable Block Module
      • Rotor Module
      • Screen Module
      • Sensor Module
      • Sorter Module
      • Sound Block Module
      • Thruster Module
      • Timer Block Module
    • Command Cheatsheet
    • Compatibility
    • Examples
  • Mother Core (Script Framework)
    • Getting Started

      • Upgrade Guide
      • Installation
      • Architecture Overview
      • Managing Script Size & Complexity
    • Building A Module
    • Console (CLI)
    • Core Modules
      • Activity Monitor
      • Almanac
      • Block Catalogue
      • Clock
      • Command Bus
      • Configuration
      • Event Bus
      • Intergrid Message Service
      • Local Storage
      • Terminal
    • Utilities

      • Color Helper
      • Security
      • Serializer
  • Powered By Mother

Terminal

  • Printing to the Terminal
  • Highlighting a Value
  • Clearing the Terminal

The terminal module manages the terminal interface for the programmable block.

Printing to the Terminal

Once Mother has booted, you can use the Print() method to print values to the terminal stack. This is useful for debugging or displaying information to the user.

MissileGuidanceModule.cs
public override void Launch()
{
    Terminal terminal = Mother.GetModule<Terminal>();
    
    // Print a value to the terminal
    terminal.Print($"Launching missile...");

    // or simply use to method on Mother
    Mother.Print($"Launching missile...")
}

In situations where we have a lot of text to print, we can use an optional second parameter to disable trimming.

MissileGuidanceModule.cs
MissileState currentState = MissileState.Idle;

public override void Launch()
{
    // Print a long message without trimming
    Mother.Print(
        $"Missile launching in 10 seconds.\nCurrent state: {currentState}", 
        false
    );
}

Highlighting a Value

Sometimes it is convenient to always show a value of the terminal screen rather than have it disappear within the call stack. You can use the Highlight() method to pin a printout to the top of the terminal window.

MissileGuidanceModule.cs
MissileState currentState = MissileState.Idle;

public override void Run()
{
    Terminal terminal = Mother.GetModule<Terminal>();
    
    // Highlight a value continuously
    terminal.Highlight($"State: {currentState}");
}

Clearing the Terminal

If you want to clear the terminal stack, you can use the Clear() method. This will remove all printed values from the terminal.

Mother.GetModule<Terminal>().Clear();
Last Updated: 8/8/25, 10:08 PM
Contributors: lukejamesmorrison
Prev
Local Storage