lammOS
Reworks how the terminal commands work, changing how many of them function, and adding several new ones.
About this mod Author’s original text
What is lammOS?
lammOS is a mod that reworks how the terminal commands work, changing how many of them function, and adding several new ones.
What's Reworked
The way commands are parsed and processed by the terminal have been reworked, making using and adding new content to the terminal a smoother experience.
- This has the negative side effect of command results not being 100% similar or synced with the vanilla game or other mods, especially if the game updates or mods change or add content making any drastic changes.
- This will also cause commands added or changed by other mods to potentially be unusable with the terminal, though some will still work with minimal issues. It is possible for other mods to add their own lammOS compatible commands with an optional or required dependency if they so choose though, minimizing all potential issues.
Specifics
More specifically for modders or others that are curious, what I did is pre-patch the Terminal.OnSubmit method to conditionally do nothing if the player enters a valid lammOS command, which will then run my own mod's NewTerminal.OnSubmit method and thus executing the entered command. Otherwise, it'll run the default Terminal.OnSubmit method and check for terminal keyword matches as usual.
- lammOS also removes most of the vanilla terminal keywords temporarily when the user tries to use terminal keywords instead of lammOS commands, so that users aren't routing to moons or buying items with the terminal keywords.
I also pre-patched the Terminal.TextChanged method to run my own NewTerminal.OnTextChanged method, which is functionally similar but different so that it works better with lammOS.
- Several other Terminal methods have been patched, but are less signifigant and are only there to prevent bugs or weird visuals.
What's Changed
Commands
The >HELP command now lists all of the available commands and the arguments they take in, and giving it the name of another command as a argument will give you more information about that command.
Most commands now have shortcuts, all of which are viewable with the >SHORTCUTS command, but for some examples:
- >MOON -> >M
- >PING -> >P
- >TRANSMIT -> >T
Commands like >MOON and >BESTIARY will show even more details about the moon or entity you are curious about.
The >STORE command will hide upgrades and other decorations that have already been purchased.
The >SCAN command now shows three categories for scanned items: in the ship, inside the building, and outside, as well as what items are at these locations and their values.
- Bee hives will appear as being indoors instead of outdoors until they are picked up at least once.
The >VIEW MONITOR command has been simplified to >MONITOR, or simply >V with the command's shortcut, and the monitor now shows up instantly rather than slowly loading after entering the command.
The >SWITCH command will switch to the next radar target if entered with no arguments, as if you pushed the white button on the monitor.
The >PING and >FLASH commands will now act on the radar booster currently being viewed if entered with no arguments.
Config Options
You can disable confirmation screens for commands such as >ROUTE and >BUY by disabling the ShowCommandConfirmations config option.
You can change how many characters you must enter for the terminal to understand what you were trying to buy or view, this can be changed using the CharsToAutocomplete config option, but keep in mind that it will pick the first thing it finds that matches the first couple character(s) you enter and assume that's what you wanted.
- Setting the CharsToAutocomplete config option to a value above the character length of certain options will require you to type the full name of the option.
- You can enable the ShowMinimumChars config option to show the minimum number of characters you need to enter next to the names of things in lists, such as on the >MOONS and >STORE pages.
What's New
Commands
The >SHORTCUTS command, which will list all of
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Install these first, or the mod will not work: