To extract Ren'Py RPA files without installing software, open the browser tool, add your archives, preview their contents, and export your selection locally. Use unrpa for terminal scripting or batch jobs, and rpatool when you also need to create archives; RPA here means Ren'Py archives, not robotic process automation.
Where to find the .rpa files in a Ren'Py game folder
Ren'Py games keep their archives in the game folder next to the launcher, for example MyGame/game/archive.rpa, often alongside images.rpa, audio.rpa or other names chosen by the developer. On a Mac, a packaged game is an app bundle: right-click the .app, choose Show Package Contents, then open Contents/Resources/autorun/game. A game folder without any .rpa files usually ships its assets as loose files, so there is nothing to extract.
Method 1: Extract RPA files online in the browser
The online RPA extractor is free and needs no account or installation. Archives are read locally through the File API and parsed in a Web Worker; nothing from the archives is uploaded. Use this method when you want to see or hear assets before choosing what to save.
- Open your RPA archives. Open the browser tool at rpaextractorsoftware.com and drop in your .rpa file. You can add several archives to one combined file list. For RPA-1.0, drop both the .rpi index and its matching .rpa data file.
- Check the detected archive details. Review the archive version, file count, and total size. For 3.x archives, the tool also shows the XOR key. If an error appears, read it before continuing.
- Find and preview the files you need. Search by file name or filter by type. Preview supported images, audio, video, and text, then check the files you want to extract.
- Export one file, checked files, or everything. Choose the export scope. A single file downloads as the original file. For several files, browsers with a folder picker (Chrome and Edge on a computer) let you pick a destination folder and keep the folder structure; other browsers, such as Firefox and Safari, download a ZIP without recompressing the files. Use a desktop browser for many files.
The tool reads the index first and slices individual files on demand, so it never loads the whole archive into memory. Exporting a ZIP has separate memory needs. For many files, direct folder export on a desktop running Chrome or Edge is the recommended route.
Method 2: Extract RPA archives with unrpa
unrpa is a Python command-line extractor requiring Python 3.7 or later. Install it in your Python environment, then open a terminal in the directory containing your archive. These commands assume that Python's pip and the installed unrpa command are available in that terminal.
pip install unrpa
unrpa -mp out archive.rpa
On Windows, the unrpa README installs and runs it through the Python launcher instead, which avoids a missing pip or unrpa command when Python's Scripts folder is not on your PATH:
py -3 -m pip install "unrpa"
py -3 -m unrpa -mp "out" "archive.rpa"
If Command Prompt reports that py is not recognized, Python is not installed or was installed without the launcher; install it from python.org first.
The extraction command writes to out. The combined -mp uses -m to create missing output directories and -p to set the output path. Keeping output in a separate folder makes the extracted files easier to inspect. Replace the example archive name with your own; put paths containing spaces in quotes.
To inspect the contents without extracting, use either a flat list or a directory tree:
unrpa -l archive.rpa
unrpa -t archive.rpa
-l lists files and -t shows a tree. The latter is a listing option, not an archive integrity test. These flags and the extraction syntax are documented in the linked README; we checked them against unrpa 2.3.0 from PyPI on 13 November 2026.
Method 3: Extract or create RPA archives with rpatool
Download the rpatool script and run it with Python. Its GitHub repository is archived and points to the current home on Codeberg (repository status checked 13 November 2026). The examples below assume the script and archive are in your current directory. They use the script's documented extract, list, and create actions.
python rpatool -x archive.rpa -o out
python rpatool -l archive.rpa
-x extracts files, -o out selects the output directory, and -l lists the contents. To extract selected files, the README also documents file names after the archive argument. Use the names shown in the listing, including their archive-relative paths.
For your own project or one you have permission to modify, create a new archive with -c followed by the destination archive and input files:
python rpatool -c project.rpa script.rpy sprites
Here, script.rpy and sprites are example inputs that must exist on your computer. Choose a new destination name for your output. The browser extractor does not create or repack archives, so rpatool is the relevant option when creation is part of your workflow.
Extracting RPA files on Mac and Linux
The browser method works on Mac and Linux without a separate application. Chrome and Edge can export into a selected folder; Firefox and Safari build a ZIP download without recompressing its contents. Pick the export method that fits your archive and available memory.
For terminal use, unrpa's README documents python3 on Unix systems. If your system uses that command, install with python3 -m pip install unrpa and run the package as python3 -m unrpa -mp out archive.rpa. Likewise, substitute python3 for python in the rpatool examples when needed.
Opening RPA archives on Android and other phones
The browser tool needs no app, so a phone or tablet browser should be able to open the same page, add an archive from your files and preview it. What we have tested: the page layout at a 390-pixel phone width, and the reader in Chromium, Firefox and WebKit on a Mac, the engines behind Chrome, Firefox and Safari. What we have not tested: any of this on a physical phone or tablet, so treat all mobile use as expected to work rather than confirmed. Folder export appears only where the browser offers a folder picker; everywhere else the tool builds a ZIP.
A desktop browser is recommended for exporting many files. A phone that can open an archive is not necessarily a comfortable place to assemble a large ZIP. If exporting fails, try a smaller selection or move the archive to a desktop and use Chrome or Edge folder export.
Which RPA extraction method should you use?
| Your task | Method | Reason |
|---|---|---|
| Preview assets and extract a selection | Browser tool | No setup; image, audio, video, and text previews |
| Extract without uploading archives | Browser tool | Local archive processing |
| Script repeated jobs across many games | unrpa or rpatool | Command-line workflow |
| Create an archive for your project | rpatool | Documented archive creation action |
| Inspect files on a phone | Browser tool | No install; checked at phone screen width |
Only extract games you own or projects you are allowed to modify. Asset copyrights stay with their creators. Modding and translation require permission; extracting a file does not grant permission to publish it. For engine packaging details, consult the official Ren'Py build documentation.
After extracting: .rpyc files and unrpyc
An archive can contain compiled .rpyc scripts without the original .rpy text files. Extraction copies those compiled files as stored. It does not reconstruct source text, and this browser tool does not decompile scripts.
unrpyc is the usual separate tool for decompiling .rpyc files. Consult its own instructions if you have permission to work with those scripts. Recovering your own project's assets and recovering editable source are different tasks.
Common RPA extraction errors and fixes
- Unknown archive version: Confirm that the file is a Ren'Py archive and read the error. The browser tool cannot open deliberately obfuscated or encrypted custom builds.
- You have an .rpi file: For RPA-1.0, drop the index and matching
.rpadata file together in the browser. - No matching files appear: Clear the search and type filter, then check the reported file count.
- ZIP export runs out of memory: Export fewer files or use direct folder export in Chrome or Edge on a desktop.
- A terminal command cannot find a file: Check your current directory and archive path. Quote paths containing spaces, and confirm that the script or installed command is available.
- Python or pip is not found: Check your Python installation and command name against the tool's README. unrpa requires Python 3.7 or later.