-
Notifications
You must be signed in to change notification settings - Fork 0
ROFL2 Container Notes
The ROFL2 model was something introduced by Riot Games around patch 14.9. Their engineers had completely re-written the replay service in order to support game modes like Arena and TFT. This new model is severely pared down compared to the original ROFL container, however critical metadata was re-introduced in patch 14.11.
Each ROFL2 file starts with the same 6 bytes: 0x52, 0x49, 0x4F, 0x54, 0x02, 0x00. In ASCII that is "RIOT2\0" where "\0" is a null byte.
The values of the bytes in this section of the header is unknown.
14 character string. Example: "14.10.586.9705".
Unknown data.
Nothing is known about the payload. It is assumed that it is also obfuscated and encrypted much like the ROFL payload.
In the initial version of ROFL2, there is nothing else to the replay file. These initial versions are usually from patch 14.9 and before 14.11.
All files after 14.11 have the following appended to the format:
JSON Metadata (See Metadata Size)
Escaped JSON string, contains data about the game.
See Metadata2 model definition. For the player model, see the PlayerStats2 model and it's base class PlayerStats.
The last 4 bytes of ROFL2 denote how many bytes long the JSON Metadata is. Type is assumed to be uint32.