Как перевести игры на Godot на английский
RuneTranslate переводит игры на Godot 3.x / 4.x — открывая .pck (даже когда он встроен в .exe), декомпилируя GDScript и сцены с помощью GDRE Tools и перечисляя интерфейс и диалоги. Экспорт переупаковывает в .exe. Best-effort; проверьте, что сборка запускается.
RuneTranslate теперь переводит игры, построенные на Godot — бесплатном движке с открытым кодом, который тихо стал одним из самых популярных способов выпустить инди- или додзин-игру. Godot исторически был одним из самых трудных движков для перевода снаружи, потому что выпущенная игра на Godot — это запечатанный ящик: всё живёт в единственном архиве .pck (часто приклеенном к концу самого .exe), скрипты скомпилированы в байткод GDScript, а сцены сохранены в бинарном виде. RuneTranslate открывает этот ящик, читает текст и упаковывает ваш перевод обратно.
Это недавно добавленный движок, поэтому прежде всего: если вы указываете RuneTranslate на игру Godot, а он не определяет, не открывает или экспортированная копия не запускается, пожалуйста, скажите нам. Подробнее об этом в конце.
Что такое Godot на самом деле
Godot — бесплатный игровой движок с открытым кодом под лицензией MIT, который стал мейнстримным выбором для 2D- и 3D-инди-игр, и растущая доля японских додзин-тайтлов выходит на нём. Игры обычно пишутся на GDScript, собственном Python-подобном языке Godot, и разложены как сцены — деревья узлов, сохранённые как ресурсы. Когда игра экспортируется, всё — скрипты, сцены, изображения, звук — упаковывается в один пак-файл .pck, который лежит рядом с исполняемым файлом или, очень часто, дописан к концу самого .exe. Именно эта упаковка делает игры Godot непроницаемыми на вид.
Почему игры Godot было трудно переводить
В отличие от движка на скриптах вроде Ren’Py, выпущенная игра на Godot выставляет почти ничего в виде обычного текста:
- Всё внутри `.pck`. Нет россыпных файлов скриптов или текста для редактирования — а когда пак встроен в
.exe, нет даже видимого.pck, на который навести инструмент. - Скрипты скомпилированы. GDScript поставляется как скомпилированный байткод (
.gdc) — а в современном Godot 4 этот байткод дополнительно сжат — поэтому диалоги, запечённые в код, это не то, что можно найти grep-ом или открыть в текстовом редакторе. - Сцены бинарные. Подписи интерфейса и текст меню живут в файлах сцен, сохранённых в бинарном формате ресурсов Godot (
.scn), а не в человекочитаемом.tscn, который вы видите в редакторе. - Большинство игр не используют файл перевода. У Godot есть первоклассная система локализации (CSV /
.po→.translation), но множество игр — особенно небольшие додзин-тайтлы — никогда её не используют и просто хардкодят японский в скрипты и сцены. RuneTranslate нацелен ровно на эти захардкоженные строки (в.gd,.tscn,.tres,.cfgиproject.godot); он пока не читает таблицы локализации.csv/.po/.translation, поэтому игра, которая использует их, пока за рамками.
Что RuneTranslate делает сейчас
RuneTranslate относится к Godot как к полноценному движку и восстанавливает читаемый проект за вас. Под капотом он встраивает копию GDRE Tools (набора для реверс-инжиниринга Godot с открытым кодом) и использует её, чтобы:
- Распаковать `.pck` — отдельный,
data.pckили пак, встроенный в конец.exe(RuneTranslate определяет сигнатуру встроенного пака автоматически). - Декомпилировать скомпилированный GDScript (
.gdc→.gd), чтобы диалоги и повествование в коде снова стали читаемыми. - Конвертировать бинарные сцены (
.scn→.tscn), чтобы подписи и текст интерфейса на них можно было вытащить.
Затем он сканирует восстановленный проект и перечисляет каждую переводимую строку — диалоги скриптов и текст сцен/интерфейса — сгруппированные по файлу в редакторе, с разметкой движка, замаскированной за плейсхолдерами, чтобы провайдер её никогда не искажал. При экспорте он вставляет ваши переводы обратно в восстановленный исходник и переупаковывает играбельную копию игры (подробнее о том, как именно, ниже).
Что вам нужно
- RuneTranslate для Windows — бесплатно, каждый движок и провайдер разблокирован.
- Папка игры Godot — обычно просто
.exeигры (со встроенным паком) или.exeплюс.pck/data.pckрядом. Godot 3.x и 4.x оба поддерживаются. - Целевой язык — английский, испанский, французский, немецкий, португальский, русский, китайский, итальянский, турецкий, вьетнамский и 20+ других.
- Один провайдер перевода. Бесплатный Google Translate работает из коробки; у DeepL есть бесплатный тариф; OpenAI, Anthropic, локальная модель (Ollama / LM Studio) и любой OpenAI-совместимый API — со своим ключом. Игры Godot обычно насыщены диалогами, поэтому LLM (OpenAI / Anthropic) или DeepL читаются лучше всего для сюжетного текста.
Шаг 1: Откройте папку игры
Запустите RuneTranslate, нажмите New project и укажите его на каталог игры Godot — папку с .exe игры (и .pck, если он поставляется отдельно). Определение движка запускается автоматически: оно распознаёт сигнатуру встроенного пака в конце исполняемого файла, россыпной .pck или проект Godot. Ваши исходные файлы никогда не изменяются.
Шаг 2: Распакуйте и восстановите проект
RuneTranslate запускает встроенный сайдкар GDRE Tools, чтобы распаковать пак, декомпилировать скомпилированный GDScript и конвертировать бинарные сцены в читаемый исходник. Затем он сканирует восстановленный проект и перечисляет каждую переводимую строку — диалоги и повествование из скриптов плюс подписи и текст интерфейса из сцен — сгруппированные по файлу. Пути к ресурсам, имена узлов и другие идентификаторы кода отфильтровываются, поэтому вы переводите только те строки, которые игрок действительно видит.
Шаг 3: Переведите
Выберите провайдера и запустите. Для сюжетной игры LLM (OpenAI / Anthropic) лучше всего для голоса персонажа, DeepL быстр и чист для повествования, а бесплатный Google Translate годится для коротких строк интерфейса. Игры Godot часто держат свои диалоги как длинные массивы строк внутри одного скрипта — «база данных сюжета» — поэтому одно и то же имя персонажа или места появляется сотни раз. Внесите ваш состав и ключевые термины в глоссарий заранее, чтобы они отображались одинаково везде; см. Глоссарий 101. Необязательный проход AI-доработчика подтягивает жёсткие формулировки, которые машинный перевод склонен оставлять.
Шаг 4: Экспортируйте переведённую сборку
Нажмите Export. Поскольку оригинальные скрипты — это скомпилированный байткод, RuneTranslate использует подход переопределения исходника: он записывает ваши переводы в восстановленный исходник .gd / .tscn, отбрасывает скомпилированные .gdc / бинарные .scn, чтобы движок откатился к россыпному переведённому исходнику, переупаковывает свежий .pck и снова встраивает его в копию .exe. Ваша оригинальная игра остаётся нетронутой; вы получаете отдельную, играбельную, переведённую копию.
Область экспорта, обратите внимание: экспорт сейчас работает для игр, чей пак встроен в `.exe` и построен на Godot 4 (чисто-TS переупаковщик пишет только форматы пака Godot 4). Игра, которая поставляет отдельный .pck рядом с исполняемым файлом, или построенная на Godot 3, всё равно определится, извлечётся и переведётся — вы можете сделать весь проход перевода и использовать его как глоссарий или справку — но RuneTranslate пока не может переупаковать играбельную сборку для таких. Игры Godot 4 со встроенным паком (самый частый случай для додзин) экспортируются от начала до конца.
Шаг 5: Проверьте, что копия запускается
Экспортированная сборка полагается на то, что среда выполнения Godot компилирует россыпной переведённый исходник скриптов во время загрузки, поэтому — как и с любым новым движком — запустите экспортированную игру один раз и убедитесь, что диалоги и меню показываются на вашем языке, прежде чем делиться ею. Если скрипт не загружается, это ровно тот вид сообщения, что помогает нам укрепить это (см. ниже).
Известные ограничения
- Best-effort. Проверьте, что экспортированная игра запускается и читается корректно, перед распространением.
- Экспорт только для встроенного пака + Godot 4. Игры с отдельным
.pckи игры Godot 3 определяются, извлекаются и переводятся, но пока не могут быть переупакованы в играбельную сборку. - Только захардкоженные строки. RuneTranslate читает японский, запечённый в скрипты и сцены, а не таблицы локализации
.csv/.po/.translation, которые использует меньшинство игр. - Зашифрованные паки. Некоторые игры поставляют
.pck, зашифрованный ключом, вшитым в бинарник; такие пока не открываются. - Игры на C# / .NET (Mono). RuneTranslate фокусируется на GDScript; текст, вкомпилированный в логику игры на C# Godot, за рамками.
- Текст, вписанный в изображения. Заголовок или логотип, отрисованный как графика — это пиксели, а не строки — это работа для перевода текста на изображениях, а не извлечения скриптов.
- Не-латинские целевые языки зависят от того, поставляет ли игра шрифт, который действительно может их отобразить.
Расскажите нам, что ломается
Godot охватывает много версий движка и стилей упаковки, и мы не все их видели. Если игра не определяется, не распаковывается или экспортирует то, что не запускается, пожалуйста, сообщите — название игры, её версия Godot и то, как она упакована (встроенный пак против россыпного .pck), — ровно то, что помогает нам укрепить это быстрее всего.
Скачайте RuneTranslate, укажите его на ту игру Godot, которую вы собирались прочитать, и попробуйте. Про другой современный движок см. разбор Unity далее.
Готовы попробовать RuneTranslate?
Бесплатный тариф открывает все движки и всех провайдеров перевода. Supporter ($3/mo) открывает полную скорость.
Скачать для Windows
