Difference between revisions of "SAVW (File Format)"
From Retro Modding Wiki
m (Adding categories.) |
|||
| Line 6: | Line 6: | ||
== Format == | == Format == | ||
| + | |||
| + | {| class="wikitable" | ||
| + | ! Type | ||
| + | ! Count | ||
| + | ! Name | ||
| + | ! Notes | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''Magic''' | ||
| + | | Always <code>0xC001D00D</code> | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''Version''' | ||
| + | | Always 3 | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''Area Count''' | ||
| + | | Number of areas contained in this world. | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''Cinematic Skip Count''' | ||
| + | | Count of Cinematic Skip SpecialFunction instances. | ||
| + | |- | ||
| + | | u32 | ||
| + | | ''Cinematic Skip Count'' | ||
| + | | '''Cinematic Skip Instance IDs''' | ||
| + | | Array of instance IDs listing every Cinematic Skip SpecialFunction instance in the world. | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''MemoryRelay Count''' | ||
| + | | Count of MemoryRelay instances. | ||
| + | |- | ||
| + | | u32 | ||
| + | | ''MemoryRelay Count'' | ||
| + | | '''MemoryRelay Instance IDs''' | ||
| + | | Array of instance IDs listing every MemoryRelay instance in the world. | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''Unknown Count''' | ||
| + | | Count of elements in the next array. | ||
| + | |- | ||
| + | | [[#Unknown Struct|Unknown Struct]] | ||
| + | | 1 | ||
| + | | '''Unknown Array''' | ||
| + | | | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''DoorArea Count''' | ||
| + | | Count of DoorArea instances. | ||
| + | |- | ||
| + | | u32 | ||
| + | | ''DoorArea Count'' | ||
| + | | '''DoorArea Instance IDs''' | ||
| + | | Array of instance IDs listing every DoorArea instance in the world. | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''Scan Count''' | ||
| + | | Count of SCAN assets. | ||
| + | |- | ||
| + | | [[#Scan|Scan]] | ||
| + | | ''Scan Count'' | ||
| + | | '''Scan Array''' | ||
| + | | Array describing every SCAN asset used in this world. | ||
| + | |- | ||
| + | | colspan=4 {{unknown|End of file}} | ||
| + | |} | ||
| + | |||
| + | === Unknown Struct === | ||
| + | |||
| + | {| class="wikitable" | ||
| + | ! Type | ||
| + | ! Name | ||
| + | ! Notes | ||
| + | |- | ||
| + | | u32 | ||
| + | | '''Area ID''' | ||
| + | | Internal area ID (not the MREA ID). | ||
| + | |- | ||
| + | | u32 | ||
| + | | {{unknown|Unknown}} | ||
| + | | | ||
| + | |- | ||
| + | | colspan=3 {{unknown|End of scan}} | ||
| + | |} | ||
| + | |||
| + | === Scan === | ||
| + | |||
| + | {| class="wikitable" | ||
| + | ! Type | ||
| + | ! Name | ||
| + | ! Notes | ||
| + | |- | ||
| + | | Asset ID | ||
| + | | '''SCAN Asset ID''' | ||
| + | | Asset ID of a [[SCAN (Metroid Prime)|SCAN]] file. | ||
| + | |- | ||
| + | | u32 | ||
| + | | '''Logbook Category''' | ||
| + | | Enum describing which logbook category this scan is part of. See below for possible values. | ||
| + | |- | ||
| + | | colspan=3 {{unknown|End of scan}} | ||
| + | |} | ||
| + | |||
| + | Possible logbook category values: | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 12: | Line 124: | ||
|- | |- | ||
| 0 | | 0 | ||
| − | | | + | | Non-Logbook |
|- | |- | ||
| 1 | | 1 | ||
| Line 21: | Line 133: | ||
|- | |- | ||
| 3 | | 3 | ||
| − | | | + | | Creatures |
|- | |- | ||
| 4 | | 4 | ||
| Research | | Research | ||
|} | |} | ||
| − | |||
[[Category:File Formats]] | [[Category:File Formats]] | ||
| + | [[Category:Metroid Prime]] | ||
Revision as of 23:09, 27 May 2016
The SAVW format determines what data gets saved to the memory card. It's used to save information on non-hardcoded parts of the game, like whether you've collected a certain pickup, whether you've scanned a given object, etc.
| To do: Document the rest of this format. |
Contents
Format
| Type | Count | Name | Notes |
|---|---|---|---|
| u32 | 1 | Magic | Always 0xC001D00D
|
| u32 | 1 | Version | Always 3 |
| u32 | 1 | Area Count | Number of areas contained in this world. |
| u32 | 1 | Cinematic Skip Count | Count of Cinematic Skip SpecialFunction instances. |
| u32 | Cinematic Skip Count | Cinematic Skip Instance IDs | Array of instance IDs listing every Cinematic Skip SpecialFunction instance in the world. |
| u32 | 1 | MemoryRelay Count | Count of MemoryRelay instances. |
| u32 | MemoryRelay Count | MemoryRelay Instance IDs | Array of instance IDs listing every MemoryRelay instance in the world. |
| u32 | 1 | Unknown Count | Count of elements in the next array. |
| Unknown Struct | 1 | Unknown Array | |
| u32 | 1 | DoorArea Count | Count of DoorArea instances. |
| u32 | DoorArea Count | DoorArea Instance IDs | Array of instance IDs listing every DoorArea instance in the world. |
| u32 | 1 | Scan Count | Count of SCAN assets. |
| Scan | Scan Count | Scan Array | Array describing every SCAN asset used in this world. |
| End of file | |||
Unknown Struct
| Type | Name | Notes |
|---|---|---|
| u32 | Area ID | Internal area ID (not the MREA ID). |
| u32 | Unknown | |
| End of scan | ||
Scan
| Type | Name | Notes |
|---|---|---|
| Asset ID | SCAN Asset ID | Asset ID of a SCAN file. |
| u32 | Logbook Category | Enum describing which logbook category this scan is part of. See below for possible values. |
| End of scan | ||
Possible logbook category values:
| ID | Category |
|---|---|
| 0 | Non-Logbook |
| 1 | Space Pirate Data |
| 2 | Chozo Lore |
| 3 | Creatures |
| 4 | Research |