Was ist das RPY-Dateiformat?
.rpy ist eine Skriptdatei, die von der Ren'Py Visual-Novel-Engine verwendet wird. Obwohl die Dateiendung des Formats an seine .py-Wurzeln erinnert, ist eine .rpy-Datei kein reiner Python-Quellcode: Sie ist in Ren'Pys eigener domänenspezifischer Sprache geschrieben, die High-Level-Storytelling-Anweisungen - wie Charakterdialoge, Szenenanweisungen, verzweigte Menüs und bedingte Story-Abläufe - über die vertrauten Syntaxregeln von Python legt. .rpy-Dateien können Code enthalten, der direkt in Python neben Ren'Py-spezifischen Anweisungen geschrieben wurde.
.rpy ist eine Klartextdatei, die in UTF-8 kodiert ist und in jedem Texteditor geöffnet und bearbeitet werden kann. Autoren, die .rpy-Skripte bearbeiten, müssen auf die Einrückung achten, da Ren'Py Einrückungen verwendet, um Codeblöcke zu definieren, genau wie Python. Für fortgeschrittene Logik können Skripte rohes Python innerhalb von python:-Blöcken oder über das einzeilige Präfix $ einbetten, was Autoren Zugriff auf die vollständige Standardbibliothek von Python innerhalb eines Ren'Py-Projekts gibt.
Wenn Ren'Py ein Spiel startet, kompiliert es jede .rpy-Quelldatei in eine binäre .rpyc-Cache-Datei für schnelleres Laden. Veröffentlichte Spiele enthalten normalerweise nur die kompilierten .rpyc-Dateien, die oft in einem .rpa-Archiv verpackt sind, sodass Spieler den .rpy-Quellcode normalerweise nicht sehen. Community-Tools wie unrpyc können .rpyc-Dateien wieder in lesbare .rpy-Skripte dekompilieren.
Ein typisches Projekt teilt seine Geschichte und Logik auf viele .rpy-Dateien auf - eine könnte Charaktere und Variablen definieren, eine andere Menübildschirme verwalten und eine weitere die Haupterzählung enthalten. Das Ren'Py SDK behandelt alle .rpy-Dateien in einem Projektverzeichnis als ein einziges Programm und kompiliert sowie verknüpft sie beim Start miteinander.
Sicherheit
RISIKO: MEDIUMEine .rpy ist Klartext und kann sicher in einem Editor geöffnet werden, aber sie enthält ausführbare Logik für die Ren'Py-Engine und kann vollständiges Python in python:-Blöcken enthalten - das Ausführen eines nicht vertrauenswürdigen Ren'Py-Spiels oder Mods kann daher beliebigen Code auf Ihrem Rechner ausführen. Lesen Sie Skripte von unbekannten Mods, bevor Sie sie einem Spiel hinzufügen, und beziehen Sie Spiele/Mods aus seriösen Quellen. Das Bearbeiten des Dialogtexts selbst ist harmlos; das Einfügen unbekannter python:-Blöcke hingegen nicht.
Formatdetails
kurz gefasst- Twisted Resource (Python-Webskript) - Veraltetes .rpy, das vom Twisted/twistd-Webserver als Python-Skript verwendet wird, das ein Ressourcenobjekt zurückgibt - nicht verwandt mit Ren'Py.
- RPGMaker / diverse generische Python-Skripte - Einige Tools haben historisch jeden gespeicherten Python-Quellcode als .rpy bezeichnet; heute dominiert die Ren'Py-Bedeutung.
Programme zum Öffnen von RPY-Dateien
Technische Details
technische Spezifikation| Dateikategorie | Klartext-Quellskript - Ren'Pys domänenspezifische Sprache für Visual Novels |
| Kodierung | UTF-8 Klartext; keine binären Magic Bytes oder Byte-Order-Mark erforderlich |
| MIME-Typ | text/plain (von generischen Tools auch als text/x-python erkannt) |
| Kompilierte Form | Jede .rpy wird beim Start von der Ren'Py-Engine in eine binäre .rpyc-Datei kompiliert |
| Einrückungsregel | Signifikante Leerzeichen-Einrückung im Python-Stil definiert alle Codeblöcke |
| Kern-Anweisungstypen | label, jump, call, menu, scene, show, hide, play, define, init |
| Eingebettetes Python | Vollständiger Python-Code zugänglich über python:-Blöcke und das einzeilige $-Präfix |
| Python-Version | Ren'Py 6 und 7 verwenden Python 2-Syntax; Ren'Py 8 und neuer erfordern Python 3-Syntax |
| Typische Dateigröße | 1 KB bis ca. 500 KB; ein vollständiges Spielprojekt umfasst mehrere .rpy-Dateien |
| Verbreitungsmethode | Spiele liefern kompilierte .rpyc-Dateien in .rpa-Archiven aus - nicht den .rpy-Quellcode |
| Plattformunterstützung | Erstellt auf Windows, macOS, Linux; Spiele lassen sich auch für Android und iOS bauen und ausführen |
| Projekt-Kompilierung | Alle .rpy-Dateien im Spielverzeichnis werden beim Start als ein einziges Programm kompiliert und verknüpft |
| Syntaxfehler-Meldung | Das Ren'Py SDK zeigt Syntax- und Logikfehler beim Start mit Dateiname und Zeilennummer an |
| Dekompilierung | Das Community-Tool unrpyc kann .rpy-Quellcode aus kompilierter .rpyc-Bytecode rekonstruieren |
| Zeichenunterstützung | Vollständiges Unicode via UTF-8 für mehrsprachige Dialogtexte und Bezeichnernamen |
| Veröffentlicht | Ren'Py engine, first release 2004 |
| Neueste Version | Ren'Py 8.x (Python 3 based); script syntax tracks the engine release |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | www.renpy.org |
RPY-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu RPY-Dateien.