Persist.dat: Difference between revisions

From OniGalore
Jump to navigation Jump to search
(If someone can fix the table so that I can put more things underneath it without it being attached to the table, that would be great.)
("New Info" - level unlocks >31)
Line 1: Line 1:
==Unlocking more levels==
==Unlocking more levels==
To unlock (all) of the levels, fill the range 0x08 to 0x28 with "FF". So far this has caused no problems, and allows you to add more levels to the game. Levels will not be visible unless there is a corrisponding LevelX_Final.dat in the Gamedata folder, and an ONLD that matches the level number in the level0_final.dat.
To unlock (all) of the levels, fill the range 0x08 to 0x28 with "FF". So far this has caused no problems, and allows you to add more levels to the game. Levels will not be visible unless there is a corrisponding LevelX_Final.dat in the Gamedata folder, and an ONLD that matches the level number in the level0_final.dat. Levels abouve 39 are not currently unlockable due to the 40 level savepoint limit in the persist.dat (probably reflecting an underlying engine restriction).


==Header==
==Header==
Line 12: Line 11:
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">5C 7F 0C 00<TD>819036<TD ALIGN=LEFT>the levels that are visible in the "load game" list; it's a bitset; the following bits are possible:<P>
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">5C 7F 0C 00<TD>819036<TD ALIGN=LEFT>the levels that are visible in the "load game" list; it's a bitset; the following bits are possible:<P>
<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0>
<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0>
Level unlock data for 0-31
<TR VALIGN=TOP><TD ALIGN=RIGHT>1 -&nbsp;<TD>level 0*</TR>
<TR VALIGN=TOP><TD ALIGN=RIGHT>1 -&nbsp;<TD>level 0*</TR>
<TR VALIGN=TOP><TD ALIGN=RIGHT>2 -&nbsp;<TD>level 1*</TR>
<TR VALIGN=TOP><TD ALIGN=RIGHT>2 -&nbsp;<TD>level 1*</TR>
Line 18: Line 18:
<TR VALIGN=TOP><TD ALIGN=RIGHT>524288 -&nbsp;<TD>level 19</TR>
<TR VALIGN=TOP><TD ALIGN=RIGHT>524288 -&nbsp;<TD>level 19</TR>
</TABLE>*) level 0 and 1 are always visible, so these bits aren't used
</TABLE>*) level 0 and 1 are always visible, so these bits aren't used
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">&nbsp;<TD>&nbsp;<TD ALIGN=LEFT>unknown
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">00 00 00 00<TD>&nbsp;<TD ALIGN=LEFT>Level unlock data for 31-63
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">00 00 00 00<TD>&nbsp;<TD ALIGN=LEFT>Level unlock data for 63-95
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">00 00 00 00<TD>&nbsp;<TD ALIGN=LEFT>Level unlock data for 95-127
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">00 00 00 00<TD>&nbsp;<TD ALIGN=LEFT>Level unlock data for 127-159
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">00 00 00 00<TD>&nbsp;<TD ALIGN=LEFT>Level unlock data for 159-191
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">00 00 00 00<TD>&nbsp;<TD ALIGN=LEFT>Level unlock data for 191-224
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FF0000">00 00 00 00<TD>&nbsp;<TD ALIGN=LEFT>Level unlock data for 191-255
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FFFF00">01 00 00 00<TD>1<TD ALIGN=LEFT>killed griffin (0 = no, 1 = yes)
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#FFFF00">01 00 00 00<TD>1<TD ALIGN=LEFT>killed griffin (0 = no, 1 = yes)
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#00FF00">FE 1B 00 00<TD>7166<TD ALIGN=LEFT>unknown, but it's a bitset
<TR VALIGN=TOP ALIGN=CENTER BGCOLOR="#FFEEDD"><TD BGCOLOR="#00FF00">FE 1B 00 00<TD>7166<TD ALIGN=LEFT>unknown, but it's a bitset

Revision as of 00:58, 25 August 2008

Unlocking more levels

To unlock (all) of the levels, fill the range 0x08 to 0x28 with "FF". So far this has caused no problems, and allows you to add more levels to the game. Levels will not be visible unless there is a corrisponding LevelX_Final.dat in the Gamedata folder, and an ONLD that matches the level number in the level0_final.dat. Levels abouve 39 are not currently unlockable due to the 40 level savepoint limit in the persist.dat (probably reflecting an underlying engine restriction).

Header

Persist header.gif

HexTranslationMeaning
0F 00 00 0015unknown; maybe 15 levels available; don't alter it or you'll lose all your settings
0E 0B D0 D0unknownunknown
5C 7F 0C 00819036the levels that are visible in the "load game" list; it's a bitset; the following bits are possible:

Level unlock data for 0-31
1 - level 0*
2 - level 1*
4 - level 2
... - ...
524288 - level 19
*) level 0 and 1 are always visible, so these bits aren't used
00 00 00 00 Level unlock data for 31-63
00 00 00 00 Level unlock data for 63-95
00 00 00 00 Level unlock data for 95-127
00 00 00 00 Level unlock data for 127-159
00 00 00 00 Level unlock data for 159-191
00 00 00 00 Level unlock data for 191-224
00 00 00 00 Level unlock data for 191-255
01 00 00 001killed griffin (0 = no, 1 = yes)
FE 1B 00 007166unknown, but it's a bitset
1F 00 00 0031unknown
13 00 00 0019unknown
01 00 00 001unknown
04 00 00 004level of detail; the following options are possible (values in dec):
0 - extra low
1 - low
2 - medium
3 - high
4 - extra high
00 00 80 3F1.000000music volume (0.0 = min, 1.0 = max)
06 00 00 006subtitles / invert mouse / cheats as a bitset; the following bits are possible (values in dec):
1 - show subtitles
2 - invert mouse
4 - enable cheats
02 00 00 002difficulty; the following options are possible:
0 - easy
1 - medium
2 - hard
20 03800resolution: width
02 58600resolution: height
20 00 00 0032color depth
00 00 00 3F0.500000brightness (0.0 = min, 1.0 = max
03 00 00 003last saved level
02 00 00 002last saved savepoint