Was ist das RPA-Dateiformat?
Die .rpa-Datei ist ein Ren'Py Archive - ein binäres Containerformat, das von der Ren'Py Visual-Novel-Engine verwendet wird, um die kompilierten Skripte und Assets eines Spiels in einem einzigen verteilbaren Paket zu bündeln. Erstellte Ren'Py-Spiele werden normalerweise mit einer oder mehreren .rpa-Dateien (häufig archive.rpa, images.rpa oder scripts.rpa genannt) innerhalb des game/-Ordners ausgeliefert.
Das Format beginnt mit einer ASCII-Header-Zeile, die die Version deklariert - entweder RPA-2.0 oder das aktuelle RPA-3.0 - gefolgt von einem Hex-Offset zum Dateiindex und, in RPA-3.0, einem Hex-XOR-Obfuskationsschlüssel. Der Index wird als zlib-komprimiertes, „gepickeltes“ Python-Dictionary gespeichert, das interne Pfade auf Offset/Längen-Paare innerhalb des Archivs abbildet. RPA-3.0 obfuskiert diese Offsets leicht mit dem Schlüssel aus dem Header, aber dies ist keine echte Verschlüsselung und trivial umkehrbar.
Enthaltene Dateien - kompilierte .rpyc-Skripte, Bilder, Audio und Video - werden im Rohzustand ohne erneute Komprimierung gespeichert, da jeder Asset-Typ normalerweise bereits komprimiert ist. Das Archiv ersetzt die menschenlesbaren .rpy-Quellskripte, die in Release-Builds nicht enthalten sind.
.rpa-Dateien sind keine Standard-ZIP- oder RAR-Archive und können nicht mit Allzweck-Werkzeugen wie 7-Zip oder WinRAR geöffnet werden. Die Extraktion erfordert ein Ren'Py-spezifisches Dienstprogramm wie rpatool oder UnRen.
Sicherheit
RISIKO: MEDIUMDer Archiv-Container selbst besteht aus inerten Daten, aber ein in einer .rpa verpacktes Ren'Py-Spiel enthält kompilierte Skripte (.rpyc), die ausführbare Logik für die Ren'Py-Engine darstellen und vollständiges Python enthalten können - das AUSFÜHREN eines nicht vertrauenswürdigen Ren'Py-Spiels (oder das Installieren eines Mods, dessen .rpa Sie nicht geprüft haben) kann daher beliebigen Code auf Ihrem Rechner ausführen. Beziehen Sie Spiele und Mods aus seriösen Quellen. Wenn Sie eine .rpa extrahieren, um sie zu modden, prüfen Sie alle dekompilierten Skripte vor der Ausführung. Die „Obfuskation“ in RPA-3.0 ist keine Verschlüsselung und bietet keine Sicherheit; verlassen Sie sich niemals darauf, um Geheimnisse zu schützen. Das Extrahieren eines Archivs ist sicher; das Ausführen seines Codes ist der Teil, bei dem man vorsichtig sein muss.
Formatdetails
kurz gefasst- RIB iTWO Projektarchiv - Die Bau-/BIM-Software RIB iTWO speichert Projektarchive als .rpa - diese werden nur mit RIB iTWO geöffnet; eine kleine Minderheit der .rpa-Dateien (~9 %) gegenüber der dominierenden Ren'Py-Bedeutung.
- RoboHelp / generisches „Projektarchiv“ - Einige ältere Tools haben .rpa für nicht verwandte paketierte Projektdaten verwendet; heute selten.
Programme zum Öffnen von RPA-Dateien
Technische Details
technische Spezifikation| Dateisignatur (Magic Bytes) | ASCII-Header beginnend mit `RPA-3.0 ` (Hex `52 50 41 2D 33 2E 30 20`) bei Offset 0; `RPA-2.0 ` für die ältere Variante |
| Header-Struktur | Einzelne ASCII-Textzeile enthaltend: Versions-Tag, Hex-Offset zum Index und (nur RPA-3.0) einen Hex-XOR-Obfuskationsschlüssel, abgeschlossen durch ein Zeilenumbruchzeichen |
| Index-Kodierung | zlib-komprimiertes Python-`pickle`-Dictionary, das interne Dateipfade auf (Offset, Länge, Präfix)-Tupel abbildet |
| Index-Obfuskation | RPA-3.0 obfuskiert den gespeicherten Offset und die Länge jedes Eintrags per XOR mit dem im Header deklarierten Schlüssel; trivial umkehrbar, keine echte Verschlüsselung |
| Speicherung enthaltener Dateien | Dateien werden nach dem Header roh aneinandergefügt, ohne zusätzliche Komprimierung; Assets (PNG, OGG, WEBM, RPYC) sind bereits an der Quelle komprimiert |
| Unterstützte Asset-Typen | Kompilierte Skripte (`.rpyc`, `.rpymc`), Bilder (PNG, JPEG, WEBP), Audio (OGG, MP3), Video (WEBM) und beliebige Spieldatendateien |
| Limit für Indexeinträge | Kein festes Limit; der Index ist ein gepickeltes Python-`dict`, dessen Größe nur durch den verfügbaren Speicher begrenzt ist |
| Integritätsprüfung | Es wird keine Prüfsumme pro Datei gespeichert; das Format verlässt sich auf die inhärente Integrität der enthaltenen Asset-Dateien |
| Versionsdeklaration | Die Formatversion wird in der Klartext-Headerzeile selbst deklariert (`RPA-2.0` oder `RPA-3.0`); Tools erkennen die Variante beim Parsen ohne separates Manifest |
| Typische Archivgröße | Einige MB bis mehrere GB, abhängig von der Menge der im Spiel gebündelten Bilder, Audio- und Videodateien |
| Zielplattformen | Windows, macOS, Linux, Android, iOS - alle offiziell von der Ren'Py-Engine unterstützten Plattformen |
| Typische Dateinamen | `archive.rpa`, `images.rpa`, `scripts.rpa` - zu finden im `game/`-Verzeichnis eines installierten Ren'Py-Titels |
| Container-Kompatibilität | Keine ZIP-, TAR- oder RAR-Variante; Allzweck-Archivierer (7-Zip, WinRAR) können `.rpa`-Dateien nicht öffnen |
| Entwickler / Maintainer | Tom Rothamel und das Ren'Py-Open-Source-Projekt; das Format entwickelte sich mit der Engine (erstmals veröffentlicht 2004) |
| Veröffentlicht | Ren'Py engine archive format; RPA-3.0 is the long-standing version used by modern Ren'Py |
| Neueste Version | RPA-3.0 (current); legacy RPA-2.0 exists; format header line declares the version |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | www.renpy.org |
RPA-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu RPA-Dateien.