Vad är filformatet RPA?
Filen .rpa är ett Ren'Py Archive - ett binärt containerformat som används av spelmotorn Ren'Py för att samla ett spels kompilerade skript och resurser i ett enda distribuerbart paket. Färdiga Ren'Py-spel levereras vanligtvis med en eller flera .rpa-filer (ofta med namnen archive.rpa, images.rpa eller scripts.rpa) inuti mappen game/.
Formatet inleds med en ASCII-huvudrad som deklarerar versionen - antingen RPA-2.0 eller den nuvarande RPA-3.0 - följt av en hex-offset till filindexet och, i RPA-3.0, en hex-XOR-obfuskationsnyckel. Indexet lagras som en zlib-komprimerad, „pickled” Python-dictionary som mappar interna sökvägar till offset/längd-par inuti arkivet. RPA-3.0 obfuserar dessa offsets lätt med nyckeln från huvudet, men detta är inte riktig kryptering och är enkelt att återställa.
Innehållande filer - kompilerade .rpyc-skript, bilder, ljud och video - lagras råa utan ytterligare komprimering, eftersom varje resurstyp vanligtvis redan är komprimerad. Arkivet ersätter de läsbara .rpy-källskripten, som inte inkluderas i utgivna versioner.
.rpa-filer är inte standard ZIP- eller RAR-arkiv och kan inte öppnas av generella verktyg som 7-Zip eller WinRAR. Extrahering kräver ett Ren'Py-anpassat verktyg som rpatool eller UnRen.
Säkerhet & trygghet
RISK: MEDIUMSjälva arkivcontainern är inerta data, men ett Ren'Py-spel packat i en .rpa innehåller kompilerade skript (.rpyc) som är körbar logik för Ren'Py-motorn och kan inkludera fullständig Python - så att KÖRA ett okänt Ren'Py-spel (eller installera en mod vars .rpa du inte har inspekterat) kan köra godtycklig kod på din maskin. Hämta spel och moddar från pålitliga källor, och om du extraherar en .rpa för att modda den, granska alla dekompilerade skript innan körning. „Obfuskeringen” i RPA-3.0 är inte kryptering och erbjuder ingen säkerhet; lita aldrig på den för att skydda hemligheter. Att extrahera ett arkiv är säkert; att köra dess kod är den del man bör vara försiktig med.
Formatdetaljer
i ett nötskal- RIB iTWO Project Archive - Bygg/BIM-programvaran RIB iTWO sparar projektarkiv som .rpa - öppnas endast med RIB iTWO; en liten minoritet av .rpa-filer (~9%) jämfört med den dominerande Ren'Py-betydelsen.
- RoboHelp / generiskt „projektarkiv” - Ett fåtal äldre verktyg har använt .rpa för orelaterade paketerade projektdata; sällsynt idag.
Program som öppnar RPA-filer
Tekniska detaljer
djup specifikation| Filsignatur (magic bytes) | ASCII-huvud som börjar med `RPA-3.0 ` (hex `52 50 41 2D 33 2E 30 20`) vid offset 0; `RPA-2.0 ` för den äldre varianten |
| Huvudstruktur | En enda ASCII-textrad som innehåller: versionstagg, hex-offset till indexet och (endast RPA-3.0) en hex-XOR-obfuskationsnyckel, avslutad med ett nyradstecken |
| Indexkodning | zlib-komprimerad Python `pickle`-dictionary som mappar interna filsökvägar till (offset, längd, prefix)-tupler |
| Indexobfuskering | RPA-3.0 XOR-obfuserar varje posts lagrade offset och längd med nyckeln som deklareras i huvudraden; enkelt reversibelt, inte äkta kryptering |
| Lagring av filer | Filer sammanfogas råa efter huvudet utan ytterligare komprimering; resurser (PNG, OGG, WEBM, RPYC) är redan komprimerade vid källan |
| Resurstyper som stöds | Kompilerade skript (`.rpyc`, `.rpymc`), bilder (PNG, JPEG, WEBP), ljud (OGG, MP3), video (WEBM) och godtyckliga speldatafiler |
| Gräns för indexposter | Ingen fast gräns; indexet är en pickled Python `dict` vars storlek endast begränsas av tillgängligt minne |
| Integritetskontroll | Ingen kontrollsumma lagras per fil; formatet förlitar sig på den inneboende integriteten hos de ingående resursfilerna |
| Versionsdeklaration | Formatversionen är självdeklarerad i den läsbara huvudraden (`RPA-2.0` eller `RPA-3.0`); verktyg upptäcker varianten vid inläsning utan ett separat manifest |
| Typisk arkivstorlek | Från några MB till flera GB beroende på mängden bilder, ljud och video som ingår i spelet |
| Målplattformar | Windows, macOS, Linux, Android, iOS - alla plattformar som officiellt stöds av Ren'Py-motorn |
| Typiska filnamn | `archive.rpa`, `images.rpa`, `scripts.rpa` - hittas inuti katalogen `game/` i en färdig Ren'Py-titel |
| Containerkompatibilitet | Inte en variant av ZIP, TAR eller RAR; generella arkiveringsprogram (7-Zip, WinRAR) kan inte öppna `.rpa`-filer |
| Utvecklare / underhållare | Tom Rothamel och Ren'Py-projektet (öppen källkod); formatet har utvecklats med motorn (första utgåvan 2004) |
| Släppt | Ren'Py engine archive format; RPA-3.0 is the long-standing version used by modern Ren'Py |
| Senaste version | RPA-3.0 (current); legacy RPA-2.0 exists; format header line declares the version |
| Öppen standard | Ja · royaltyfri |
| Specifikation | www.renpy.org |
RPA-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om RPA-filer.