BashTerm

v0.2.1·Updated 2025-02-09

Improving the GTFO Terminal

About this mod Author’s original text

BashTerm

An Improved GTFO Terminal

GitLab (Source) | GitHub (Mirror, Public Issues) | (Release)

e.g. Type P AMMO 69 instead of PING AMMOPACK_69

Issues / Suggestions

Please open issues (for suggestions, bugs, etc.) on the GitHub repo as the GitLab repository is not open for public contributions, thank you!!

Table of Contents

[TOC]

Aliases / Expansions

Command Aliases

Several shorthand aliases of commands are added to make common operations faster. Some UNIX-equivalent commands are also mapped.

| Alias | GTFO Command |

| --------------------------- | ------------------ |

| LS / L | LIST |

| LSU / LU | LIST U |

| CAT | READ |

| UC | UPLINK_CONNECT |

| RS / START | REACTOR_STARTUP |

| RSD / SHUT / SHUTDOWN | REACTOR_SHUTDOWN |

| UV[^1] | UPLINK_VERIFY |

| RV[^1] | REACTOR_VERIFY |

| P | PING |

| Q | QUERY |

| CLEAR | CLS |

Zone Identifier Expansion

Specifically, the LSU alias expands the number argument to a zone identifier if applicable (it should only take one argument).

Expansion on 49

LSU 49 ==> LSU E_49 ==> LIST U E_49

No expansion

LSU AM ==> LIST U AM

i.e. LSU 49 would be interpreted as LSU E_49 = LIST U E_49 (LIST RESOURCE ZONE_49)

This function can also be turned on for LIST itself in the config, expanding the first number argument encountered.

Item Name Expansion / Concatenation

Let's be honest, typing _ is not the most convenient thing in the world, so let's not do that.

Instead of entering something like PING AMMOPACK_594, BashTerm allows you to type PING AMMO 594 instead.

This is achieved through two mechanism:

  • Concatenation
  • Name Expansion

You might be thinking, "I don't freaking care how it works!", but understanding how BashTerm works will allow you to better utilize it.

Concatenation

Concatenation allows you to not have to type the underscore _ ever[^3] when using PING and QUERY.

For example:

  • PING AMMOPACK 594 becomes PING AMMOPACK_594
  • PING KEY BLACK 113 becomes PING KEY_BLACK_113

Name Expansion

COMMAND ARGUMENT_1 ARGUMENT_2...

Many objects (e.g. resources, objective items, etc.) have expansions defined in BashTerm. These expansions work on the first argument (ARGUMENT_1) when using the commands PING and QUERY.

Take the earlier example PING AMMO 594 again. After execution, AMMO is translated to AMMOPACK, then concatenation is performed to get PING AMMOPACK_594.

GTFO only allows these two commands to be accompanied with one argument: the item of interest (unless you consider the -T option), so we automatically consider expansion when you enter more than one argument. (calling PING or QUERY with only one argument, however, will not trigger expansion).

The following table lists all default expansion identifiers (note that "WORD+" means any word starting with WORD, aka prefix matching):

| Identifier | Expansion |

| --------------- | ---------------------- |

| MED+ | MEDIPACK |

| TO+ | TOOL_REFILL |

| AM+ | AMMOPACK |

| DIS+ | DISINFECT_PACK |

| TURB+ | FOG_TURBINE |

| NHSU | NEONATE_HSU |

| BK+ / BULK+ | BULKHEAD_KEY |

| BD+ | BULKHEAD_DC |

| HIS+ | HISEC_CARGO |

| LOCK+ | LOCKER |

| SEC+ / SD+ | SEC_DOOR |

| NFR+ | NFRAME |

| GEN+ | GENERATOR |

| DISS | DISINFECTION_STATION |

Customizing Aliases / Expansions

General Syntax

Command aliases and object expansions can be customized by editing their respective fields in the configuration. The config follows a specific format:

It is worth noting that aliases and expansions are essentially the same thing because they work the same way. The only difference between them in BashTerm is the argument(s) they apply to. "Aliases" only apply to commands, while "Object Expansions" apply to the arguments of commands

Custom Command Aliases

COMMAND, ALIAS1, ALIAS2: COMMAND2, CMD2_ALIAS1, CMD2_ALIAS2

Custom Object Name Expansions

EXPANSION, SHORTHAND1, SHORTHAND2

Alias and expansion customization follow the same format, as shown above. Different groups are separated by a colon:, and terms within a group are separated by commas,. All de

Install & use Install: follow the bundled instructions

  1. Unzip the archive from playbuff and read the bundled readme / instructions first.
  2. Most mods rely on the game's mod loader — the usual route is a community mod manager (such as r2modman): pick this game, install, and it handles the loader and dependencies.
  3. For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
  4. Launch the game to confirm it loaded; mods with listed dependencies need those installed as well.

Install locations vary a lot between mods — the bundled readme is the most reliable guide.

Dependencies

Install these first, or the mod will not work:

BepInEx-BepInExPack_GTFO

File & checksum

Filename
BashTerm-0.2.1.zip
File size
75.5 KiB