Difference between revisions of "User:Claris/Sandbox"

From Retro Modding Wiki
Jump to: navigation, search
(Rooms)
Line 7: Line 7:
 
}}
 
}}
 
__TOC__
 
__TOC__
 +
 +
  
 
=Header=
 
=Header=
Line 18: Line 20:
 
|-
 
|-
 
|0x4
 
|0x4
|'''Magic Number''' 0xDEAFBABE
+
|'''Magic''' 0xDEAFBABE
 
|All
 
|All
 
|-
 
|-
Line 90: Line 92:
 
|}
 
|}
  
=Rooms=
+
=Areas=
 
+
Should "room" be changed to "area"?
+
: IMO yes. --[[User:Parax0|Parax0]] ([[User talk:Parax0|talk]]) 07:34, 26 January 2015 (CST)
+
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 101: Line 100:
 
|-
 
|-
 
|0x4
 
|0x4
|'''Room count'''
+
|'''Area count'''
 
|All
 
|All
 
|-
 
|-
Line 109: Line 108:
 
|}
 
|}
  
For each room:
+
For each area:
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 117: Line 116:
 
|-
 
|-
 
|0x4/0x8
 
|0x4/0x8
|'''Room Name .STRG'''
+
|'''Area Name .STRG'''
 
|All
 
|All
 
|-
 
|-
Line 125: Line 124:
 
|-
 
|-
 
|0x18
 
|0x18
|'''Axis Aligned Bounding Box'''
+
|'''Axis-Aligned Bounding Box'''
 
|All
 
|All
 
|-
 
|-
 
|0x4/0x8
 
|0x4/0x8
|'''Room .MREA'''
+
|'''Area .MREA'''
 
|All
 
|All
 
|-
 
|-
 
|0x4/0x8
 
|0x4/0x8
|'''Room ID''' (used by layer-switching objects)
+
|'''Area ID''' (used by layer-switching objects)
 
|All
 
|All
 
|-
 
|-
 
|0x4
 
|0x4
|'''Connected room count''' (CC)
+
|'''Connected area count''' (CC)
 
|Prime/Echoes/Corruption
 
|Prime/Echoes/Corruption
 
|-
 
|-
 
|0x2 x CC
 
|0x2 x CC
|'''Connected room numbers'''
+
|'''Connected area numbers'''
 
|Prime/Echoes/Corruption
 
|Prime/Echoes/Corruption
 +
|-
 +
|0x4
 +
|? (always 0)
 +
|Prime/Echoes
 +
|}
 +
 +
===Dependency List (Prime/Echoes)===
 +
 +
Identical to [[DGRP_(File_Format)|DGRP]].
 +
 +
(DGRP should be updated as it doesn't mention the dependency count or the offset list)
 +
 +
===Docks===
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|'''Dock count'''
 +
|Prime/Echoes/Corruption
 +
|}
 +
 +
For each dock:
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|'''Connection Count'''
 +
|Prime/Echoes/Corruption
 +
|}
 +
 +
For each connection:
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|'''Area Number'''
 +
|Prime/Echoes/Corruption
 +
|-
 +
|0x4
 +
|'''Dock Number'''
 +
|Prime/Echoes/Corruption
 +
|}
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|? (Always 4, could be a count for the dock coordinates)
 +
|Prime/Echoes/Corruption
 +
|-
 +
|0x30
 +
|4 sets of dock coordinates
 +
|Prime/Echoes/Corruption
 +
|}
 +
 +
===.rel list (Echoes)===
 +
 +
Identical to [[RSOS]], except with .rel files instead of .rso files.
 +
 +
(Page needs to be created)
 +
 +
===Remainder===
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|Always 0; could be something in previous games, such as the dock count, but I have no way of knowing for sure
 +
|Returns
 +
|-
 +
|?
 +
|'''Code Name''' (zero-terminated)
 +
|Echoes, Corruption, Returns
 +
|}
 +
 +
=After Areas=
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4/0x8
 +
|'''World .MAPW'''
 +
|Prime/Echoes/Corruption
 +
|-
 +
|0x5
 +
|?
 +
|Prime/Echoes/Corruption
 +
|-
 +
|0x4
 +
|'''.AGSC count''' (AC)
 +
|Prime
 +
|}
 +
 +
For each AGSC:
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|?
 +
|Prime
 +
|-
 +
|0x4
 +
|'''.AGSC ID'''
 +
|Prime
 +
|}
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x1
 +
|?
 +
|Prime
 +
|-
 +
|0x4
 +
|'''Area Layer Info Count''' (should be identical to Area Count)
 +
|All
 +
|}
 +
 +
For each layer info:
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|'''Layer Count'''
 +
|All
 +
|-
 +
|0x8
 +
|'''Layer Bit Flags''' (1 if a layer should be turned on in a new file)
 +
|All
 +
|}
 +
 +
{| class="wikitable"
 +
!Size
 +
!Description
 +
!Games
 +
|-
 +
|0x4
 +
|'''Layer Name Count''' (LC)
 +
|All
 +
|-
 +
|? x LC
 +
|'''Layer Names''' (zero-terminated)
 +
|All
 +
|-
 +
|0x4
 +
|(Unknown) Count (UC)
 +
|Corruption/Returns
 +
|-
 +
|0x10 x UC
 +
|?
 +
|Corruption/Returns
 +
|-
 +
|0x4
 +
|'''Layer Name Offset Count''' (OC)
 +
|All
 +
|-
 +
|0x4 x OC
 +
|'''Layer Name Offsets'''
 +
|All
 
|}
 
|}

Revision as of 16:32, 3 February 2015

.MLVL description here.

Note that file IDs are 4 bytes in Prime/Echoes and 8 bytes in Corruption/Returns.

Morphball wirerender.png This file format needs more research
Reason


Header

Size Description Games
0x4 Magic 0xDEAFBABE All
0x4 File Version All
0x4/0x8 World Name .STRG All
0x4 Dark World Name .STRG Echoes
0x4 ? Echoes/Corruption
0x1 Boolean, checks whether the next two values exist Returns
? Level Number string (zero-terminated) Returns
0x10 4 floats Returns
0x4/0x8 World .SAVW All
0x4/0x8 World Skybox .CMDL All

Memory Relays (Prime only)

Size Description Games
0x4 Memory Relay count Prime

For each memory relay:

Size Description Games
0x4 Memory Relay Instance ID Prime
0x4 Connected Instance ID Prime
0x3 ? Prime

Areas

Size Description Games
0x4 Area count All
0x4 ? Prime

For each area:

Size Description Games
0x4/0x8 Area Name .STRG All
0x30 Transformation Matrix All
0x18 Axis-Aligned Bounding Box All
0x4/0x8 Area .MREA All
0x4/0x8 Area ID (used by layer-switching objects) All
0x4 Connected area count (CC) Prime/Echoes/Corruption
0x2 x CC Connected area numbers Prime/Echoes/Corruption
0x4 ? (always 0) Prime/Echoes

Dependency List (Prime/Echoes)

Identical to DGRP.

(DGRP should be updated as it doesn't mention the dependency count or the offset list)

Docks

Size Description Games
0x4 Dock count Prime/Echoes/Corruption

For each dock:

Size Description Games
0x4 Connection Count Prime/Echoes/Corruption

For each connection:

Size Description Games
0x4 Area Number Prime/Echoes/Corruption
0x4 Dock Number Prime/Echoes/Corruption
Size Description Games
0x4 ? (Always 4, could be a count for the dock coordinates) Prime/Echoes/Corruption
0x30 4 sets of dock coordinates Prime/Echoes/Corruption

.rel list (Echoes)

Identical to RSOS, except with .rel files instead of .rso files.

(Page needs to be created)

Remainder

Size Description Games
0x4 Always 0; could be something in previous games, such as the dock count, but I have no way of knowing for sure Returns
? Code Name (zero-terminated) Echoes, Corruption, Returns

After Areas

Size Description Games
0x4/0x8 World .MAPW Prime/Echoes/Corruption
0x5 ? Prime/Echoes/Corruption
0x4 .AGSC count (AC) Prime

For each AGSC:

Size Description Games
0x4 ? Prime
0x4 .AGSC ID Prime
Size Description Games
0x1 ? Prime
0x4 Area Layer Info Count (should be identical to Area Count) All

For each layer info:

Size Description Games
0x4 Layer Count All
0x8 Layer Bit Flags (1 if a layer should be turned on in a new file) All
Size Description Games
0x4 Layer Name Count (LC) All
? x LC Layer Names (zero-terminated) All
0x4 (Unknown) Count (UC) Corruption/Returns
0x10 x UC ? Corruption/Returns
0x4 Layer Name Offset Count (OC) All
0x4 x OC Layer Name Offsets All