You are viewing a potentially older version of this package. View all versions.
Blep73-GTFOAutoTranslator-0.3.0 icon

GTFOAutoTranslator

Client-side GTFO mod that automatically translates TextMeshPro UI from other mods using a LibreTranslate-compatible translation server.

By Blep73
Date uploaded 2 weeks ago
Version 0.3.0
Download link Blep73-GTFOAutoTranslator-0.3.0.zip
Downloads 9
Dependency string Blep73-GTFOAutoTranslator-0.3.0

This mod requires the following mods to function

BepInEx-BepInExPack_GTFO-3.2.3 icon
BepInEx-BepInExPack_GTFO

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

Preferred version: 3.2.3

README

GTFO Auto Translator

Automatically translates TextMeshPro UI text from GTFO mods at runtime.

Features

  • Translates non-English mod UI into English by default.
  • Persistent translation cache across game launches.
  • F8 enable/disable toggle by default.
  • Small in-game status indicator.
  • Include/exclude filters based on Unity hierarchy names.
  • Safer optional handling for ASCII-only languages such as French, Spanish, and German.
  • Preserves common TextMeshPro rich-text tags.
  • Request deduplication and rate limiting.

Requirements

  • GTFO
  • BepInExPack_GTFO 3.2.3 or newer compatible release
  • A LibreTranslate-compatible /translate endpoint

The default endpoint is:

http://localhost:5000/translate

A local/self-hosted translation server is recommended.

Installation

Mod manager

Install through Thunderstore Mod Manager or r2modman after this package is published.

Manual

Copy GTFOAutoTranslator.dll into:

GTFO/BepInEx/plugins/GTFOAutoTranslator/

Start GTFO once. The configuration file will be generated under:

GTFO/BepInEx/config/kai.gtfo.autotranslator.cfg

Default controls

F8 - toggle translation on/off

Recommended configuration

[General]
Enabled = true
ToggleKey = F8
ShowStatusIndicator = true
StatusIndicatorSeconds = 3
TargetLanguage = en
ScanIntervalSeconds = 0.4
MinimumTextLength = 2

[Detection]
TranslateAsciiOnlyText = false
PreserveRichTextTags = true

[Filtering]
OnlyTranslateMatchingHierarchy = false
RequireHierarchyMatchForAsciiOnly = true
HierarchyIncludePatterns =
HierarchyExcludePatterns =

[Cache]
PersistentCache = true
CacheSaveIntervalSeconds = 5

[LibreTranslate]
Endpoint = http://localhost:5000/translate
ApiKey =
MaxRequestsPerMinute = 60

[Debug]
LogTranslations = false

Translating ASCII-only languages

For languages whose text may use only A-Z characters, enable ASCII translation and restrict it to the target mod UI:

TranslateAsciiOnlyText = true
RequireHierarchyMatchForAsciiOnly = true
HierarchyIncludePatterns = NameOfTheMod;NameOfItsMenu

This helps avoid sending normal GTFO English UI to the translation server.

Persistent cache

Successful translations are stored in the BepInEx config folder, for example:

BepInEx/config/GTFOAutoTranslator.cache.en.json

Limitations

  • Unity does not expose a universal flag identifying which mod owns a TextMeshPro label, so optional filtering uses hierarchy names.
  • Text baked into images or textures cannot be translated.
  • The active font must contain glyphs for the target language.
  • Translation quality depends on the configured translation backend.

CHANGELOG

Changelog

0.3.0

  • Added persistent translation caching.

  • Added F8 runtime enable/disable toggle.

  • Added in-game translation status indicator.

  • Added hierarchy include/exclude filtering.

  • Added safer handling for ASCII-only source languages.

  • Retained rich-text protection, request deduplication, and rate limiting.

  • Fixed GTFO TextMeshPro namespace compatibility (TMPro.TMP_Text).