Difference between revisions of "Menu1.dat"
From CloudModding ZGCN Wiki
(Created page with "'''Menu1.dat''', found at ''res/Menu'', contains the layout for ''The Wind Waker's'' debug map select screen. It is made up of a header, a series of headings, and a series of...") |
|||
Line 4: | Line 4: | ||
The header of the file stores the number of headings, as well as some other fields. Their use is currently unknown. | The header of the file stores the number of headings, as well as some other fields. Their use is currently unknown. | ||
− | < | + | <syntaxhighlight lang="csharp"> |
//8 bytes long | //8 bytes long | ||
− | /*0x00*/ byte NumHeadings; | + | /*0x00*/ byte NumHeadings; |
− | /*0x01*/ const byte UnknownField1 = 0x5E; | + | |
− | /*0x02*/ const short UnknownField2 = 0x61; | + | /*0x01*/ const byte UnknownField1 = 0x5E; |
− | /*0x04*/ const int UnknownField3 = 8; | + | |
− | </ | + | /*0x02*/ const short UnknownField2 = 0x61; |
+ | |||
+ | /*0x04*/ const int UnknownField3 = 8; | ||
+ | |||
+ | </syntaxhighlight> | ||
== Heading == | == Heading == | ||
Headings populate the list, giving a short description of what maps the heading deals with. The format defines a string to display on the menu, the number of options that heading | Headings populate the list, giving a short description of what maps the heading deals with. The format defines a string to display on the menu, the number of options that heading | ||
has in it, and where the first option is according to the start of the file. | has in it, and where the first option is according to the start of the file. | ||
− | < | + | <syntaxhighlight lang="csharp"> |
//0x28/40dec bytes long | //0x28/40dec bytes long | ||
− | /*0x00*/ string DisplayString; //Strings are 33 bytes: 32 chars and null terminator | + | /*0x00*/ string DisplayString; //Strings are 33 bytes: 32 chars and null terminator |
− | /*0x21*/ byte NumOptions; | + | |
− | /*0x22*/ short Padding; | + | /*0x21*/ byte NumOptions; |
− | /*0x24*/ int OptionDataOffset; | + | |
− | </ | + | /*0x22*/ short Padding; |
+ | |||
+ | /*0x24*/ int OptionDataOffset; | ||
+ | </syntaxhighlight> | ||
== Option == | == Option == | ||
Options contain the data used to load maps. They consist of a display string, the name of the map to load, and various settings to use when loading the map. | Options contain the data used to load maps. They consist of a display string, the name of the map to load, and various settings to use when loading the map. | ||
− | < | + | <syntaxhighlight lang="csharp"> |
//0x2C/44dec bytes long | //0x2C/44dec bytes long | ||
− | /*0x00*/ string DisplayString; //Strings are 33 bytes: 32 chars and null terminator | + | /*0x00*/ string DisplayString; //Strings are 33 bytes: 32 chars and null terminator |
− | /*0x21*/ string MapName; | + | |
− | /*0x29*/ byte RoomNumber; //Room to spawn into | + | /*0x21*/ string MapName; |
− | /*0x2A*/ byte SpawnID; //ID of the spawn to use to enter the map | + | |
− | /*0x2B*/ byte UnknownField1; //Purpose not known, but it varies between options. Possibly time of day | + | /*0x29*/ byte RoomNumber; //Room to spawn into |
− | </ | + | |
+ | /*0x2A*/ byte SpawnID; //ID of the spawn to use to enter the map | ||
+ | |||
+ | /*0x2B*/ byte UnknownField1; //Purpose not known, but it varies between options. Possibly time of day | ||
+ | </syntaxhighlight> |
Latest revision as of 05:58, 6 November 2015
Menu1.dat, found at res/Menu, contains the layout for The Wind Waker's debug map select screen. It is made up of a header, a series of headings, and a series of options.
File Header
The header of the file stores the number of headings, as well as some other fields. Their use is currently unknown.
//8 bytes long
/*0x00*/ byte NumHeadings;
/*0x01*/ const byte UnknownField1 = 0x5E;
/*0x02*/ const short UnknownField2 = 0x61;
/*0x04*/ const int UnknownField3 = 8;
Heading
Headings populate the list, giving a short description of what maps the heading deals with. The format defines a string to display on the menu, the number of options that heading has in it, and where the first option is according to the start of the file.
//0x28/40dec bytes long
/*0x00*/ string DisplayString; //Strings are 33 bytes: 32 chars and null terminator
/*0x21*/ byte NumOptions;
/*0x22*/ short Padding;
/*0x24*/ int OptionDataOffset;
Option
Options contain the data used to load maps. They consist of a display string, the name of the map to load, and various settings to use when loading the map.
//0x2C/44dec bytes long
/*0x00*/ string DisplayString; //Strings are 33 bytes: 32 chars and null terminator
/*0x21*/ string MapName;
/*0x29*/ byte RoomNumber; //Room to spawn into
/*0x2A*/ byte SpawnID; //ID of the spawn to use to enter the map
/*0x2B*/ byte UnknownField1; //Purpose not known, but it varies between options. Possibly time of day