Поддерживаемый движок · Electron VN
Некоторые студии японских визуальных новелл выпускают свои игры как кастомные приложения Electron, которые не являются TyranoBuilder — JavaScript-рендерер плюс встроенная среда Chromium, упакованные в resources/app.asar. Адаптер Electron VN в RuneTranslate — универсальное решение для таких случаев: он читает и переупаковывает app.asar через @electron/asar, переводит известные файлы контента (files/text.js, html/chat.html) и запускает универсальный сканер японского текста по файлам .js, .html, .json и .ks в архиве. На выходе — изменённый app.asar, который кладётся обратно в resources/ — без патчинга среды выполнения Electron.
Кастомные Electron VN поставляются в самобытных структурах — универсальный сканер исходного текста в RuneTranslate (настроен на японский, но подхватывает и другие исходные языки) может найти строки, но не может знать, какие из них имена говорящих, а какие — свободные диалоги. Зафиксируйте состав ролей в глоссарии, чтобы эвристически извлечённые фрагменты оставались единообразными: каждое имя в панелях чата, каждое именованное системное сообщение и любую внутримировую терминологию. После настройки глоссария можно перезапустить перевод с другим провайдером, и именованные сущности по-прежнему будут совпадать с предыдущим прогоном. Глоссарий: основы →
Укажите RuneTranslate каталог игры, содержащий .exe Electron. Адаптер ищет resources/app.asar и убеждается, что это НЕ структура TyranoBuilder (у которой есть отдельный адаптер). Доступ на чтение через @electron/asar — ручная распаковка не нужна.
Универсальный сканер обходит каждый файл .js, .html, .json и .ks внутри asar и извлекает строковые литералы на исходном языке (по умолчанию японский; любой поддерживаемый исходный язык). Файлы известного формата (files/text.js, html/chat.html) получают структурированное извлечение; неизвестные файлы — эвристический сканер. Двоичные файлы пропускаются.
Выберите провайдера — Anthropic Claude и OpenAI GPT-4o сильнее всего в разговорных строках, встроенных в JS, которые обычно используют такие оболочки. DeepL — надёжный запасной вариант. Бесплатный Google Translate работает для коротких строк интерфейса через маршрутизацию провайдеров.
При экспорте RuneTranslate записывает изменённый app.asar с запечёнными переведёнными строками. Положите его обратно в папку resources/ игры. Переведённая сборка запускается в оригинальной среде Electron.