ДвижкиРуководстваFAQPatreonDiscordСкачать
Войти
RuneTranslate · перевод японских игр от и до
ДвижкиРуководстваСравнениеТекст на картинкахРедактор сохраненийРежим читовFAQСкачатьPatreonDiscordYouTubeКонфиденциальностьУсловияКонтакты
Все статьи
rpg-maker · how-to · engine · control-codes

Как перевести игры на RPG Maker

18 авг. 2026 г.·10 мин чтения

RPG Maker — самый переводимый движок из существующих: текст лежит в обычных файлах данных. Как определить свою версию, экспортировать играбельную сборку и сохранить управляющие коды в целости.

RPG Maker — движок, на который вы вероятнее всего наткнётесь, когда пойдёте искать японские инди-игры, и он же самый дружелюбный к переводу. Текст игры не вкомпилирован в исполняемый файл — он лежит в обычных файлах данных JSON или сериализованных Ruby, которые поставляются рядом с игрой. Именно поэтому перевод RPG Maker вообще работает и поэтому процесс ниже заканчивается сборкой, в которую действительно можно играть, а не оверлеем, который угадывает, что на экране.

Это руководство охватывает: как понять, какой у вас RPG Maker, как устроен экспорт, что именно переводится, как управляющие коды переживают машинный переводчик и что делать, когда строка вернулась неправильной. Оно написано так, чтобы быть полезным независимо от того, используете ли вы для этого RuneTranslate.

Какой у меня RPG Maker?

Большинство тех, кто задаёт этот вопрос, не знают, какая версия у них в руках, а от ответа зависит, что вообще возможно. Откройте папку игры и найдите первое совпадение из этого списка:

  • Папка `www/`, внутри которой лежит www/data/*.json, — RPG Maker MV. Игра представляет собой приложение nw.js; исполняемый файл обычно Game.exe рядом с www/.
  • Голая папка `data/` с файлами .json и без www/ — RPG Maker MZ. MZ поднял всё на уровень выше, и это самый быстрый способ отличить их друг от друга.
  • `Data/` с .rxdata, .rvdata или .rvdata2 — RPG Maker XP, VX и VX Ace соответственно. Если Data/ выглядит пустой, проверьте корень на Game.rgssad, Game.rgss2a или Game.rgss3a; это те же данные внутри зашифрованного архива.
  • `RPG_RT.exe` в корне, рядом файлы .lmt и .lmu — RPG Maker 2000 или 2003. Совсем другое поколение движка.
  • .exe на десятки или сотни мегабайт, а рядом нет ни www/, ни data/ — скорее всего, сборка Enigma Virtual Box с данными, упакованными внутрь исполняемого файла. См. ниже.

MV и MZ достаточно близки, чтобы их постоянно путали, и различаются они ровно в тех местах, которые начинают иметь значение, как только вы садитесь править текст. Сравнение MV и MZ разбирает раскладку папок, формат плагинов и различия окна сообщения.

Текст игр RPG Maker 2000 и 2003 не поддерживается. RuneTranslate читает их файлы сохранений .lsd через редактор сохранений — и больше ничего. Если у вас игра с RPG_RT.exe и вы хотите перевести её сценарий, нужный инструмент — EasyRPG, а не этот. Лучше уйти с этой страницы сейчас, чем выяснять это час спустя на собственном опыте.

Четыре шага

  1. Укажите New project на папку игры. Выберите папку, в которой лежит Game.exe. Движок определяется по её содержимому — вы не выбираете MV или MZ из выпадающего списка, и если определение расходится с тем, что вы ожидали, это стоит прочитать как информацию.
  2. Выберите провайдера и целевой язык. Доступны девять провайдеров, и трём из них не нужен ни API-ключ, ни аккаунт.
  3. Переведите. RuneTranslate группирует строки в пакеты, повторяет неудавшиеся с нарастающей задержкой и показывает настоящий индикатор прогресса с оценкой времени. Любую строку в таблице можно править и во время прогона, и после него.
  4. Экспортируйте играбельную сборку в выбранную вами папку. Туда ложится полная, запускаемая копия игры с переведёнными файлами данных на месте.

Оригинальная папка игры никогда не изменяется. Всё пишется в выбранную вами папку вывода, а значит, неудачный экспорт стоит вам только места на диске — удалите его и экспортируйте заново. Это же означает, что японская сборка может остаться установленной и играбельной рядом.

RuneTranslate работает на Windows 10 и 11, а на Linux и Steam Deck — через Wine или Proton. При первом запуске нужен бесплатный вход через Patreon. Бесплатный тариф открывает каждый движок и каждого провайдера — он ограничивает скорость и держит один проект за раз, а не запирает функции за платной стеной.

Что именно переводится

Для MV и MZ экстрактор обходит каждый файл карты и каждый список команд событий и вытаскивает команды, которые дают видимый игроку текст:

  • `401` Show Text — строка диалога. Это основная масса любой игры на RPG Maker.
  • `405` Show Scrolling Text — вступления, титры, письма, поясняющие «простыни».
  • `102` Show Choices — пункты окна выбора. Метки веток When [choice] рисуются из того же массива, поэтому перевод варианта переводит и то, и другое.
  • `320` / `324` / `325` — смена имени, прозвища и профиля персонажа, которыми игры пользуются для сюжетных раскрытий и превращений по ходу истории.
  • База данных — Actors.json (имя, прозвище, профиль), Classes.json, Skills.json (название, описание и боевые строки message1 / message2), Items.json, Weapons.json, Armors.json, Enemies.json, States.json.
  • `System.json` — название игры, единица валюты и вся таблица терминов: каждая метка меню, имя команды и строка базового статуса, которые рисует движок.
  • Названия карт из `MapInfos.json` и CommonEvents.json — общие события несут неожиданно много сценария в играх, которые гонят диалоги через общий обработчик.
  • Параметры плагинов в plugins.js и аргументы плагин-команд MZ (код команды 357). Именно здесь многие современные игры MV/MZ держат свой текст меню.

Комментарии событий (108 и их строки-продолжения 408) — это заметки разработчика, которые движок игроку не показывает, поэтому по умолчанию они исключены. Их не удаляют: они видны как строки с ручным включением, которые можно отметить галочкой, потому что несколько плагинов облачков и всплывающих сообщений всё-таки их отрисовывают. Так же обходятся со всем, что классификатор читает как идентификатор кода или путь к файлу: исключено, видно, обратимо.

Управляющие коды и почему из-за них ломаются переводы

Диалоги RPG Maker — не простой текст. Они несут внутри себя escape-коды, которые движок разворачивает в момент отрисовки:

  • \C[1] — переключить цвет текста на индекс палитры 1.
  • \N[2] — подставить имя персонажа 2.
  • \V[3] — подставить значение переменной 3.
  • \G — единица валюты.
  • \I[123] — нарисовать иконку 123 прямо в строке.
  • \. \| \! \{ \} — короткая пауза, пауза на секунду, ожидание нажатия, увеличить шрифт, уменьшить.

Отдайте любой из них машинному переводчику как есть — и получите обратно искалеченным. Google Translate меняет их порядок. Небольшие локальные модели теряют скобку, переводят букву в нижний регистр или подменяют ASCII-скобки полноширинными. LLM время от времени решает, что \C[1] — это опечатка, и услужливо её убирает. В игре это выглядит как текстовое окно, которое печатает голый обратный слеш, теряет цвет на середине или показывает пустоту там, где должно быть имя персонажа.

RuneTranslate маскирует каждый код нумерованным плейсхолдером — [[T0]], [[T1]] — ещё до того, как провайдер увидит строку, и восстанавливает их по карте после. Восстановление намеренно снисходительно: оно принимает плейсхолдер, вернувшийся без одной скобки, с лишними пробелами внутри, со строчной буквой или с полноширинными скобками, потому что на практике случается всё четыре. Если код пропал целиком, строка помечается, а не уходит в экспорт молча.

Тем же механизмом закрыты два менее очевидных случая. RPG Maker использует ещё и подстановки в стиле printf — %1 и %2 в Terms и в боевых сообщениях навыков, как в %1の攻撃!, где %1 становится именем персонажа, — и они маскируются тоже, потому что слабый провайдер насочиняет на их месте мусор из скобок. А многие игры поставляют плагин подстановки имени с голыми токенами в скобках вроде [名前] или [呼名], которые движок во время игры меняет на имя игрока; они маскируются так же — достаточно узко, чтобы обычная проза в скобках осталась нетронутой.

Многобуквенные коды, заданные плагинами, — такие как \FFF[20] или \FH[ON] — попадают под тот же шаблон и защищаются без всякой настройки под конкретный плагин.

Перенос по 46 символов

В японский помещается куда больше смысла на символ, чем в английский. Строка, которая комфортно заполняла окно сообщения на японском, после перевода уедет за правый край, а RPG Maker не переносит её за вас — он просто рисует за границей окна, и то, что вылезло, не видно. Вы не заметите этого, пока игрок не скажет вам, что половина фразы пропала.

При экспорте диалоги в командах 401 и 405 переносятся по 46 символов на строку — примерно столько вмещает стандартное окно сообщения при стандартном размере шрифта. Разрывы вставляются по границам слов, а переводы строк, уже присутствующие в исходнике, сохраняются, так что собственные разбивки автора на страницы и его намеренные переносы переживают экспорт. Игре с собственной системой сообщений или шрифтом помельче может понадобиться другое число; игра, рисующая текст в более широком окне, просто перенесёт раньше, чем нужно, — это косметика, а не поломка.

Зашифрованные изображения и архивы

MV и MZ поставляются с опцией шифрования ресурсов, которая переименовывает изображения в .rpgmvp или .png_ и накладывает XOR на заголовок. RuneTranslate не предполагает стандартную схему — он восстанавливает длину заголовка, длину XOR-серии и ключ из байтов самого файла, используя сигнатуру PNG как известный открытый текст и CRC32 из IHDR как проверку. Это важно, потому что существуют плагины шифрования с другими параметрами (32-байтовый заголовок, 32-байтовая серия, зеркальный ключ) и потому что у множества игр ключ вырезан из System.json. Собственная схема RPG Maker сходится на первой же итерации, поэтому в частом случае ничего не замедляется, а всё, что записывается обратно, зашифровывается той же схемой — так что собственный расшифровщик игры по-прежнему это загружает.

Для XP, VX и VX Ace архив .rgssad / .rgss2a / .rgss3a читается напрямую, а лежащие внутри данные Ruby Marshal разбираются на TypeScript — без установки Ruby и без внешнего распаковщика. Поддержка там best-effort: игры XP и VX хранят текст байтовыми строками Shift-JIS, а не размеченным UTF-8, из-за чего пограничные случаи кодировки вероятнее, чем на MZ.

Текст, впечатанный в графику — заставка, кнопка меню, вывеска на CG, — не лежит ни в одном файле данных, и никакой экстрактор до него не доберётся. Для этого есть Image Studio: найти области текста, восстановить рисунок под ними, набрать замену и запечь её обратно в собственный формат изображений игры, вместе с шифрованием.

Игры, упакованные Enigma Virtual Box

У изрядного числа распространяемых игр на RPG Maker нет ни видимой папки www/, ни data/ — потому что вся виртуальная файловая система упакована в исполняемый файл через Enigma Virtual Box. Выдаёт их маркер EVB\0 в exe и подозрительно пустая на вид папка игры.

Такие сборки определяются и обрабатываются. Упакованная файловая система распаковывается в рабочее пространство проекта, данные извлекаются и переводятся как обычно, а при экспорте вся виртуальная файловая система выписывается наружу как запускаемая папка — восстановленный внутренний исполняемый файл, его DLL и www/ — с вставленными переведёнными данными. Запускаете вы извлечённый внутренний исполняемый файл, который в этот момент представляет собой обычную распакованную игру, читающую россыпные файлы данных.

Иначе и нельзя. Более ранний подход клал переведённую www/ рядом с упакованным исполняемым файлом, и это молча ничего не делало: работающая обёртка разрешает www/ из своей собственной встроенной виртуальной файловой системы и игнорирует файлы на диске. Если вы делаете это вручную другим инструментом — вот где ловушка: перевод как будто применился, а игра всё равно грузит оригинальный текст.

Какого провайдера выбрать

Поддерживаются девять провайдеров, и трём из них не нужен ни API-ключ, ни аккаунт где бы то ни было: Google, бесплатная точка DeepL и DeepL с выбором модели Classic или Next-gen. Перевести целую игру на RPG Maker можно, никому не платя и нигде не регистрируясь. Платные варианты — API DeepL, OpenAI, Anthropic Claude, DeepSeek, любая OpenAI-совместимая точка и локальная модель через Ollama или LM Studio, если вы предпочитаете, чтобы ничего не покидало вашу машину.

Короткая версия конкретно для RPG Maker: бесплатные скраперы вполне годятся для меню, названий предметов и коротких строк, и именно с них большинству стоит начать. Им тяжело даётся звукоподражание — если провайдер вернул исходник без изменений, строка помечается как неудавшаяся с пометкой, а не тихо протаскивает японский в ваш экспорт. LLM заметно лучше на длинных диалогах, на тоне и на всём, где важен регистр речи говорящего. В сравнении провайдеров собраны реальные компромиссы, а AI-доработчик — про второй проход по готовому переводу, чтобы его вычистить.

Как удержать имена одинаковыми

Самая частая претензия к машинно переведённой игре на RPG Maker — что главного героя зовут четырьмя разными способами. Лечится глоссарием: закрепите нужное написание для каждого персонажа, места, предмета и навыка до прогона — и каждый пакет будет его использовать. Руководство по глоссарию проводит через сборку такого списка. Память переводов работает в ту же сторону: одинаковые исходные строки получают одинаковый перевод по всему проекту, а это важно в движке, где одно и то же описание предмета встречается в магазине, в меню и в событии сундука.

Одна ловушка, специфичная для RPG Maker: некоторые плагины завязаны на строку имени говорящего по точному совпадению — самый известный случай это семейство TRP Skit для MZ. Переведите имя в Actors.json, оставив его в данных плагина, — и совпадение молча не сработает, так что портрет или скит просто не запустится. RuneTranslate синхронизирует обе стороны при экспорте. Если правите вручную, помните: имя в RPG Maker может одновременно быть и отображаемым текстом, и ключом поиска.

Когда что-то пошло не так

Строка всё ещё на японском

Три обычные причины. Её вообще не извлекли, потому что она лежит там, куда экстрактор не заходит — в собственном файле данных какого-нибудь плагина или впечатанная в картинку. Её извлекли, но исключили, потому что классификатор прочитал её как идентификатор; поищите её среди строк с ручным включением и отметьте галочкой. Или провайдер вернул исходник без изменений — это видно как неудавшаяся строка, которую можно перезапустить на другом провайдере. Если вы переводили игру до обновления приложения, воспользуйтесь Re-scan source из меню ⋯ в редакторе — повторное сканирование только добавляет строки, оно никогда не удаляет ваши существующие переводы.

Текст вылезает за окно сообщения

Стандартный перенос рассчитан на стандартное окно. Игре с собственной системой сообщений, шрифтом побольше или портретом, съедающим половину окна, понадобятся строки покороче. Отредактируйте проблемную строку напрямую и вставьте свои переводы строк — ручные разрывы сохраняются при экспорте. Это же и решение, когда перевод просто слишком многословен: перепишите его короче, а не воюйте с переносом.

Игра не запускается после экспорта

Почти всегда дело в сломанном файле данных, а не в плохом тексте. Проверьте, что вы запустили исполняемый файл в папке вывода, а не оригинальный. На сборке EVB убедитесь, что запускаете извлечённый внутренний исполняемый файл. Если падает конкретное событие, подозреваемый — управляющий код, который не пережил перевод: откройте эту строку и сравните её коды с исходником. Держите оригинальную папку игры нетронутой, чтобы у вас всегда была рабочая точка отсчёта для сравнения.

Строку плагина переводить нельзя

Параметры плагинов мешают в одном блоке отображаемый текст с именами переключателей, путями к файлам, привязками клавиш и флагами режимов. Всё, что читается как идентификатор кода или путь, исключается автоматически, но плагин, использующий японские слова как внутренние ключи, проскочит. Пометьте такие строки как исключённые — и при экспорте они останутся на исходном языке. Regex-фильтры делают это оптом, когда параметры плагина следуют общему шаблону именования.

Честные ограничения

  • Текст игр RPG Maker 2000 / 2003 вне области. Только файлы сохранений, через редактор сохранений. Для сценария используйте EasyRPG.
  • XP, VX и VX Ace — best-effort. Читатель архивов и парсер Ruby Marshal написаны на чистом TypeScript и работают, но старая обработка строк Shift-JIS — поверхность шероховатее, чем MV/MZ.
  • Текст, вкомпилированный в JavaScript собственного плагина, достижим только тогда, когда выглядит как данные. Плагин, который зашивает строки внутрь своей логики, — это ручная правка.
  • Нативно защищённые сборки MZ — где данные расшифровываются ниже слоя JavaScript — обрабатываются через перехват во время выполнения и наложение, а не через разбор самого шифрования. Это работает; относитесь как к best-effort и проверьте экспорт, прежде чем вкладываться в долгий прогон.
  • Ничто из этого не заменяет запуск сборки. Счётчики извлечения и зелёный индикатор прогресса — не доказательство. Запустите экспортированную игру и прочитайте первые десять минут.

Две смежные вещи, которые стоит знать

Режим читов читает собственные переключатели, переменные и предметы игры на RPG Maker и позволяет их менять — это самый быстрый способ добраться до позднего события, перевод которого нужно проверить, и именно так большинство проверяет экспорт, не переигрывая двадцать часов. Редактор сохранений открывает сохранения MV/MZ, XP/VX/VX Ace и .lsd от 2000/2003 напрямую, так что застрявшее прохождение или потерянный ключевой предмет не обрывают прогон.

Если сначала хочется общей картины, список движков охватывает все семнадцать поддерживаемых форматов, страница движка RPG Maker содержит детали формата, а общее руководство — это версия этой статьи без привязки к движку. Когда будете готовы, страница загрузки даёт установщик.

Похожие материалы
01

Как перевести игры на Unreal Engine

unrealguidesenginelocalization18 авг. 2026 г. · 9 мин
Читать →
02

Как перевести файлы .po и .mo игры (gettext)

gettextpomoenginetutorial4 авг. 2026 г. · 7 мин
Читать →
03

Как переводить игры на движке AliceSoft System (Rance, Evenicle…)

alicesoftranceengine26 июн. 2026 г. · 6 мин
Читать →

Готовы попробовать RuneTranslate?

Бесплатный тариф открывает все движки и всех провайдеров перевода. Supporter ($3/mo) открывает полную скорость.

Скачать для Windows