BetterTerminal
Improves GTFO terminals with fuzzy search, pipelines, consumable tracking, localization, history, and configurable visuals.
| Date uploaded | 5 days ago |
| Version | 1.0.0 |
| Download link | Daem0n-BetterTerminal-1.0.0.zip |
| Downloads | 23 |
| Dependency string | Daem0n-BetterTerminal-1.0.0 |
This mod requires the following mods to function
BepInEx-BepInExPack_GTFO
BepInEx pack for GTFO. Preconfigured and includes Unity Base DLLs.
Preferred version: 3.2.2README
BetterTerminal
BetterTerminal expands GTFO's computer terminals with faster search, command pipelines, item tracking, configurable visuals, localization, and an extended command history.
Development disclosure: this project was created with assistance from OpenAI Codex. Design decisions, testing, packaging, and publication remain the author's responsibility.
Main features
- Fuzzy completion for commands and terminal item identifiers.
- Common-prefix completion or interactive arrow selection for ambiguous matches.
- Configurable Levenshtein distance.
- Searchable extended command history inspired by interactive shells.
LISTandQUERYsupport for ID ranges and result limits.- Typed pipelines with filtering, sorting, limiting, querying, pinging, marking, and text processing.
- Terminal registration,
QUERY,PING, and map markers for uncollected consumables. - Runtime settings through
CONFIG; most changes apply without restarting GTFO. - JSON localization with runtime language switching and custom language files.
- Configurable neofetch-style terminal status.
- Optional sleeping-terminal image and interactive background customization.
- Optional STFO scripting support through the separate STFO package.
Installation
Mod manager
Install BetterTerminal through r2modman or Thunderstore Mod Manager. Required dependencies are installed automatically.
Manual
Install the GTFO BepInEx pack, then place BetterTerminal.dll inside:
GTFO/BepInEx/plugins/BetterTerminal/
Getting started
Use these commands in any GTFO terminal:
COMMANDS
HELP
CONFIG
NEOFETCH
IDLESCREEN
Examples:
LIST MEDIPACK 3
LIST MEDIPACK_100-500
QUERY MEDIPACK 2
LIST GLOW_STICK | WHERE ZONE 49 | TAKE 1 | PING
LIST TOOL_REFILL | SORT ID | TAKE 3 | QUERY
COMMANDS | WHERE TEXT PING
Press Up on an empty command line to open searchable history. Type to narrow results, use Up/Down to select, then press Enter.
Consumable tracking
BetterTerminal can expose supported consumables that vanilla terminals do not normally list. Only items still present in the level are tracked. Supported categories include:
- Fog repellers
- C-Foam grenades
- Lock melters
- Glow sticks
- Long-range flashlights
- I2-LP syringes
- IIx syringes
- Explosive tripmines
- C-Foam tripmines
This feature is experimental and can be disabled per category through CONFIG or BetterTerminal.cfg.
Localization
Language files are created under:
BepInEx/config/BetterTerminal/Localization/
English and Spanish are included. template.json can be copied and translated to add another language. Change language at runtime:
CONFIG LANGUAGE EN
CONFIG LANGUAGE ES
CONFIG RELOAD
Terminal appearance
BetterTerminal exports replaceable files under:
BepInEx/config/BetterTerminal/neofetch.txt
BepInEx/config/BetterTerminal/idle-screen.png
Neofetch output is configurable. Sleeping-terminal replacement and interactive background are experimental and disabled by default. Image rotation, flipping, opacity, intensity, color behavior, and terminal text color can be adjusted through CONFIG or BetterTerminal.cfg.
Multiplayer and achievements
- BetterTerminal is client-side for its interface and convenience features.
- Other players do not need it for you to use local terminal improvements.
- GTFO does not officially support mods; use a modded profile and private sessions.
- BetterTerminal does not intentionally disable Steam achievements.
- Tracking and pipeline features may expose information unavailable through vanilla terminal commands.
STFO compatibility
STFO is optional. BetterTerminal works without STFO. STFO requires BetterTerminal and declares it as a Thunderstore dependency.
Support
When reporting a problem, include:
BepInEx/LogOutput.log- BetterTerminal version
- GTFO rundown/version
- Command entered
- Relevant configuration values
- Reproduction steps
Issues and source: github.com/AlexanderMakunin/BetterTerminal
Credits
- Code and project: AlexanderMakunin
- Icon artwork: hawry
- AI-assisted development: OpenAI Codex
License
MIT License.
CHANGELOG
Changelog
1.1.3
- Register supported consumables when GTFO finishes their factory/culling
setup, instead of waiting for
LIST CONSUMABLESto refresh the registry. - Add
CONFIG CONSUMABLESINLIST ON|OFF. DefaultOFFkeeps broad native searches such asLIST Ufree from BetterTerminal consumables; explicitLIST CONSUMABLESand pipeline sources remain available. - Expire direct and piped consumable locator pings after five seconds, matching native terminal-item behavior more closely.
- Preserve persistent
MARKmap markers when a temporary ping expires.
Verification and limitations
- Debug build completed with no compiler errors or warnings.
- Factory/culling timing and five-second cleanup require in-game verification.
LIST ... | PINGstill requires exactly one resulting item. UseTAKE 1when a filter returns multiple matches.
1.1.2
saying a word was triggering thunderstore making my mod be down
- Replaced potentially moderated wording in the linked project README.
- No runtime behavior changed in this release.
Transparency
- Thunderstore reported only
Invalid submission; it did not identify the rejected word or confirm that wording caused the rejection. - This release tests that plausible cause without presenting it as proven.
1.1.1
Command history previously always loaded and rewrote history.txt. This made
old commands return after closing GTFO or restarting the computer.
- Changed history persistence to session-only by default.
- Added
CONFIG HISTORYMODE SESSION|DISKfor explicit persistence control. - Added
HISTORY CLEARto remove in-memory and saved history. - Updated autocomplete, localization, help, and documentation.
Verification and limitations
- Release build completed with no compiler errors or warnings.
- Existing
history.txtremains on disk in session mode but is not loaded.HISTORY CLEARremoves it. - Runtime deployment requires GTFO to be closed because the game locks the DLL.
1.1.0
This update focuses on making BetterTerminal easier to discover, configure, and use without replacing GTFO's native terminal behavior.
- Added guided help, documentation topics, status diagnostics, and documentation links.
- Added command and configuration autocomplete.
- Added configuration profiles, section views, validation, reset support, and text glow intensity.
- Improved token-by-token fuzzy matching, spacing recovery, pipelines, and visible command history.
- Added the interactive GitHub Pages documentation and terminal trainer.
- Improved terminal visuals, localization, consumable tracking, map markers, and runtime safeguards.
- Added
LIST CONSUMABLESand pipeline category filtering for tracked consumables. - Improved direct and piped
QUERYoutput with native details and localized consumable uses. - Changed command history to session-only storage by default. Earlier builds
always loaded and rewrote
BepInEx/config/BetterTerminal/history.txt, which made old commands return after GTFO and the computer restarted. - Added optional
CONFIG HISTORYMODE DISKpersistence andHISTORY CLEAR.
Verification and known limitations
- Release build and Thunderstore package format validated locally.
- Changes iterated using GTFO runtime logs and in-game testing.
- AI-assisted development is disclosed; AlexanderMakunin directed and tested the work.
- GTFO updates and other mods can change IL2CPP behavior, so untested combinations may still expose issues.
1.0.0
- Initial public release.
- Added fuzzy completion for commands and terminal identifiers.
- Added common-prefix and arrow-selection modes for ambiguous matches.
- Added configurable Levenshtein distance and uppercase behavior.
- Added searchable extended command history.
- Added ID ranges and result limits for
LISTandQUERY. - Added typed command pipelines with item and text sources.
- Added pipeline filtering, sorting, limiting, counting, querying, pinging, marking, and unmarking.
- Added configurable tracking, queries, pings, locators, and map markers for uncollected consumables.
- Added runtime configuration commands and configuration reload.
- Added English, Spanish, and custom JSON localization with runtime language switching.
- Added configurable neofetch-style terminal status output.
- Added optional sleeping-terminal image and interactive background customization.
- Added terminal image rotation, flipping, opacity, intensity, color mode, and text-color settings.
- Added extension APIs used by optional STFO integration.
- Added safeguards for image size, ASCII dimensions, terminal input, and generated output.