# Chat Translator [English](README.md) | **Русский** Мод для NeoForge (Minecraft **1.21.1**), который автоматически переводит чат так, чтобы каждый игрок видел сообщения на своём языке. Использует [LibreTranslate](https://libretranslate.com). ## Возможности - Перевод для каждого игрока: каждый получатель видит сообщение на своём языке - Поддержка ванильных клиентов: они просто видят оригинальный текст (для перевода нужен мод и на клиенте) - Язык игрока: из локали клиента с модом, из настроек ванильного клиента или автодетект текста сообщения (`/detect`) - GUI настроек в игре (клавиша по умолчанию не назначена) - Кеш переводов с настраиваемым временем жизни - Опциональный показ оригинала под переводом ## Требования | Сторона | Нужен мод | Результат | |---------|-----------|-----------| | Сервер + Клиент | да | Полный перевод | | Только сервер | сервер | Игроки видят оригинал | | Только клиент | клиент | Ничего не делает | - Minecraft 1.21.1 - NeoForge 21.1.x - Доступный инстанс LibreTranslate ## Установка 1. Положите `chattranslator-x.y.z.jar` в папку `mods/` **на сервере и/или клиенте**. 2. Убедитесь, что доступен LibreTranslate (см. ниже). 3. На сервере отредактируйте `config/chattranslator-server.toml`: ```toml [server] enabled = true libretranslate_url = "http://localhost:5000" api_key = "" show_original = true autodetect_language = false cache_minutes = 30 request_timeout_ms = 5000 ``` ### Запуск LibreTranslate Локально через Docker: ```bash docker run -p 5000:5000 libretranslate/libretranslate ``` `https://libretranslate.com` тоже подходит, но требует API-ключ. ## Использование Откройте GUI настроек назначенной клавишей (**Настройки → Управление → Клавиши → Chat Translator**). Там можно выбрать свой язык, проверить соединение с LibreTranslate и включить/выключить показ оригинала. > Примечание: GUI меняет *серверный* конфиг, поэтому реально работает только в одиночной игре. На выделенном сервере используйте конфиг-файл или команды ниже. ### Команды (для операторов) | Команда | Описание | |---------|----------| | `/chattranslate status` | Статус и текущий URL | | `/chattranslate enable` / `disable` | Включить / выключить перевод глобально | | `/chattranslate seturl ` | Задать адрес LibreTranslate | | `/chattranslate setkey ` | Задать API-ключ | | `/chattranslate showoriginal ` | Показывать оригинал под переводом | | `/chattranslate clearcache` | Очистить кеш переводов | ## Сборка из исходников ```bash gradlew build ``` Готовый jar появится в `build/libs/chattranslator-1.0.0.jar`. ## Лицензия [MIT](LICENSE)