Che cos'è il formato di file RPY?
.rpy è un file di script utilizzato dal motore per visual novel Ren'Py. Sebbene l'estensione del formato richiami le sue radici .py, un file .rpy non è un semplice sorgente Python: è scritto nel linguaggio specifico di Ren'Py, che sovrappone istruzioni narrative di alto livello - dialoghi dei personaggi, direttive di scena, menu a scelta multipla e flusso narrativo condizionale - alle familiari regole sintattiche di Python. I file .rpy possono contenere codice scritto direttamente in Python insieme alle istruzioni specifiche di Ren'Py.
.rpy è un file di testo semplice codificato in UTF-8 e può essere aperto e modificato in qualsiasi editor di testo. Gli autori che modificano gli script .rpy devono prestare attenzione all'indentazione, poiché Ren'Py utilizza l'indentazione per definire i blocchi di codice, proprio come fa Python. Per la logica avanzata, gli script possono incorporare Python puro all'interno di blocchi python: o tramite il prefisso a riga singola $, offrendo agli autori l'accesso all'intera libreria standard di Python all'interno di un progetto Ren'Py.
Quando Ren'Py avvia un gioco, compila ogni file sorgente .rpy in un file cache binario .rpyc per un caricamento più rapido. I giochi distribuiti solitamente includono solo i file compilati .rpyc, spesso impacchettati all'interno di un archivio .rpa, quindi i giocatori normalmente non vedono il sorgente .rpy. Strumenti della comunità come unrpyc possono decompilare i file .rpyc riportandoli a script .rpy leggibili.
Un tipico progetto suddivide la sua storia e la sua logica in molti file .rpy - uno potrebbe definire personaggi e variabili, un altro gestire le schermate dei menu, un altro contenere la narrazione principale. L'SDK di Ren'Py tratta tutti i file .rpy in una directory di progetto come un unico programma, compilandoli e collegandoli insieme all'avvio.
Sicurezza e incolumità
RISCHIO: MEDIUMUn .rpy è testo semplice e sicuro da aprire in un editor, ma è logica eseguibile per il motore Ren'Py e può contenere Python completo all'interno di blocchi python: - pertanto l'esecuzione di un gioco o mod Ren'Py non attendibile può eseguire codice arbitrario sulla tua macchina. Leggi gli script di mod sconosciute prima di aggiungerli a un gioco e ottieni giochi/mod da fonti affidabili. Modificare il testo del dialogo in sé è innocuo; incollare blocchi python: sconosciuti non lo è.
Dettagli del formato
in sintesi- Twisted Resource (script web Python) - Legacy .rpy utilizzato dal server web Twisted/twistd come script Python che restituisce un oggetto risorsa - non correlato a Ren'Py.
- RPGMaker / altri script Python generici - Alcuni strumenti storicamente etichettavano qualsiasi sorgente Python salvato come .rpy; oggi il significato legato a Ren'Py è predominante.
Programmi che aprono file RPY
Dettagli tecnici
specifiche approfondite| Categoria del file | Script sorgente in testo semplice - linguaggio specifico di Ren'Py per visual novel |
| Codifica | Testo semplice UTF-8; nessun magic byte binario o byte-order mark richiesto |
| Tipo MIME | text/plain (riconosciuto anche come text/x-python da strumenti generici) |
| Forma compilata | Ogni .rpy viene compilato in un file binario .rpyc dal motore Ren'Py all'avvio |
| Regola di indentazione | L'indentazione degli spazi bianchi significativa in stile Python definisce tutti i blocchi di codice |
| Tipi di istruzioni principali | label, jump, call, menu, scene, show, hide, play, define, init |
| Python incorporato | Codice Python completo accessibile tramite blocchi python: e il prefisso di istruzione a riga singola $ |
| Versione Python | Ren'Py 6 e 7 usano la sintassi Python 2; Ren'Py 8 e successivi richiedono la sintassi Python 3 |
| Dimensione tipica del file | Da 1 KB a circa 500 KB; un progetto di gioco completo si estende su più file .rpy |
| Metodo di distribuzione | I giochi distribuiscono file .rpyc compilati impacchettati in archivi .rpa - non il sorgente .rpy |
| Supporto piattaforma | Creato su Windows, macOS, Linux; i giochi vengono compilati ed eseguiti anche su Android e iOS |
| Compilazione del progetto | Tutti i file .rpy nella directory del gioco vengono compilati e collegati come un unico programma al lancio |
| Segnalazione errori di sintassi | L'SDK di Ren'Py segnala errori di sintassi e logica all'avvio con nome del file e numero di riga |
| Decompilazione | Lo strumento della comunità unrpyc può ricostruire il sorgente .rpy dal bytecode compilato .rpyc |
| Supporto caratteri | Unicode completo tramite UTF-8 per testi di dialogo multilingue e nomi di identificatori |
| Rilasciato | Ren'Py engine, first release 2004 |
| Ultima versione | Ren'Py 8.x (Python 3 based); script syntax tracks the engine release |
| Standard aperto | Sì · royalty-free |
| Specifica | www.renpy.org |
Conversioni RPY
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file RPY.