Ren’Py · Python 2 to 3 Refactoring

Automated Python 2 to Python 3 converter for Ren’Py

Standard 2to3 breaks Ren’Py syntax and indentation. R-Migrator is built specifically for .rpy script structures.

💾
Automatic .bak Backups Zero risk of data loss
⚡
Cython Core Up to 50% faster batch processing
📦
14 MB Portable No Python installation required
🐧
Windows & Linux Native builds on both platforms

Migrating from Ren’Py 7 to Ren’Py 8 requires updating Python code throughout your visual novel. But running generic Python tools like '2to3' often destroys Ren’Py's custom indentation, dialogue tags, and ATL blocks. R-Migrator was engineered from the ground up for Ren’Py scripts. It parses .rpy files accurately, replaces deprecated Python 2 idioms, updates string handling, and leaves your dialogue and screens intact.

What R-Migrator converts across your project

A comprehensive pass over every script file eliminates legacy Python 2 idioms:

  • Print statements — Converts legacy print "message" into functional print("message").
  • Exception handling — Rewrites except Exception, e into except Exception as e, and raise X, msg into raise X(msg).
  • Dictionary methods — Transforms has_key(), iteritems(), iterkeys(), and itervalues() into modern Python 3 equivalents.
  • Ranges and iterations — Converts xrange() to range() and optimizes loop expressions.
  • Numeric and octal literals — Fixes legacy long integers (1000L) and octal coordinates in ATL blocks (045 -> 45).
  • Unicode and strings — Replaces unicode() and basestring references with modern str compatibility.
  • Standard library imports — Updates renamed modules like urllib, urllib2, and builtins.

Batch processing with zero manual effort

Point R-Migrator at your game directory and let it process the whole tree:

  1. Select project folderSelect the game/ directory or drag in an entire mod archive.
  2. Decompile and unpack on demandAny .rpyc or .rpa files without sources are automatically unpacked and decompiled.
  3. Run instant conversionCython-accelerated core processes hundreds of files in seconds.
  4. Review .bak filesEvery original file is safely preserved with a .bak extension.

Lightweight 14 MB portable tool. Windows and Linux native. No Python installation required.

Frequently Asked Questions

Python's standard 2to3 parser expects pure Python files. It frequently corrupts Ren'Py dialogue blocks, say statements, ATL transform syntax, and custom screen language indentation. R-Migrator is specifically designed to understand .rpy syntax.

Yes. R-Migrator scans your entire directory structure and subfolders, converting all .rpy files in a single automated pass.

No. R-Migrator is a standalone, self-contained 14 MB executable for Windows and Linux. You do not need to install Python, pip, or any virtual environment.

Batch convert your Ren’Py scripts from Python 2 to 3 without breaking dialogue formatting. Download R-Migrator today.