You are viewing a potentially older version of this package. View all versions.
Daem0n-BetterTerminal-1.1.1 icon

BetterTerminal

Improved GTFO terminal with fuzzy search, pipelines, consumable tracking, localization and searchable command history.

Date uploaded 3 days ago
Version 1.1.1
Download link Daem0n-BetterTerminal-1.1.1.zip
Downloads 0
Dependency string Daem0n-BetterTerminal-1.1.1

This mod requires the following mods to function

BepInEx-BepInExPack_GTFO-3.2.2 icon
BepInEx-BepInExPack_GTFO

BepInEx pack for GTFO. Preconfigured and includes Unity Base DLLs.

Preferred version: 3.2.2

README

BetterTerminal

BetterTerminal 1.1.1 expands GTFO's computer terminals with faster search, command pipelines, item tracking, configurable visuals, localization, guided help, and 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.

BetterTerminal is designed as a convenience layer over GTFO's native terminal, not as a replacement for its command system.

What's new in 1.1.0

  • Guided help, command topics, status diagnostics, and documentation links.
  • Command and configuration autocomplete.
  • Configuration profiles, section views, validation, reset, and text glow intensity.
  • Better token-by-token fuzzy matching, spacing recovery, pipelines, and visible history.
  • Interactive web documentation and terminal trainer.
  • Visual, localization, consumable, map-marker, and runtime-safety improvements.

See CHANGELOG.md for detailed verification notes and limitations.

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.
  • Session-only history by default. Optional disk persistence with CONFIG HISTORYMODE DISK; clear it with HISTORY CLEAR.
  • LIST and QUERY support 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
HELP BETTERTERMINAL
BETTERTERMINAL STATUS
DOCS

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

Item filters and queries

LIST keeps GTFO's native substring-filter behavior. For predictable results, prefer a complete item type instead of a single letter:

LIST GLOW_STICK
LIST MEDIPACK
LIST CONSUMABLES
LIST NATIVE | WHERE ZONE 49

LIST CONSUMABLES shows only supported consumables registered by BetterTerminal. LIST NATIVE is available as a pipeline source and excludes those added consumables.

Direct and piped queries both accept native terminal objects and supported consumables:

QUERY GLOW_STICK_001
LIST GLOW_STICK | WHERE ZONE 49 | TAKE 1 | QUERY
LIST MEDIPACK | TAKE 1 | QUERY

Consumable queries show type, current zone and area, placement state, use, and ping availability. Registration occurs while level objects initialize, so results can briefly change during level loading or host migration.

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.

Picked-up items are removed from terminal results. Dropped supported items are registered again after GTFO reports their new placement. Zone data comes from the item's current course node rather than its original spawn metadata.

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 is configurable; the experimental interactive background is 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. This is not a guarantee from GTFO or Steam.
  • 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

For consumable-list reports, also include the exact commands used and whether the result changed after waiting, changing terminal, dropping an item, or host migration. Single-letter filters such as LIST U are broad substring searches; use LIST CONSUMABLES when testing consumable registration specifically.

Issues and source: github.com/AlexanderMakunin/BetterTerminal

Detailed documentation: alexandermakunin.github.io/BetterTerminal

GTFO does not officially support mods. Game updates, IL2CPP changes, rundowns, and other mods can expose untested behavior. Local validation cannot guarantee every runtime combination.

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 CONSUMABLES to refresh the registry.
  • Add CONFIG CONSUMABLESINLIST ON|OFF. Default OFF keeps broad native searches such as LIST U free from BetterTerminal consumables; explicit LIST CONSUMABLES and pipeline sources remain available.
  • Expire direct and piped consumable locator pings after five seconds, matching native terminal-item behavior more closely.
  • Preserve persistent MARK map 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 ... | PING still requires exactly one resulting item. Use TAKE 1 when 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|DISK for explicit persistence control.
  • Added HISTORY CLEAR to 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.txt remains on disk in session mode but is not loaded. HISTORY CLEAR removes 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 CONSUMABLES and pipeline category filtering for tracked consumables.
  • Improved direct and piped QUERY output 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 DISK persistence and HISTORY 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 LIST and QUERY.
  • 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.