Difference between revisions of "SAVW (File Format)"

From Retro Modding Wiki
Jump to: navigation, search
Line 1: Line 1:
 
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.
 
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.
 
{{todo|Document the rest of this format.}}
 
  
 
__TOC__
 
__TOC__
Line 50: Line 48:
 
| u32
 
| u32
 
| 1
 
| 1
| '''Unknown Count'''
+
| '''Toggleable Layer Count'''
| Count of elements in the next array.
+
| Count of layers that can be toggled on/off.
 
|-
 
|-
| [[#Unknown Struct|Unknown Struct]]
+
| [[#Toggleable Layer|Toggleable Layer]]
 
| 1
 
| 1
| '''Unknown Array'''
+
| '''Toggleable Layer Array'''
|  
+
| Array specifying every layer that can be toggled on/off (in other words, any layer referenced by a Script Layer Controller SpecialFunction).
 
|-
 
|-
 
| u32
 
| u32
Line 81: Line 79:
 
|}
 
|}
  
=== Unknown Struct ===
+
=== Toggleable Layer ===
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 93: Line 91:
 
|-
 
|-
 
| u32
 
| u32
| {{unknown|Unknown}}
+
| '''Layer Index'''
|  
+
| Index of the layer that can be toggled.
 
|-
 
|-
| colspan=3 {{unknown|End of scan}}
+
| colspan=3 {{unknown|End of layer}}
 
|}
 
|}
  

Revision as of 23:14, 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.

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 Toggleable Layer Count Count of layers that can be toggled on/off.
Toggleable Layer 1 Toggleable Layer Array Array specifying every layer that can be toggled on/off (in other words, any layer referenced by a Script Layer Controller SpecialFunction).
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

Toggleable Layer

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

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