Chunk Descriptor (Tropical Freeze) and SAVW (File Format): Difference between pages

(Difference between pages)
Jump to navigation Jump to search
no edit summary
>Aruki
No edit summary
 
>Aruki
No edit summary
 
Line 1: Line 1:
The '''section header''' is a very common 20-byte header that denotes different data sections, found in many different Donkey Kong Country: Tropical Freeze formats.
''This article is for the SAVW format from Metroid Prime 1 and 2. See [[SAVW (File Format)]] for the other revisions of this format.''
 
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.


__TOC__
__TOC__
Line 6: Line 8:


{| class="wikitable"
{| class="wikitable"
! Offset
! Type
! Size
! Count
! Description
! Name
! Notes
! MP1
! MP2
|-
| u32
| 1
| '''Magic'''
| Always <code>0xC001D00D</code>.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''Version'''
| See [[SAVW (File Format)|hub article]] for a list of possible version numbers.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''Area Count'''
| Number of areas contained in this world.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''Cinematic Skip Count'''
| Count of skippable cinematics.
| {{check}}
| {{check}}
|-
| 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.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''MemoryRelay Count'''
| Count of MemoryRelay instances.
| {{check}}
| {{check}}
|-
| u32
| ''MemoryRelay Count''
| '''MemoryRelay Instance IDs'''
| Array of instance IDs listing every MemoryRelay instance in the world.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''Layer Toggle Count'''
| Count of layers that can be toggled on/off from this world.
| {{check}}
| {{check}}
|-
| [[#Layer Toggle|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.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''Door Count'''
| Count of DoorArea/Door instances.
| {{check}}
| {{check}}
|-
| u32
| ''Door Count''
| '''Door Instance IDs'''
| Array of instance IDs listing every DoorArea/Door instance in the world.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''Scannable Object Count'''
| Count of scannable objects in the next array.
| {{check}}
| {{check}}
|-
| [[#Scannable Object|Scannable Object]]
| ''Scannable Object Count''
| '''Scannable Object Array'''
| Array describing every scannable object in this world.
| {{check}}
| {{check}}
|-
| u32
| 1
| '''System State Env Var Count'''
| Count of system state env vars modified from this world.
| {{nocheck}}
| {{check}}
|-
| [[#Environment Variable|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.
| {{nocheck}}
| {{check}}
|-
| u32
| 1
| '''Game State Env Var Count'''
| Count of game state env vars modified from this world.
| {{nocheck}}
| {{check}}
|-
| [[#Environment Variable|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.
| {{nocheck}}
| {{check}}
|-
| u32
| 1
| '''Unmappable Object Count'''
| Count of unmappable objects in the world.
| {{nocheck}}
| {{check}}
|-
| 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.
| {{nocheck}}
| {{check}}
|-
| colspan=6 {{unknown|End of file}}
|}
 
=== Layer Toggle ===
 
{| class="wikitable"
! Type
! Name
! Notes
|-
| u32
| '''Area ID'''
| Internal area ID (not the MREA ID).
|-
| u32
| '''Layer Index'''
| Index of the layer that can be toggled.
|-
| colspan=3 {{unknown|End of layer}}
|}
 
=== Scannable Object ===
 
{| 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. Always 0 in MP2. See below for possible values for MP1.
|-
| colspan=3 {{unknown|End of scan}}
|}
 
Possible logbook category values (MP1 only):
 
{| class="wikitable"
! ID
! Category
|-
| 0
| Non-Logbook
|-
| 1
| Space Pirate Data
|-
| 2
| Chozo Lore
|-
| 3
| Creatures
|-
|-
| 0x0
| 4
| 4
| '''Section type''' fourCC
| Research
|}
 
=== Environment Variable ===
 
{| class="wikitable"
! Type
! Name
! Notes
|-
|-
| 0x4
| string
| 4
| '''Variable Name'''
| '''Section size'''
| Name of the environment variable as a zero-terminated string.
|-
|-
| 0x8
| u32
| 4
| {{unknown|Unknown}}
| {{unknown|'''Unknown'''; usually 1}}
| Always 0?
|-
|-
| 0xC
| u32
| 4
| {{unknown|Unknown}}
| {{unknown|'''Unknown'''; usually 0}}
| Always 1?
|-
|-
| 0x10
| u32
| 4
| {{unknown|Unknown}}
| {{unknown|'''Unknown'''; usually 0}}
| Always 0?
|-
|-
| 0x14
| colspan=3 {{unknown|End of environment variable}}
| colspan=2 {{unknown|End of header}}
|}
|}


[[Category:Donkey Kong Country: Tropical Freeze]]
[[Category:File Formats]]
[[Category:Metroid Prime]]
[[Category:Metroid Prime 2 Demo]]
[[Category:Metroid Prime 2: Echoes]]
Anonymous user

Navigation menu