Skip to content

1.1.0

Choose a tag to compare

@Klausiiiii Klausiiiii released this 10 Jul 19:12
· 14 commits to main since this release

What's new in 1.1.0

Features

  • Reply to chat from the app — click a message in the feed, type a reply, and it's translated back into the sender's language and written to a cs2_translator_reply.cfg that CS2 executes via a keybind (bind F8 "exec cs2_translator_reply"). No memory access or input injection — just a cfg file the game runs itself.
  • Incremental chat rendering in both the WinForms and Avalonia feeds — messages and their translations update in place instead of rebuilding the whole feed, so no flicker and far fewer allocations.

Performance & reliability hardening

  • TranslationService — single-flight coalescing of concurrent identical lookups, a bounded FIFO result cache, a 30 s negative cache for failing phrases, and a 256-char length guard, all to avoid hammering the keyless Google Translate endpoint.
  • ConsoleLogTailer — stateful UTF-8 decoding (no more garbled characters when a codepoint is split across a read boundary), a 64 KiB partial-line cap to prevent unbounded growth on a newline-free stream, and a race-free shutdown.
  • ConfigStore — atomic config writes and retry-on-transient-IO, so a momentary file lock (AV, indexer, another instance) never resets your settings to defaults.

Downloads

  • Windows — CS2ChatTranslator.exe, self-contained, no .NET install needed.
  • Linux — CS2ChatTranslator.Avalonia, self-contained; run chmod +x CS2ChatTranslator.Avalonia after download.

Unsigned single-file builds are routinely flagged by SmartScreen/Defender — that's expected for this kind of binary.