Ca:.rpl

From X-Moto
Revision as of 02:41, 11 October 2006 by Trullo (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

English - Español

Es un arxiu binari, aquí tens una descripció del seu format.

Format

Encapçalament

n Bytes Tipus Nom Valor Predeterminat Comentari
1 Byte Version 0x01 Versió de la repetició
4 Little-endian integer N/A 0x12345678 petita/gran entitat de seguretat
? STRING Level ID ID del Nivell
? STRING PlayerName Nom del jugador
4 Little-endian float FrameRate 25 Rati de fotogrames de la repetició
4 Little-endian integer StateSize Tamany de la pantalla
1 Boolean Finished 0x00 or 0x01 Nivell finalitzat ? (0x01 = true)
4 Little-endian float FinishTime Temps total (en segons)

Esdeveniments

La versió 1 dels .rpl inclou dades dels esdeveniments:

n Bytes Tipus Nom Valor Predeterminat Comentari
4 Little-endian integer InputEventsDataSize Tamany d'esdeveniments sense comprimir
1 Boolean N/A 0x00 or 0x01 Esdeveniments comprimits? (0x01 = true)

Si les dades dels esdeveniments estan comprimides:

n Bytes Tipus Nom Valor Predeterminat Comentari
4 Little-endian integer CompressedEventsSize Tamany d'esdeveniments comprimits
CompressedEventsSize BUFFER CompressedEvents Esdeveniments comprimits

i si les dades no estan comprimides:

n Bytes Tipus Nom Valor Predeterminat Comentari
InputEventsDataSize BUFFER InputEventsData Esdeveniments sense comprimir

Trossos

n Bytes Tipus Nom Valor Predeterminat Comentari
4 Little-endian integer NumChunks Numero de Trossos

Per a cada Tros :

n Bytes Tipus Nom Valor Predeterminat Comentari
4 Little-endian integer NumStates Numero de estats del Tros
1 Boolean N/A 0x00 or 0x01 Estan els estats comprimits? (0x01 = true)

Si les dades del estat estan comprimides:

n Bytes Tipus Nom Valor Predeterminat Comentari
4 Little-endian integer CompressedSize Tamany dels estats comprimits
CompressedSize BUFFER Compressed Estats comprimits

si les dades dels estats no estan comprimides:

n Bytes Tipus Nom Valor Predeterminat Comentari
NumStates * StateSize BUFFER ChunkData Estats sense comprimir

Explicacions

STRINGs estan emmagatzemades en forma similar al Pascal, on el primer byte indica la longitud de la cadena, seguit de la cadena. Fixa't que no hi ha cap marca \0 per senyalar el final de la cadena. I si, això significa que no pot ser mes llarga de 255 caràcters

BUFFERs son les STRINGs sense el primer byte "dient la llargada de la cadena". Fixa't que probablement no hi ha cap marca \0 per senyalar el final del buffer!

Les dades estan comprimides amb el format GZip.

Estats

Per fer

Trossos

Per fer

"States" follow "Serialized bike state". (en MotoGame.h linia ~200)

Mira't També