Как перевести игру на TyranoBuilder / TyranoScript на английский
Переводите визуальные новеллы TyranoBuilder / TyranoScript с RuneTranslate — извлекая скрипты data/scenario/*.ks, маскируя теги KAG, переводя отображаемые имена персонажей и экспортируя играбельную сборку HTML5 или Electron.
TyranoBuilder и лежащий в основе движок TyranoScript движут большой каталог инди-японских визуальных новелл — веб-технологичная (HTML5 / JavaScript) альтернатива Kirikiri и Ren’Py, поставляемая либо как отдельные папки HTML5, либо как обёрнутые в Electron исполняемые файлы. Его сценарии используют тот же синтаксис .ks в стиле KAG, что и Kirikiri, поэтому до текста легко добраться, как только вы знаете, где он живёт. Это руководство проводит через перевод игры TyranoBuilder от начала до конца с RuneTranslate, включая часть, которую большинство инструментов пропускают: отображаемые имена персонажей.
Что вам нужно
- RuneTranslate для Windows — бесплатно, каждый движок и провайдер разблокирован.
- Игра TyranoBuilder: отдельная папка HTML5 (россыпные каталоги
data/иtyrano/) или сборка Electron (resources/app.asar, держащийtyrano/tyrano.jsиdata/scenario/*.ks). RuneTranslate определяет обе. - Целевой язык — английский, испанский, французский, немецкий, китайский и 30+ других.
- Один провайдер. Визуальные новеллы насыщены диалогами, поэтому LLM (OpenAI / Anthropic) или DeepL читаются лучше всего; бесплатный Google Translate работает из коробки.
Шаг 1: Откройте папку игры
Запустите RuneTranslate, нажмите New project и укажите его на каталог игры (или папку, содержащую .exe для сборок Electron). Определение распознаёт TyranoBuilder по его среде выполнения tyrano/ плюс скриптам data/scenario/; для сборок Electron оно читает app.asar напрямую, поэтому вы никогда ничего не распаковываете. Ваша оригинальная игра никогда не изменяется.
Шаг 2: Как извлекаются строки
RuneTranslate вытягивает переводимый текст отовсюду, где TyranoBuilder его хранит:
- Скрипты сценариев — каждый файл
data/scenario/**/*.ks, включая_preview.ksи зеркалаsystem/_*.ks, на которые полагаются зашифрованные сборки. - Интерфейс и конфиг —
tyrano/lang.jsиdata/system/Config.tjs. - Отображаемые имена персонажей — надписи говорящих, показываемые над диалогами (следующая секция).
Инлайн-теги KAG — переводы строк [r], клик-ожидания [p], разрывы страниц [改ページ], [font color=...] и теги с японскими именами — маскируются за числовыми плейсхолдерами [[U#]], прежде чем что-либо достигнет провайдера, затем восстанавливаются при экспорте, так что форматирование выживает нетронутым. Бинарные или зашифрованные файлы .ks определяются по UTF-8-сниффу и никогда не перезаписываются.
Шаг 3: Имена персонажей — специфичная для Tyrano часть
Сценарии часто обращаются к говорящему инлайн-сокращением вроде [yuki] — ID персонажа, а не отображаемый текст. RuneTranslate никогда не переписывает эти ссылки (это сломало бы поиск персонажа движком и уронило бы сцену). Вместо этого он переводит отображаемое имя и внедряет правильную запись [chara_new name=... jname=...] в data/system/chara_define.ks при экспорте. Имя, показываемое на экране, переводится; ID, который использует скрипт, остаётся нетронутым.
Шаг 4: Переведите и проверьте
Выберите провайдера и запустите. LLM (OpenAI / Anthropic) читается лучше всего для голоса персонажа; DeepL быстр и чист для повествования; бесплатный Google Translate покрывает меню. Внесите ваш состав и повторяющиеся термины в глоссарий сначала, чтобы имена отображались одинаково на каждой ветке — см. Глоссарий 101. Каждая строка попадает в редактор рядом с её источником; редактируйте инлайн (сохраняется при потере фокуса или Ctrl+Enter), используйте поиск и замену или запустите необязательный AI-доработчик для контекстно-зависимого второго прохода. Бесплатный тариф умеренно ограничен по скорости — примерно половина платной пропускной способности на AI-провайдерах — с идентичным качеством вывода.
Шаг 5: Экспортируйте играбельную сборку
Нажмите Export. Для отдельных игр HTML5 RuneTranslate записывает переведённые скрипты .ks, lang.js, конфиг и внедрённый chara_define.ks в копию игры. Для сборок Electron он переупаковывает изменённый app.asar. В любом случае вы получаете полную, играбельную копию в выбранном вами месте — запустите её, и она играется на вашем целевом языке.
Известные ограничения
- Зашифрованные файлы
.ks(определённые как не-UTF-8) остаются нетронутыми, поэтому сценарии в зашифрованной сборке не переведутся. - Текст на изображениях (логотипы, нарисованный вручную интерфейс, подписи CG) вне области машинного перевода.
- Кастомные плагины, которые строят диалоги во время выполнения, могут потребовать быстрой ручной правки в редакторе.
Почему это проще старого способа
Ручной путь означал распаковку app.asar, поиск каждого файла .ks (включая легко пропускаемые системные зеркала), перевод вокруг тегов KAG вручную, разбирательство с внедрением имён персонажей, затем переупаковку asar без его порчи. RuneTranslate складывает всю цепочку в несколько кликов, с редактором открытым, чтобы вы контролировали формулировки.
Смотрите страницу движка TyranoBuilder для полного списка функций, читайте руководство по Kirikiri про родственный движок KAG или скачайте RuneTranslate и попробуйте его на реальной игре.
Готовы попробовать RuneTranslate?
Бесплатный тариф открывает все движки и всех провайдеров перевода. Supporter ($3/mo) открывает полную скорость.
Скачать для Windows
