Русский язык для TCG Card Shop Simulator: интерфейс, товары, карты, отзывы покупателей. Без мод-лоадеров — в настройках игры просто появляется язык «Русский».
- Скачайте
tcg-ru-installer.exeиз последнего релиза. - Закройте игру и запустите установщик. Он сам найдёт игру в Steam (если не найдёт — укажите папку игры кнопкой «Обзор…») — нажмите «Установить». Займёт около минуты.
- Запустите игру: Settings → Language → «Русский».
Готово.
Windows может показать «Windows защитила ваш компьютер» — у установщика нет платной цифровой подписи. Нажмите «Подробнее» → «Выполнить в любом случае».
Удалить перевод — запустите установщик ещё раз и нажмите «Удалить».
Игра обновилась, и перевод пропал — это нормально: Steam перезаписывает файлы игры. Запустите установщик снова. Если вышла новая версия игры, сначала проверьте, нет ли свежего релиза перевода.
Что-то сломалось — нажмите «Удалить» в установщике или проверьте целостность файлов в Steam (Свойства → Установленные файлы → Проверить целостность).
Нашли ошибку в переводе — напишите в issues на GitHub или в комментариях к руководству в Steam. Укажите, где встретилась строка (экран, меню, товар), как она выглядит сейчас и как, по-вашему, правильно. Скриншот очень поможет.
Нужно ~1.6 ГБ свободного места (бэкап оригинальных файлов лежит рядом с ними). Часть реплик покупателей останется на английском — они зашиты в код игры.
Русский добавляется 11-й колонкой в таблицу локализации игры (I2 Localization) внутри
resources.assets. Меню языков в игре — фиксированный набор кнопок, поэтому
дополнительно патчатся сцены level1 и level2 для настроек.
Итого подменяются три файла, у каждого рядом лежит бэкап *.orig-backup.
В игре 1.04 удалён RussianOutline. Сборка добавляет в resources.assets две
копии шрифта Fredoka с исправленной цепочкой подстановки: кириллица берётся из
встроенного динамического Liberation Sans до частичных кириллических наборов
азиатских шрифтов. Латинские глифы и материалы сохраняются. Сцены ссылаются
на эти копии; sharedassets* и DLL не изменяются.
Для Linux/Steam Deck или если хочется собрать самому. Нужен Python 3.9+ (python.org/downloads, при установке отметьте «Add Python to PATH») и ~1.6 ГБ свободного места.
Положите папку tcg-ru внутрь папки с игрой — рядом с Card Shop Simulator.exe:
TCG Card Shop Simulator/
├── Card Shop Simulator.exe
├── Card Shop Simulator_Data/
└── tcg-ru/ <- сюда
Откройте терминал в папке tcg-ru:
pip install -r requirements.txt
python tools/build_translation.py
python tools/install.pyinstall.py спросит подтверждение, сделает бэкапы оригиналов и подменит
resources.assets, level1, level2. Если игра лежит в другом месте:
python tools/build_translation.py --game "D:/Games/Steam/steamapps/common/TCG Card Shop Simulator"Прочие команды:
python tools/install.py --status # что установлено, есть ли бэкапы и сборка
python tools/install.py --restore # вернуть оригинальные файлы из бэкаповПосле обновления игры Steam перезапишет файлы — пересоберите и поставьте заново:
python tools/build_translation.py && python tools/install.py. Сборка берёт за основу
бэкап оригинала, если он есть, поэтому переводы не наслаиваются. Учтите: после апдейта
бэкап устаревает — удалите *.orig-backup перед сборкой (релизный установщик
обновляет бэкапы сам).
Переводится один файл — translation/ru.json:
[
{ "key": "Buy buy buy!!", "en": "Buy buy buy!!", "ru": "" }
]Заполняйте поле ru. Термины с пустым ru показываются на английском, поэтому
перевод можно ставить в игру на любой стадии готовности. После правок — пересобрать и установить.
Сводка по строкам лежит в strings/:
| Файл | Что внутри |
|---|---|
00_stats.json |
сводка по количествам |
01_i2_localization_full.json |
вся таблица I2: 2573 термина со всеми официальными переводами |
01_i2_translate_ru.csv |
то же в CSV, если удобнее таблицей |
02_game_data_strings.json |
текст из ScriptableObject'ов: карты, полки, товары, эффекты |
03_ui_text_static.json |
надписи, которых нет в таблице I2 |
04_i2_term_usage.json |
где в игре используется каждый термин — помогает с контекстом |
05_all_asset_strings.csv |
полный дамп: 68 887 строковых полей |
06_code_strings.json |
строки, зашитые в код (реплики покупателей и т.п.) |
Перед отправкой проверьте, что плейсхолдеры (XXX, YYY, ZZZ), теги <nobr> и
хвостовые пробелы на месте:
python tools/check_translation.pyПроверки совместимости с установленной игрой (файлы игры не изменяются):
python tools/build_translation.py --selftest
python tools/build_translation.py
python -m unittest discover -s tests -vНа Unity 6 сборка сохраняет исходное выравнивание объектов по 16 байтам,
чтобы selftest подтверждал побайтовое совпадение объекта и всего контейнера.
Интеграционные тесты проверяют установку, повторную установку и удаление на копии.
Дампы в strings/ относятся к прежней версии игры и служат справочным материалом.
Нужно только если игра обновилась:
pip install UnityPy TypeTreeGeneratorAPI
python tools/extract_code.py "../Card Shop Simulator_Data/Managed" strings/raw
python tools/extract_all.py && python tools/build_outputs.pyTypeTreeGeneratorAPI требует установленного .NET 6+ runtime.
Реплики покупателей, зашитые прямо в Assembly-CSharp.dll (~554 строки, см.
strings/06_code_strings.json) — они идут мимо таблицы локализации и требуют правки кода.
Не входят в этот русификатор.