All guides   ·   Download DOCX

Q2PRO-X 1.6 Final by ly

Chat translation

Q2PRO-X document image

Project author: ly

Select a language, translate visible messages and copy text.

English edition • Q2PRO-X 1.6 Final by ly • November 7, 2026


Contents

The entries are links: click one to jump to that section.

Player chat translation

Opening the translator

What is translated

Automatic and manual source language

Repeated requests and status messages

Using the result

Settings

Encoding and limits

Message limits and window position

Using console categories


Player chat translation

The chat translator reads player messages currently visible in the console and displays their Russian translation in a separate window. For writing a reply in English, use /en in the console: it translates your own Russian text before you send it.

The translator does not change the Quake II network protocol and needs no game-server support. Internet access to the Q2PRO-X translation API is required.

Opening the translator

1. Open the console.

2. Press Translate at the top of the console. In gameplay it is left of the mod Frags/Rank/Time corner.

3. Or use the key chord you assigned. No chord is assigned by default.

The same button or chord closes the window. Esc closes only the translator, not the console. The title bar also has an X button.

Q2PRO-X document image

Visible chat translation with automatic language detection and original player nicknames. Russian interface shown.

What is translated

Every press of Translate takes a fresh snapshot of player messages visible in the console at that moment. Backscrolled history is respected: the visible older conversation is translated instead of newer hidden lines.

The client identifies player-authored chat before rendering. Connection, vote, kill, map-loading, diagnostic and ordinary console lines are not sent. The sender must match the live player roster.

Nicknames remain local. Only message bodies are sent to the API, then each translated result is paired with its original nickname:

master: hello, friends!

master: привет, друзья!

Standard courtesy phrases such as gl, hf, gl & hf, gg, ggs and gg wp do not consume an API request. This is an exact phrase list, not a short-message filter: meaningful short replies such as yes and now remain translatable.

Automatic and manual source language

Detect language automatically is enabled by default. The API detects the source language for the submitted batch. The target language is fixed at Russian.

When automatic detection is disabled, the source list provides English, German, French, Spanish, Italian, Portuguese, Dutch, Polish, Czech, Slovak, Hungarian, Romanian, Croatian, Slovenian, Turkish, Swedish, Norwegian, Danish and Finnish. The manual choice remains saved but inactive while automatic detection is on.

Automatic detection does not mean background translation. No request occurs until Translate is pressed.

Repeated requests and status messages

All visible messages are submitted as one ordered batch, not one paid request per line.

No data to translate — no eligible visible player chat; the API is not called.
No updates — bodies and language settings match the last successful batch; cached translations are reused without an API call.
Translating... — the same batch is already in flight; no duplicate is queued.
Translator is busy — another translation request is still active.
Translation failed — the network, API or response did not provide a complete result; the same batch can be retried.

Failed responses are not cached. Any change to visible bodies, their order or language settings creates a new batch.

Using the result

Results preserve conversation order and original nicknames. Drag with the mouse to select text. Ctrl+C copies the selection, while Ctrl+A selects all. Copy all copies the complete translated conversation.

The mouse wheel scrolls long output. Drag the title bar to move the window, use the bottom-right grip to resize it, and press F for fullscreen. Windowed position and size persist between launches. Saved geometry is clamped to the current workspace; full-screen mode preserves it.

Buttons stay sized to their labels instead of stretching with the window. While open, the translator owns mouse clicks, preventing Network God or other underlying HUD controls from opening. System shortcuts including Alt+F4 still work.

Settings

Path: Menu → Settings → Advanced Q2PRO-X → Translator Settings. The title-bar gear opens the same full settings page above the translator and returns focus to the overlay when the menu closes.

Q2PRO-X document image

Translator settings in the Russian UI. CTRL+T is a user-configured example; the factory shortcut is empty.

Automatic detection — let the API detect the source language.
Source language — manual source; active only when automatic detection is off.
Target language: Russian — shows the fixed target language.
Text and window scale — scales the whole translator UI from 0.50 to 3.00 independently of console text size.
Window opacity — background opacity from 0.20 to 1.00.
Fullscreen — use the complete console workspace.
Translator shortcut — optional chord. Press Enter, hold Ctrl, Alt or Shift when needed, then press the main key. Backspace clears it and Esc cancels capture.

The same variables and command have English and Russian console/Cvar Browser help:

cl_console_translate_auto

cl_console_translate_source

cl_console_translate_alpha

cl_console_translate_scale

cl_console_translate_fullscreen

cl_console_translate_hotkey

console_translate_toggle

Encoding and limits

ASCII and valid UTF-8 are preserved. For legacy servers or mods that send single-byte Western or Central-European encodings, manual language selection chooses a CP1250, CP1252 or CP1254 family. The classic Quake II protocol carries no encoding metadata, so automatic mode cannot perfectly identify every unusual legacy string.

Translation depends on q2pro-x.com and its upstream translation service. The game server neither performs nor receives the translation. The window never sends translated text into chat automatically; its output is for reading and copying.

Message limits and window position

Chat remains available throughout console history. Each request uses the newest 32 eligible visible messages in their original order and reports the omitted count. Hidden new lines do not replace backscrolled visible chat. Responses from an earlier connection are discarded after disconnect.

The console button follows its font, scale and transparency and uses the shared safe HUD inset for OpenTDM, OpenTDM-X and OpenFFA during gameplay.

Global cl_console_translate_x, cl_console_translate_y, cl_console_translate_w and cl_console_translate_h persist window geometry and provide RU/EN console and Cvar Browser help. Mouse dragging and resizing remain the convenient controls.

Using console categories

With categories enabled, select Player chat: only this tab permits Translate and its assigned shortcut. Other tabs, including All, cannot translate; leaving Chat closes the overlay. Off preserves the original behavior. The compact console button scales with con_scale and retains UI alpha at least 0.1 with con_alpha 0. See the Console Categories Guide.