Difference between revisions of "RKG (File Format)"
Jump to navigation
Jump to search
(New information about format written up.) |
|||
Line 13: | Line 13: | ||
| 0x04 | | 0x04 | ||
| char[3] | | char[3] | ||
− | | time | + | | time (7 bits minutes, 7 bits seconds, 10 bits milliseconds) |
|- | |- | ||
| 0x07 | | 0x07 | ||
| char[1] | | char[1] | ||
− | | track (important - determines on which slot it loads.) | + | | track (important - determines on which slot it loads. Non-standard.) |
|- | |- | ||
| 0x08 | | 0x08 | ||
Line 33: | Line 33: | ||
| 0x0C | | 0x0C | ||
| char[2] | | char[2] | ||
− | | 00 04 for normal/your own ghost, 08 94 for staff ghost and 08 98 for expert ghost. | + | | A bitfield indicating ghost properties. 08 00 indicates compression. 00 04 for normal/your own ghost, 08 94 for staff ghost and 08 98 for expert ghost. |
|- | |- | ||
| 0x0E | | 0x0E | ||
| char[2] | | char[2] | ||
− | | | + | | Decompressed input data length (from 0x88 onwards) |
|- | |- | ||
| 0x10 | | 0x10 | ||
Line 93: | Line 93: | ||
| 0x88 | | 0x88 | ||
| int | | int | ||
− | | Length of the Yaz1 data in bytes. | + | | Length of the Yaz1 data in bytes, if data is compressed. Start of input data if not. |
|- | |- | ||
| 0x8C | | 0x8C |
Revision as of 23:29, 20 December 2015
RKG is the format of ghost data. In a savefile all ghosts are saved in the rksys file. Staff ghosts are saved each in a rkg file on the disc.
Offset | Type | Description |
---|---|---|
0x00 | char[4] | 'RKGD' in ASCII; File identifier |
0x04 | char[3] | time (7 bits minutes, 7 bits seconds, 10 bits milliseconds) |
0x07 | char[1] | track (important - determines on which slot it loads. Non-standard.) |
0x08 | char[1] | vehicle |
0x09 | char[1] | character |
0x0A | char[2] | Unknown / Used controller? |
0x0C | char[2] | A bitfield indicating ghost properties. 08 00 indicates compression. 00 04 for normal/your own ghost, 08 94 for staff ghost and 08 98 for expert ghost. |
0x0E | char[2] | Decompressed input data length (from 0x88 onwards) |
0x10 | char[1] | Lap count (tested with lap modifier) |
0x11 | char[3] | 1st lap time |
0x14 | char[3] | 2nd lap time |
0x17 | char[3] | 3rd lap time |
0x1A | char[3] | 4th lap time |
0x1D | char[3] | 5th lap time |
0x20 | char[20] | padding / NOT 6th lap and so on. |
0x34 | char | country (see http://wiibrew.org/wiki/Country_Codes) |
0x35 | char | state (see MKWii_Network_Protocol/USER/State_codes) |
0x36 | char[2] | Unused - always 0x00 |
0x38 | char[2] | Padding (00 00) |
0x3C | char[4B] | Driver's Mii Data |
0x52 | char[1] | country |
0x88 | int | Length of the Yaz1 data in bytes, if data is compressed. Start of input data if not. |
0x8C | char | The actual ghost controller input data. outside of the savegame it is compressed in Yaz0 with Yaz1 as an file identifier. |
int | A CRC-32 Checksum of the whole file (excluding the last 4 bytes of course). |
The bytes 0x34 to 0x37 are set to 0xFFFFFFFF if the user who created that ghost data disabled sharing his country / location information.