About TranslateSystem
Automatic chat translation for Rust servers.
Running an international Rust server should not mean players have to copy messages into external translators just to understand each other.
TranslateSystem automatically translates chat messages into each player's selected language while keeping the normal Rust chat experience. Players can use their Rust client language automatically or choose their own language, while server owners can control chat channels, translation services, preserved Rust terms, caching, message filters, permissions, and request limits.
Perfect for PvE, PvP, Vanilla+, modded, RPG/RP, international servers, or any server with players speaking different languages.
Features
- Automatically translates chat messages separately for each player's language.
- Uses the player's Rust client language automatically or allows players to select their own language.
- Supports Global, Team, Local, Clan, and Card Game chat channels.
- Enable or disable translation separately for each supported chat channel.
- Supports MyMemory, Google Cloud Translation, Microsoft Translator, Yandex Cloud, and LibreTranslate.
- MyMemory is available as the default translation service and fallback if another configured provider fails.
- BetterChat and IQChat support while keeping their chat formatting.
- Players can enable or disable translations for themselves at any time.
- Optional permission requirement for receiving translations.
- Option to translate the sender's own messages.
- Option to show the original message underneath the translated message.
- Automatic source-language detection.
- Custom language selection for individual players.
- Preserved Rust terms prevent configured words such as TC, Oil Rig, Cargo, Bradley, AK, sulfur, HQM, Workbench, monument names, and other terms from being translated.
- Built-in translation cache reuses recent translations and reduces unnecessary API requests.
- Configurable cache lifetime and maximum stored translations.
- Message filters can ignore messages without letters, very short messages, and colon emoji codes such as :heartrock:.
- Optional per-player rate limiting.
- Configurable maximum simultaneous translation requests.
- Configurable API timeout, failed-request cooldown, and rate-limit cooldown.
- Optional server console chat logging.
- Configurable command aliases.
- Player translation settings and selected languages are saved automatically.
- English and Russian plugin messages included.
Commands
/translate Shows your current translation status and available commands. /translate on Enables automatic chat translations for yourself. /translate off Disables automatic chat translations for yourself. /translate auto Uses your Rust client language for translations. /translate lang <code> Sets your translation language manually. Example: /translate lang de /translate status Shows whether translation is enabled and which language is currently being used. Command aliases are fully configurable.
Admin Command
/translate stats Shows the current translation cache size and active translation requests.
Permissions
translatesystem.use Required to use TranslateSystem commands and receive translations when the permission requirement is enabled in the configuration. translatesystem.admin Allows access to /translate stats.
Translation Services
- MyMemory
-
Works as the default translation service without requiring your own translation API key.
-
Google Cloud Translation support using your API key.
- Microsoft
-
Microsoft Translator support using a subscription key and optional resource region.
- Yandex
-
Yandex Cloud Translation support using your API key.
- LibreTranslate
-
Connect TranslateSystem to a LibreTranslate server with optional API-key support.
Example Configuration
Quote{
"Commands": [
"translate"
],
"[Chat] Require permission to receive translations": false,
"[Chat] Translate sender's own message": false,
"[Chat] Show original message under translation": false,
"[Chat] Automatically detect the message language": true,
"Chat Channels": {
"[Chat] Global": true,
"[Chat] Team": true,
"[Chat] Local (nearby players)": true,
"[Chat] Clan": true,
"[Chat] Card games": true
},
"Translation": {
"[API] Selected service (choose MyMemory, LibreTranslate, Google, Microsoft or Yandex)": "MyMemory",
"[Google] Cloud Translation API key": "",
"[Microsoft] Translator subscription key": "",
"[Microsoft] Resource region (empty for global)": "",
"[Yandex] Cloud service account API key": "",
"[LibreTranslate] Server address": "",
"[LibreTranslate] API key (if required)": "",
"[API] Request timeout (seconds)": 10.0,
"[API] Wait after a failed request (seconds)": 30.0,
"[API] Wait after rate limit (seconds)": 300.0
},
"Message Filters": {
"[Filter] Skip messages without letters": true,
"[Filter] Skip colon emoji codes such as :heartrock:": true,
"[Filter] Minimum message length (characters)": 2
},
"Cache": {
"[Cache] Reuse recent translations": true,
"[Cache] Keep translations for (minutes)": 60,
"[Cache] Maximum saved translations": 5000
},
"Requests": {
"[Requests] Maximum requests at the same time": 1
},
"Player Rate Limit": {
"[Rate Limit] Limit messages per player": false,
"[Rate Limit] Messages allowed per player": 8,
"[Rate Limit] Count messages over this period (seconds)": 10.0
},
"[Chat] Log chat to server console": false,
"[Chat] Words and Rust terms to leave untranslated": [
"TC",
"Oil Rig",
"Large Oil",
"Small Oil",
"Cargo",
"Cargo Ship",
"Bradley",
"Bradley APC",
"AK",
"AK-47",
"LR",
"L96",
"M2",
"M249",
"MP5",
"SAR",
"DB",
"Tommy",
"Thompson",
"scrap",
"sulfur",
"HQM",
"Workbench",
"Outpost",
"Bandit Camp",
"Launch Site",
"Airfield",
"Dome",
"Train Yard",
"Power Plant",
"Military Tunnels"
],
"Config Version": {
"Major": 1,
"Minor": 0,
"Patch": 0
}
}
Why Choose TranslateSystem?
Language differences can make communication difficult on Rust servers with players from different countries. TranslateSystem handles translation automatically for each player while still giving them control over whether translations are enabled and which language they want to use.
With multiple translation services, BetterChat and IQChat support, configurable chat channels, preserved Rust terms, caching, message filters, and request controls, TranslateSystem makes it easier for players speaking different languages to use the same chat.
