SAVW (File Format): Difference between revisions
Jump to navigation
Jump to search
>Aruki mNo edit summary |
>Aruki m (Parax0 moved page SAVW (File Format) to SAVW (Metroid Prime)) |
(No difference)
| |
Revision as of 17:15, 29 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 a particular MemoryRelay has been activated, whether you've scanned a particular scan has been fully scanned, etc.
Format
| Type | Count | Name | Notes | MP1 | MP2 |
|---|---|---|---|---|---|
| u32 | 1 | Magic | Always 0xC001D00D.
|
✔ | ✔ |
| u32 | 1 | Version | See below for a list of possible version numbers. | ✔ | ✔ |
| u32 | 1 | Area Count | Number of areas contained in this world. | ✔ | ✔ |
| u32 | 1 | Cinematic Skip Count | Count of skippable cinematics. | ✔ | ✔ |
| u32 | Cinematic Skip Count | Cinematic Skip Instance IDs | Array of instance IDs listing every Cinematic Skip SpecialFunction instance (MP1)/Camera instance with cinematic skip enabled (MP2) 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 | Layer Toggle Count | Count of layers that can be toggled on/off from this world. | ✔ | ✔ |
| Layer Toggle | 1 | Layer Toggle Array | Array specifying every layer that can be toggled on/off from this world (any layer referenced by a ScriptLayerController). The layers specified can be in other worlds. | ✔ | ✔ |
| u32 | 1 | Door Count | Count of DoorArea/Door instances. | ✔ | ✔ |
| u32 | Door Count | Door Instance IDs | Array of instance IDs listing every DoorArea/Door instance in the world. | ✔ | ✔ |
| u32 | 1 | Scannable Object Count | Count of scannable objects in the next array. | ✔ | ✔ |
| Scannable Object | Scannable Object Count | Scannable Object Array | Array describing every scannable object in this world. | ✔ | ✔ |
| u32 | 1 | System State Env Var Count | Count of system state env vars modified from this world. | ✖ | ✔ |
| Environment Variable | System State Env Var Count | System State Env Var Array | Array of env vars affecting the entire system. Mainly used for multiplayer music unlocks. | ✖ | ✔ |
| u32 | 1 | Game State Env Var Count | Count of game state env vars modified from this world. | ✖ | ✔ |
| Environment Variable | Game State Env Var Count | Game State Env Var Array | Array of env vars affecting only this save slot. Mainly used to enable the Dark World map button. | ✖ | ✔ |
| u32 | 1 | Unmappable Object Count | Count of unmappable objects in the world. | ✖ | ✔ |
| u32 | Unmappable Object Count | Unmappable Object Instance IDs | Array of instance IDs listing every instance that can be removed from the map. Mainly used by Translator Door Location SpecialFunctions. | ✖ | ✔ |
| End of file | |||||
Versions
Possible version numbers:
| Version | Game |
|---|---|
| 0x3 | Metroid Prime |
| 0x5 | Metroid Prime 2: Echoes |
| 0x6 | Metroid Prime 3: Corruption |
| 0x8 | Donkey Kong Country Returns |
Layer Toggle
| Type | Name | Notes |
|---|---|---|
| u32 | Area ID | Internal area ID (not the MREA ID). |
| u32 | Layer Index | Index of the layer that can be toggled. |
| End of layer | ||
Scannable Object
| 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. Always 0 in MP2. See below for possible values for MP1. |
| End of scan | ||
Possible logbook category values (MP1 only):
| ID | Category |
|---|---|
| 0 | Non-Logbook |
| 1 | Space Pirate Data |
| 2 | Chozo Lore |
| 3 | Creatures |
| 4 | Research |
Environment Variable
| Type | Name | Notes |
|---|---|---|
| string | Variable Name | Name of the environment variable as a zero-terminated string. |
| u32 | Unknown | Always 0? |
| u32 | Unknown | Always 1? |
| u32 | Unknown | Always 0? |
| End of environment variable | ||