R-Migrator v1.1

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

Автоматический рефакторинг модов под Ren'Py R8. Разработан ROOTWIN PROJECT.

Руководство ориентировано на мододелов и переводчиков, которым нужно привести старый мод Python 2 / Ren'Py 7 к совместимости с Ren'Py 8 / Python 3.

R-Migrator автоматизирует типовые исправления. Это не гарантия идеального переноса кастомного кода — всегда тестируйте мод после миграции, особенно там, где автор писал нестандартный Python.

Исправления Python 2 → Python 3

R-Migrator сканирует .rpy-файлы и применяет эти исправления автоматически.

print statement

print-statement -> print()

except / raise

except X, e -> except X as e / raise X, msg -> raise X(msg)

dict-методы

has_key / iteritems / iterkeys / itervalues -> эквиваленты Python 3

xrange

xrange -> range

литералы

long / L-суффикс, восьмеричные 0755, ur"...", `expr` -> синтаксис Python 3

unicode / basestring

unicode() / basestring -> str

bytes / str

патч в poem- и game-скриптах

ATL-координаты

float/int в ATL-трансформах и random.randint

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

01

Запуск

Откройте R-Migrator. На главном экране — список того, что умеет чинить утилита, и кнопка «ВЫБРАТЬ ЦЕЛИ».

02

Выбор папки с модом

Нажмите «ВЫБРАТЬ ЦЕЛИ» и укажите папку, где лежит мод. R-Migrator читает подпапки внутри неё как цели миграции.

03

Цели и резервная копия

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

04

Согласие на сторонние утилиты

Если в выбранных папках найдутся .rpa-архивы или .rpyc без соответствующего .rpy, R-Migrator предложит сначала распаковать/декомпилировать их через rpatool.py и unrpyc.py. Перед этим один раз за сессию появится диалог согласия.

Продолжайте только если доверяете источнику архива — R-Migrator не писал эти сторонние инструменты и не может гарантировать безопасность непроверенного .rpa/.rpyc.
05

Запуск миграции

Нажмите «ИСПОЛНИТЬ». Консоль внизу в реальном времени показывает каждый обработанный файл, предупреждения и категории исправлений.

06

Проверка результата

По завершении консоль выводит итоговое число пропатченных файлов. Для проверки или отката загляните в .bak-файлы и в папку logs/.

Резервные копии и сторонние утилиты

💾

Резервная копия .bak

При включённой опции резервного копирования рядом с каждым файлом сохраняется .bak-копия перед перезаписью. Держите опцию включённой, если у вас нет своей резервной копии.

Сторонние утилиты распаковки

Распаковка .rpa и декомпиляция .rpyc используют rpatool.py и unrpyc.py — код, который не написан R-Migrator. Продолжайте только с архивами из проверенного источника.

📁

Полная копия мода

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

Логи сессии

Каждый запуск миграции пишет отдельный лог-файл в папку logs/ рядом с программой — с датой и временем запуска в названии, ничего не перезаписывается между сессиями.

📁 R-MIGRATOR
├── 📂 logs
│   └── 📄 rmigrator_2026-05-09_14-32-07.log Отдельный файл на каждый запуск

Прочие элементы управления

🌓

Переключает светлую и тёмную тему.

RU / EN

Переключает язык интерфейса.

Информация

Открывает окно с информацией о ROOTWIN PROJECT, ссылками и возможностью поддержать разработку.

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

Баг-репорт

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

  • logs/rmigrator_{дата}.log — лог-файл сессии, в которой произошла ошибка
  • Скриншот консоли в момент ошибки
  • Версию Ren'Py мода (6, 7 или 8) и был ли он упакован в .rpa/.rpyc