Skip to content

LockBB1/Wand-RU-Patcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

128 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wand RU Patcher

Wand RU Patcher (WRP)

Русификатор приложения Wand для пользователей из СНГ.

Установка в один клик: находит Wand, добавляет русский язык и включает его. Полностью локально, без интернета.

Звёзды Версия Игр и карт в точных словарях


Warning

.exe собирается из этого репозитория: Fork → Actions → Build (Шаг 1) или локально. Не скачивайте .exe из описаний YouTube, зеркал и Discord-вложений - там встречаются вирусы под именем проекта.

🇷🇺 Что делает

  • 🔎 Автопоиск Wand - сам находит установленную копию (или указывайте папку вручную).
  • 🈴 Полная русификация - переводит интерфейс Wand на русский (2273 строки) и добавляет Русский в выбор языка.
  • 🎮 Перевод читов - названия читов (Unlimited HealthБесконечное здоровье) переводятся на лету, в онлайн-режиме - и описания/заметки читов. Настраивается при установке - см. ниже.
  • 🗺️ Перевод игровых карт - интерактивные карты Wand (RDR2, Cyberpunk 2077 и др.) переводятся прямо в приложении: интерфейс, фильтры, диалоги и описания точек. Работает офлайн (встроенный словарь + шаблоны фильтров), онлайн-добор описаний - опционально.
  • ↩️ Откаты - перед патчем делает бэкап, откат в один клик.
  • ⚙️ Настройки - закрепление версии Wand (патчить старую, пока WRP не поддержал новую), авто-перезапуск, показ/экспорт лога, режим перевода читов, кэш.
  • 🔔 Уведомление об обновлениях - при выходе новой версии WRP в шапке появляется баннер; клик открывает страницу релиза на GitHub. Авто-обновления нет - вы сами решаете, что ставить.

🎮 Что будем русифицировать: выбор при установке

Кнопка «Русифицировать» открывает окно «Что будем русифицировать?» - отметьте нужное:

  • Локальный перевод (из словарей) (по умолчанию, полностью офлайн) - имена читов встроенным словарём + морфологическими шаблонами (род, падежи, склейка составных имён). Без интернета. На реальных трейнерах 62 игр: ~51% имён с верной грамматикой (в геймерских жанрах выше — гонки 85%, экшн 68%, космос 65%, выживание 59%, шутеры 55%). Остаток - жаргон отдельных игр.

    💯 Плюс точные словари для отдельных игр (WAND_RU/renderer/games/) - у этих игр переведены все имена читов вручную, офлайн. Сейчас покрыто 48 игр (Cyberpunk 2077, Crusader Kings III, Kingdom Come: Deliverance II, Nioh 3, Death Stranding 2, Atomic Heart, Anno 1800, Sekiro и др.), список растёт по запросам - открывайте issue или жмите ♥ в самом установщике.

  • Перевод читов через интернет - допереводит всё непокрытое словарём + описания и заметки читов, кэширует. Бесплатно, без ключей: Google Translate, при сбое - MyMemory; при недоступности обоих - офлайн-фолбэк (останется на английском, переведётся в следующий раз). Кэш виден/чистится в настройках.
  • Локальный перевод карт (по умолчанию, офлайн) - интерфейс, фильтры и диалоги интерактивных карт Wand переводятся мгновенно встроенным словарём + шаблонами фильтров.
  • Перевод карт через интернет (опционально) - описания точек интереса, что не покрыл офлайн-словарь (Google → MyMemory, throttle + бэкофф). По умолчанию выключено - офлайн и так покрывает почти весь UI.
  • Запустить Wand после установки - установщик сам закроет и снова откроет Wand.

Всё переключается в настройках. Онлайн-перевод работает внутри самого Wand - установщик держать открытым не нужно, нужен лишь запущенный Wand и интернет. После установки прямо из окна «Готово» можно запустить Wand или вернуться в меню (откат/переустановка), не перезапуская установщик.

👾 Это безопасно?

Да. Проект полностью открыт - код можно проверить. Сам установщик работает локально: правит файлы клиента Wand на вашем компьютере (app.asar) и сам никуда данные не шлёт. Оригинальные файлы сохраняются в бэкап - установку всегда можно откатить.

Единственное сетевое исключение - опциональный онлайн-перевод (галочки «через интернет» для читов и карт): если включите, Wand будет отправлять непереведённый текст в онлайн-переводчик (Google Translate, при сбое - MyMemory). По умолчанию онлайн выключен - тогда всё строго локально, без сетевых запросов.

🚀 Как пользоваться

Шаг 1. Соберите WandRuInstaller.exe

GitHub соберёт .exe в облаке, вы скачаете результат. Ставить ничего не нужно, занимает ~5 минут.

A. Через GitHub Actions (рекомендуется):

  1. Войдите в GitHub и нажмите Fork вверху этой страницы - у вас появится своя копия репозитория.
  2. В своём форке откройте вкладку Actions и нажмите зелёную кнопку I understand my workflows, go ahead and enable them (GitHub спрашивает это один раз).
  3. В списке слева выберите Build executable → справа нажмите Run workflow.
  4. В поле variant выберите, что собрать, и подтвердите Run workflow:
    • classic (по умолчанию) - работает «из коробки», ничего ставить не надо (~130 МБ);
    • small - компактный (~2.4 МБ), нужен .NET 9 Desktop Runtime;
    • both - обе сборки сразу.
  5. Через ~3-5 минут у запуска появится зелёная галочка. Откройте его и в блоке Artifacts внизу скачайте WandRuInstaller-classic (или -small).
  6. Распакуйте zip - внутри WandRuInstaller.exe.

Хотите пересобрать после выхода новой версии WRP - в своём форке нажмите Sync fork, затем снова Run workflow.

B. Собрать локально (если есть .NET 9 SDK) - см. «Сборка из исходников».

Шаг 2. Русифицируйте

  1. Запустите WandRuInstaller.exe.
  2. Установщик найдёт Wand → нажмите «Русифицировать» → в окне «Что будем русифицировать?» отметьте компоненты (читы, карты, онлайн-добор) и подтвердите.
  3. Дождитесь «Готово»«Запустить Wand» прямо из установщика.
  4. В Wand: Настройки → Язык → Русский.

Если Wand запущен - закройте его перед установкой (или включите в настройках «Перезапустить Wand после установки», тогда установщик закроет и снова откроет его сам).

Откат

Запустите установщик ещё раз и нажмите «Откатить» - вернутся оригинальные файлы Wand.

🛠️ Сборка из исходников

Требования:

Сборка:

cd WAND_RU
build.bat               :: обычная сборка
build.bat -Test         :: сборка + тесты
build.bat -Publish      :: самодостаточный .exe (~130-150 МБ, .NET внутри - ничего ставить не надо)
build.bat -PublishSmall :: компактный .exe (~2.4 МБ, нужен .NET 9 Desktop Runtime на машине)
  • -PublishWAND_RU\publish\WandRuInstaller.exe (один файл, работает у всех «из коробки»).
  • -PublishSmallWAND_RU\publish-small\WandRuInstaller.exe (~2.4 МБ, но на машине должен стоять .NET 9 Desktop Runtime).

Почему -Publish такой большой: он вшивает весь .NET-рантайм в exe. -PublishSmall рантайм не вшивает — отсюда ~2.4 МБ, но требует установленный .NET 9 Desktop Runtime. WPF нельзя обрезать (trimming), поэтому «золотой середины» между этими двумя нет.

❓ Q&A

  • Нужен ли Node.js / что-то ещё? Нет. Установщик самодостаточный, всё делает нативно.
  • Почему Windows Defender / SmartScreen ругается на мою сборку? .exe не подписан сертификатом. Нажмите «Подробнее» → «Выполнить в любом случае».
  • Отправляет ли программа куда-то данные? По умолчанию нет - всё локально. Только если вы сами включите режим «локально + интернет», Wand будет слать имена читов в онлайн-переводчик (Google/MyMemory). Сам установщик данные не шлёт никогда.
  • Нужно ли держать установщик открытым для онлайн-перевода? Нет. Хук вшивается в файлы Wand, перевод работает внутри Wand. Нужен лишь запущенный Wand и интернет.
  • Обновил Wand - русский пропал? Запустите установщик заново - он сам увидит, что патч остался в старой версии Wand, и подскажет перенести его: одно нажатие «Русифицировать».
  • Как обновить сам WRP? При выходе новой версии в шапке установщика появится баннер «Доступна v…» - клик откроет страницу релиза со списком изменений. Чтобы получить новый .exe: в своём форке нажмите Sync fork, затем Actions → Build executable → Run workflow и замените старый .exe собранным. Автоматически ничего не ставится и не качается.
  • Почему в релизах нет готового .exe? Чтобы вы запускали только то, что собрали сами из открытого кода. Сборка в облаке GitHub - 5 минут и ноль установленных программ (см. Шаг 1).
  • В моей игре читы переведены не все / коряво? Откройте issue с названием игры - добавим её в точные словари (все имена вручную, 100%).

🖼️ Скриншоты

Главный экран Готово Настройки

🧩 Как это устроено

  • Движок - нативный C# (.NET 9): распаковка app.asar через AsarSharp, наложение перевода из ru-overrides.json, регистрация локали ru-RU в JS-бандлах, обратная упаковка, бэкап/манифест.
  • Перевод читов - в app.asar вшивается renderer-скрипт (cheat-hook.js): перехватывает ответы трейнера, переводит имена читов офлайн-словарём, а в онлайн-режиме допереводит остаток (Google → MyMemory) с локальным кэшем. Словарь и движок - JS, генерируются из одного источника. Приоритет перевода: точный per-game словарь (renderer/games/<gameId>.json) → офлайн-движок → онлайн-MT.
  • UI - WPF, MVVM.

🔖 Чтобы не потерять проект

Вы собираете .exe сами - значит за каждой новой версией (новые игры, карты, исправления) вы будете возвращаться сюда, в оригинальный репозиторий: Sync forkRun workflow. Свой форк в списке репозиториев потеряется среди прочих, поэтому:

  • Star - кладёт проект в ваш список избранного. Это ваша закладка: один клик из любого места GitHub - и вы снова здесь, за свежей сборкой.
  • 🔔 Watch → Custom → Releases - GitHub сам пришлёт письмо, когда выйдет новая версия. Ничего проверять руками не нужно.

Список игр с точными словарями растёт по вашим заявкам: не переведена игра, коряво звучит чит, сломалась карта - откройте issue. Это напрямую превращается в следующий релиз.

🙏 Благодарности

Идея обхода ограничения и часть кода (asar-инструменты AsarSharp, UI-стиль) взяты из проекта Wand-Enhancer (© kitbyte, Apache-2.0). Респект ребятам за благое дело!

📜 Лицензия

См. файл LICENSE. Вендоренные компоненты из Wand-Enhancer - под Apache-2.0.


Дисклеймер: проект - сторонний инструмент для образовательных целей и локальной русификации интерфейса. Не распространяет проприетарный код и не обходит серверные проверки. Все изменения выполняются локально.

Сделано с любовью by LockBB1 ❤️ Поставьте ⭐, если WRP помог вам!

About

Русификатор для Wand

Resources

License

Contributing

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages