Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
savegame:tr4 [2017/01/30 22:56] – created zdimension | trs:savegame:tr4 [2017/03/25 19:20] (current) – zdimension | ||
---|---|---|---|
Line 3: | Line 3: | ||
[[https:// | [[https:// | ||
<code cpp> | <code cpp> | ||
- | struct | + | struct |
{ | { | ||
- | uint8_t | + | uint8_t |
- | uint8_t unknown1[35]; | + | int32_t |
- | int32_t | + | uint16_t |
- | uint16_t | + | uint16_t |
- | uint16_t | + | uint16_t |
- | uint16_t | + | uint16_t |
- | uint16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | |
uint8_t unknown2[6]; | uint8_t unknown2[6]; | ||
- | int16_t | + | int16_t |
uint8_t unknown3[20]; | uint8_t unknown3[20]; | ||
- | int16_t | + | int16_t |
uint8_t unknown3b[2]; | uint8_t unknown3b[2]; | ||
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
uint8_t unknown3a[16]; | uint8_t unknown3a[16]; | ||
- | uint8_t | + | uint8_t |
uint8_t unknown4[95]; | uint8_t unknown4[95]; | ||
- | int16_t | + | int16_t |
uint8_t unknown4a[108]; | uint8_t unknown4a[108]; | ||
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | int8_t | + | int8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
uint8_t unknown5; | uint8_t unknown5; | ||
- | uint8_t | + | uint8_t |
uint8_t unknown6; | uint8_t unknown6; | ||
- | uint8_t | + | uint8_t |
uint8_t unknown7; | uint8_t unknown7; | ||
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
- | int16_t | + | int16_t |
uint8_t unknown8[57]; | uint8_t unknown8[57]; | ||
- | uint8_t | + | uint8_t |
uint8_t unknown9; // clock?? | uint8_t unknown9; // clock?? | ||
- | uint32_t | + | uint32_t |
- | uint32_t | + | uint32_t |
- | int32_t | + | int32_t |
- | int32_t | + | int32_t |
uint8_t unknown10[2]; | uint8_t unknown10[2]; | ||
- | uint8_t | + | uint8_t |
- | uint8_t | + | uint8_t |
uint8_t unknown11[16]; | uint8_t unknown11[16]; | ||
- | uint16_t | + | uint16_t |
uint8_t unknown11a[11]; | uint8_t unknown11a[11]; | ||
struct | struct | ||
Line 84: | Line 83: | ||
uint8_t green; | uint8_t green; | ||
uint8_t red; | uint8_t red; | ||
- | } FogColour; | + | } fogColour; |
- | int8_t | + | int8_t |
uint8_t unknown12[172]; | uint8_t unknown12[172]; | ||
- | uint8_t | + | uint8_t |
// When reading a TR4 savegame, first jump to EOF - 8 and check if the string " | // When reading a TR4 savegame, first jump to EOF - 8 and check if the string " | ||
// is present. If that is the case, then it is a NGLE savegame. | // is present. If that is the case, then it is a NGLE savegame. | ||
- | // It means that the " | + | // It means that the " |
- | // a length of (file length) - (pos of TheGreatUnknown) - NGHeader.size | + | // a length of (file length) - (pos of theGreatUnknown) - sizof(ngHeader) |
#if NGLE | #if NGLE | ||
struct | struct | ||
Line 98: | Line 97: | ||
uint8_t data[size - 8]; | uint8_t data[size - 8]; | ||
uint8_t signature[4]; | uint8_t signature[4]; | ||
- | uint32_t size; | + | uint32_t size; // size of the file - size of ngHeader |
- | } NGHeader; | + | } ngHeader; |
#endif | #endif | ||
}; | }; | ||
</ | </ |