AutoBuild v1.2

Руководство
пользователя

Комплекс локализации DDLC-модификаций. Разработан ROOTWIN PROJECT совместно с командой перевода TheOneTranslator.

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

Настоятельно рекомендуем прочитать руководство полностью до начала работы. Пропуск даже одного технического нюанса или предупреждения может привести к критическим ошибкам при сборке ваших проектов.

Обзор рабочего пространства

Окно разделено на три логические зоны управления конвейером декомпиляции и патчинга.

AutoBuild v1.2 — главное окно программы
Главное окно AutoBuild v1.2 (тема Monika)
TOP_PANEL

Конфигурация — выбор рабочих директорий (ресурсы / целевой мод), ввод локализованного названия проекта, переключатели архитектуры движка (Auto / 6-7 / 8).

CENTER_PANEL

Модули автоматизации — кнопки-переключатели четырёх шагов конвейера. Цветная кнопка = активен, серая = пропущен. При наведении — подсказка.

BOTTOM_PANEL

Консоль логов — защищённое от записи окно вывода со смайлик-индикаторами прогресса в реальном времени и автоскроллом по мере продвижения сборки.

Модульная система сборки

Четыре независимых этапа. Включайте и отключайте любые комбинации — кликом по карточке.

01
RPA Extract
Распаковка и декомпиляция

Вскрывает тяжёлые архивы (scripts.rpa, images.rpa и др.), извлекает содержимое, находит .rpyc и превращает в читаемый .rpy.

02
Font Remap
Замена шрифтов

Сканирует весь код, находит упоминания оригинальных шрифтов и переписывает ссылки на кириллические из папки ресурсов. Решает проблему «кракозябр».

03
Text Assets
Локализация интерфейса

Сверяется со словарём rules.yaml и переводит кнопки «Новая игра», «Настройки», «Сохранить», а также имена персонажей.

04
Clean Up
Очистка билда

Удаляет временные индексные файлы, кэш движка и остаточные .rpyc — оставляет кристально чистую рабочую папку.

Визуальные темы оформления

Каждая тема меняет цветовую палитру и Rich Presence в Discord — под покровительством какой героини вы переводите мод.

AutoBuild — тема Sayori
Sayori
Небесно-голубые тона, коралловые акценты
AutoBuild — тема Yuri
Yuri
Тёмно-фиолетовый, приглушённые неоновые акценты
AutoBuild — тема Natsuki
Natsuki
Пастельно-розовый, яркие контрастные акценты
AutoBuild — тема Monika
Monika
Изумрудно-зелёный, атмосфера контроля и порядка

Двухуровневый мониторинг

Консоль

Мини-консоль (on-the-fly)

🔍 [SCAN] Программа ищет файлы или анализирует структуру
[STATIC] Успешно отработал резервный метод декомпиляции
[ERROR] Критическая ошибка, требующая внимания
[MAP] Этап завершён, результаты сохранены
Диск

Дисковый лог-файл

При любых сбоях — повреждённый архив, блокировка антивирусом — на диске создаётся session.log в рабочей папке программы. Он фиксирует абсолютно каждое действие, включая технические трассировки ОС.

Передайте разработчику при обнаружении системных сбоев.

Выходные директории

untranslated/

Пропущенный текст

Все строки интерфейса, меню и всплывающих окон, которые не подошли ни под одно правило rules.yaml. Распределены по файлам с точной привязкой к номерам строк оригинального кода.

screens.txt options.txt
AutoBuild — example of an untranslated strings report
Пример отчёта с пропущенными строками
story_maps/

Карта сюжета

Аудит логики новеллы в двух форматах: текстовая хронология скриптов с переходами jump / call, и интерактивный HTML-граф с поиском, зумом и фокусировкой камеры.

[Мод]_map.txt [Мод]_map.html
AutoBuild — interactive story graph
Интерактивный граф сюжета (.html)
AutoBuild — text story map
Текстовая карта сюжета (.txt)

Пошаговый алгоритм работы

01

Подготовка

Запустите программу. Поместите файлы кириллических шрифтов и актуальный rules.yaml в вашу папку ресурсов.

Если в моде нет .exe — вставьте файлы мода в папку оригинальной чистой DDLC с заменой.
02

Указание путей

Кнопки «Обзор» рядом с полями ИГРА и РЕСУРСЫ — выберите папку с новеллой и папку ресурсов.

03

Именование

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

04

Кастомизация и модули

Выберите тему (Sayori / Yuri / Natsuki / Monika). Все 4 модуля включены по умолчанию — отключайте ненужные кликом (станут серыми и программа не тронет связанные с ними файлы).

05

Выбор движка

Ren'Py 8 → инжектор v2 + Python 3 (современные моды). Ren'Py 6/7 → инжектор v1 + Python 2.7 (классический DDLC). Без выбора — автоопределение по структуре файлов.

Ошибки о том, что un.rpyc не может быть загружен — нормальное явление в некоторых модах: файл зависит от версии движка. Всегда выбирайте подходящую версию Ren'Py (6, 7 или 8) для корректной работы.
06

Старт и контроль

Нажмите «Инициировать сборку». Следите за мини-консолью. До 3 автоматических попыток инжекции кода на каждый .exe — если .rpy обнаружены уже после первой, цикл завершается мгновенно. Дождитесь финального сообщения о завершении.

Как только откроется окно игры — категорически не трогать мод: не кликать, не сворачивать, не закрывать вручную. Программа сама дождётся генерации скриптов и закроет игру через триггер. Любое вмешательство сломает структуру файлов.
07

Результаты

Откройте папки untranslated/ и story_maps/ для оценки структуры и доработки пропущенных строк интерфейса.

Безопасность и среда

Не трогать во время сборки

Пока конвейер работает — не перемещайте файлы, не открывайте их в редакторах и не запускайте игру. Программа монопольно завершит все дисковые операции сама.

🎮

Окно игры при инжекции

Когда утилита откроет окно игры — категорически нельзя кликать по нему или закрывать вручную. Программа дождётся генерации скриптов и сама закроет игру через триггер.

🐍

Требования к среде

Строго необходим Python 3.13. При установке обязательно отметить Add Python to PATH. Если галочка пропущена — выполните чистую переустановку.

Мод не запускается с первого раза

Нормальное явление. Из-за интенсивной нагрузки ОС не успевает мгновенно освободить дескрипторы файлов. Подождите несколько секунд и повторите — со второго раза запустится гарантированно.

Перед самой первой сборкой программа показывает предупреждение безопасности и просит подтвердить осознание рисков — оно появляется один раз на установку.

AutoBuild — стартовое предупреждение безопасности
Стартовое предупреждение безопасности

Данное ПО предназначено для автоматизации сборки игровых модификаций DDLC. Запуск внешних инструментов (rpatool.py) и обработка ресурсов подразумевают выполнение стороннего программного кода.

Всегда проверяйте источники и содержимое используемых файлов и модификаций! ROOTWIN PROJECT не несёт ответственности за стабильность системы и сохранность данных при работе с непроверенным контентом.

Файловая структура программы

📁 AUTOBUILDER_RW
├── 📂 logs
│   └── 📄 session.log Детализированный лог сессии
├── 📂 setup
│   └── ⚙️ rules.yaml База правил замен и патчинга
├── 📂 story_maps
│   ├── 📄 [Мод]_map.txt Текстовая карта сценария
│   └── 🌐 [Мод]_map.html Интерактивный граф для браузера
├── 📂 untranslated
│   └── 📄 [Мод]_miss.txt Пропущенные строки интерфейса
├── 📂 Ресурсы
│   ├── 🔤 fonts Кириллические шрифты (.ttf/.otf)
│   ├── 🧩 un.rpyc_v1 Декомпилятор для Ren'Py 7 (Python 2.7)
│   ├── 🧩 un.rpyc_v2 Декомпилятор для Ren'Py 8 (Python 3)
│   ├── 🐍 unrpyc.py Резервный скрипт декомпиляции
│   └── 🖼️ TheOne.png Логотип TheOneTranslator
└── AutoBuilder_v1.2.exe Основной исполняемый файл

Заполнение rules.yaml

Файл setup/rules.yaml — единственное место, которое нужно редактировать между сборками, без правок кода. В нём хранятся три вида настроек: строки перевода интерфейса, замена шрифтов и ссылки команды локализации, которые показываются на экране «Помощь» в самой игре.

ui_replacements

Пары 'оригинальная строка': 'перевод' — все подписи меню, кнопки и системные сообщения шаблона.

font_map

Пары "ОригинальныйШрифт.ttf": "КириллическийШрифт.ttf" — какой файл шрифта чем заменяется, чтобы кириллица отображалась корректно.

character_names

Список переменных персонажей с их именами en/ru, используется для переименования персонажей, объявленных через Character() или DynamicCharacter().

localization_team

Название и свободный список ссылок команды локализации. Поле name подставляется в экран «Об игре» (gui.about). links — обычный список пар label / url, которые показываются кнопками на игровом экране «Помощь» — без привязки к конкретным соцсетям, добавляйте и убирайте пункты свободно (от 1 до 6 ссылок, в любом порядке).

Пример блока localization_team — именно из него формируется экран «ПОЛЕЗНЫЕ ССЫЛКИ», который утилита добавляет в screens.rpy. Копируйте пару "- label / url" на каждую ссылку, в любом порядке, максимум 6 штук:

# Конфигурация команды локализации и ссылок для экрана помощи (Help screen)
localization_team:
  # Название команды переводчиков (отображается в меню «Об игре» / gui.about)
  name: "TheOneTranslator"

  # Ссылки на ресурсы команды (отображаются кнопками на экране «Помощь» / «ПОЛЕЗНЫЕ ССЫЛКИ»)
  # Доступно от 1 до 6 ссылок в любом порядке.
  # label — название кнопки, отображаемое игроку в меню
  # url — полная ссылка на ресурс (сайт, канал, группа, чат, сервер и т.д.)
  links:
    - label: "Сайт TheOneTranslator"
      url: "https://sites.google.com/view/theonetranslator/home"
    # Ссылка на группу сообщества
    - label: "Группа в VK"
      url: "https://vk.com/theonetranslator"
    # Ссылка на новостной Telegram-канал команды
    - label: "Телеграм канал"
      url: "https://t.me/TheOneTranslator"
    # Ссылка на чат обсуждений / сервер сообщества
    - label: "Дискорд сервер"
      url: "https://discord.com/invite/EFVdYes"

Чтобы добавить ссылку, скопируйте существующую пару "- label / url" и впишите свои значения (кавычки нужно оставить, а слова label и url менять нельзя). Чтобы убрать ссылку — удалите её пару целиком. Порядок в файле — это порядок кнопок в игре, его можно менять свободно.

Обратная связь

Большинство ошибок решаются с помощью ИИ без ожидания ответа от поддержки — скопируйте текст проблемы и session.log и обратитесь к актуальной нейросети с доступом к интернету.
Кейс

Почему ошибка «внезапно» появляется только после распаковки

Явный маркер того, что проблему стоит сначала показать нейросети — ситуация, когда в архиве всё работало, а после распаковки начались вылеты.

До распаковки
mod_assets.rpa

Файл autofocus.rpyc запакован внутри архива. Ren'Py спокойно читает готовый байткод — всё работает, так как он уже «переварен» движком.

После распаковки
mod_assets/MPT/autofocus.rpy

Скрипт лежит в виде исходного кода. Ren'Py пытается перекомпилировать его заново и падает на строке 267.

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

Баг-репорт

Что включить в отчёт об ошибке

  • logs/session.log — файл из корневой папки утилиты
  • Ошибки Ren'Py — traceback.txt / log.txt если движок их создал
  • Скриншот главного окна в момент ошибки с развёрнутой консолью
  • Скриншот файловой структуры — папки программы и каталог game/ мода