Ren’Py RPA: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks |
imported>Ikskoks |
(No difference)
| |
Revision as of 14:21, 24 April 2022
Back to index | Edit this page
RPA
- Format Type : Archive
- Endian Order : Little Endian
- Signatures : RPA-1.0 / RPA-2.0 / RPA-3.0 / RPA-4.0
Format Specifications
// header
7 bytes (char) - signature // e.g. "RPA-3.0"
1 byte (char) - separator // 0x20
16 bytes (char) - file index offset // e.g. "00000000005096c9" which is offset 5281481
1 byte (char) - separator // 0x20
8 bytes (char) - file index encryption key // e.g. "42424242" which is key 1111638594
// file data
num_of_files *
{
17 bytes (char) - engine string // "Made with Ren'Py."
x bytes - data
}
// file index (compressed with ZLIB)
// index is serialized with Python "Pickle" module (protocol version 2)
// more info here https://docs.python.org/3/library/pickle.html
// and here https://peps.python.org/pep-3154/
// and here http://fileformats.archiveteam.org/wiki/Pickle
// index is also encrypted with simple XOR
{
2 bytes (uint16) - protocol signature // 0x80 0x02
num_of_frames *
{
1 byte (uint8) - frame opcode
4 bytes (uint32) - unknown
4 bytes (uint32) - frame size
x bytes - frame data // encrypted
}
}
MultiEx BMS Script
Not written yet.
Notes and Comments
- This file format occurs in games made on Ren’Py Engine.
- This file format uses ZLIB compression and XOR encryption.
Games
List of games using this file format:
- Arcade Spirits (*.RPA) (PC)
- Doki Doki Literature Club! (*.RPA) (PC)
- Our Life: Beginnings & Always (*.RPA) (PC)
- many more...
Compatible Programs