Wat is het RXDATA-bestandsformaat?
Bestanden met de extensie .rxdata slaan spelgegevens op die zijn gemaakt in RPG Maker XP, een Windows-applicatie ontwikkeld door Enterbrain (nu Kadokawa) waarmee rollenspellen kunnen worden gemaakt zonder kennis van programmeertalen. RPG Maker XP is een Japanse productie, voor het eerst uitgebracht in 2004, gevolgd door een Engelstalige versie in 2005.
Onder de motorkap zijn .rxdata-bestanden binaire objecten die zijn geserialiseerd in het Marshal-formaat van Ruby (versie 4.8), het serialisatieformaat dat wordt gebruikt door de Ruby 1.8-runtime die is ingebed in de RGSS-scripting-engine van RPG Maker XP. Een compleet project bevat ongeveer 15 standaard .rxdata-bestanden - Actors.rxdata, Items.rxdata, Scripts.rxdata, en één MapXXX.rxdata per kaart, naast andere.
Games ontwikkeld in RPG Maker XP ondersteunen mogelijkheden waaronder:
- spelafbeeldingen met resoluties tot 640×480 pixels,
- RGBA-grafische bestanden,
- het RGSS-scriptingsysteem, aangedreven door Ruby,
- de mogelijkheid om bestanden te coderen in beveiligde spelarchieven.
Spelgegevens worden opgeslagen in .rxdata-bestanden en zijn niet compatibel met latere versies van RPG Maker. Latere versies slaan gegevens op in .rvdata (RPG Maker VX) of .rvdata2 (RPG Maker VX Ace).
Games ontwikkeld in RPG Maker XP slaan ook de spelstatus op in .rxdata-bestanden. Er bestaan gespecialiseerde editors die wijzigingen in opgeslagen spelgegevens mogelijk maken, hoewel dit geen officiële tools van de ontwikkelaar zijn. Huidige versies van RPG Maker bieden geen achterwaartse compatibiliteit met bestanden die zijn gemaakt in RPG Maker XP.
Beveiliging & veiligheid
RISICO: LOWRXDATA-bestanden zijn pure gegevensserialisatie - ze bevatten geen direct uitvoerbare code. Scripts.rxdata bevat Ruby-scripttekst (gecomprimeerd), maar deze code wordt alleen uitgevoerd binnen de RGSS-runtime wanneer het spel wordt gestart. Het louter openen of converteren van een RXDATA-bestand brengt geen risico met zich mee.
Formaatdetails
in een notendopProgramma's die RXDATA-bestanden openen
Technische details
diepe specificaties| Serialisatieformaat | Ruby Marshal versie 4.8 (gekoppeld aan Ruby 1.8.x gebruikt door de RGSS-runtime) |
| Magic bytes | 0x04 0x08 op offset 0 (Ruby Marshal-versieheader) |
| Codering | Binair |
| Byte-volgorde | Big-endian |
| Container | Ruby Marshal geserialiseerde objectboom - arrays, hashes, symbolen, strings, integers, aangepaste klasse-instanties |
| Compressie | Geen op bestandsniveau; Scripts.rxdata slaat elke scripttekst op als een individueel met zlib DEFLATE gecomprimeerde string |
| Scripting-runtime | RGSS (Ruby Game Scripting System) met Ruby 1.8.6 |
| Standaard projectbestanden | ~15 gegevensbestanden met vaste namen per project (Actors, Items, Skills, Weapons, Maps, Scripts, System, etc.) |
| Typische grootte | 1 KB - 5 MB per bestand; Scripts.rxdata kan tientallen MB's bereiken |
| Bijbehorend OS | Windows |
| Compatibiliteit | Incompatibel met RPG Maker VX (RVDATA), VX Ace (RVDATA2), MV en MZ |
| Vervangen door | .rvdata (RPG Maker VX, 2007), daarna .rvdata2 (RPG Maker VX Ace, 2011) |
| Uitgebracht | 2004 (RPG Maker XP, first Japanese release; Western release 2005) |
| Laatste versie | Ruby Marshal version 4.8 (Ruby 1.8.x era); format has not changed |
| Specificatie | ruby-doc.org |