MAPA (File Format): Difference between revisions

correct info about the offsets in the primitive headers
>Claris
(Consistent naming)
(correct info about the offsets in the primitive headers)
 
(4 intermediate revisions by 3 users not shown)
Line 6: Line 6:
== Format ==
== Format ==
=== Header ===
=== Header ===
The header is very straight forward, and has some minor differences depending on version, the unknown values don't seem to do anything, however not much research has been put into them.
The header is very straightforward, and has some minor differences depending on version.
 


{| class="wikitable"
{| class="wikitable"
Line 46: Line 45:
|{{check}}
|{{check}}
|-
|-
|u32
|{{Vector3f}}
|{{unknown|Unknown}}
|'''Map Adjustment'''
|{{nocheck}}
|{{nocheck}}
|{{check}}
|{{check}}
Line 55: Line 54:
|{{unknown|Unknown}}
|{{unknown|Unknown}}
|{{nocheck}}
|{{nocheck}}
|{{check}}
|{{nocheck}}
|{{check}}
|{{check}}
|-
|-
|u32
|u32
|{{unknown|Unknown}}
|'''Mappable Object Count'''
|{{nocheck}}
|{{check}}
|{{check}}
|{{check}}
|{{check}}
|-
|u32
|{{unknown|Unknown}}
|{{nocheck}}
|{{nocheck}}
|{{check}}
|{{check}}
|-
|-
|u32
|u32
|'''Mappable Object Count'''
|'''Vertex Count'''
|{{check}}
|{{check}}
|{{check}}
|{{check}}
Line 77: Line 70:
|-
|-
|u32
|u32
|'''Vertex Count'''
|'''Primitive Count'''
|{{check}}
|{{check}}
|{{check}}
|{{check}}
Line 83: Line 76:
|-
|-
|u32
|u32
|'''Primitive Count'''
|'''Environment Variable Section Size'''
|{{check}}
|{{nocheck}}
|{{nocheck}}
|{{check}}
|{{check}}
|-
|u32
|'''Environment Variable Count'''
|{{nocheck}}
|{{nocheck}}
|{{check}}
|{{check}}
|-
| colspan=5 {{unknown|End of Header}}
|}
|}


Line 103: Line 104:
|Metroid Prime 3: Corruption
|Metroid Prime 3: Corruption
|5
|5
|}
=== Environment Variables ===
Only exists in Corruption; used for some areas with Landing Sites.
{|class="wikitable"
!Type
!Count
!Description
|-
|string
|Environment Variable Count
|'''Environment Variable'''
|-
| colspan=3 {{unknown|Pad to 4 bytes}}
|-
| colspan=3 {{unknown|End of Environment Variables}}
|}
|}


Line 114: Line 131:
|-
|-
|u32
|u32
|{{unknown|Unknown}}
|'''Type'''; See tables below for MP1/MP2 types
|{{nocheck}}
|{{check}}
|-
|u32
|'''Type'''; See table below for MP1 types
|{{check}}
|{{check}}
|{{check}}
|{{check}}
Line 131: Line 143:
|'''Editor ID'''; Same ID format as SCLY, indicates associated world object
|'''Editor ID'''; Same ID format as SCLY, indicates associated world object
|{{check}}
|{{check}}
|{{nocheck}}
|{{check}}
|-
|-
|{{Vector4f}}
|[[GUID]]
|{{unknown|Unknown}}
|'''Saved State ID'''
|{{nocheck}}
|{{nocheck}}
|{{check}}
|{{check}}
|-
|-
|u32
|u32
|'''Padding'''; always -1
|{{unknown|Unknown}}
|{{check}}
|{{check}}
|{{check}}
|{{check}}
Line 149: Line 161:
|-
|-
|u32 * 4
|u32 * 4
|'''Padding'''; four values of -1
|{{unknown|Unknown}}
|{{check}}
|{{check}}
|{{check}}
|{{check}}
|-
| colspan=4 {{unknown|End of Mappable Object}}
|}
|}


Line 233: Line 247:
|37
|37
|Missile Station
|Missile Station
|}
==== MP2 Types ====
{| class="wikitable"
!Type
!Description
|-
|0
|Normal Door
|-
|1
|Missile Door
|-
|2
|Dark Door
|-
|3
|Annihilator Door
|-
|4
|Light Door
|-
|5
|Super Missile Door
|-
|6
|Seeker Missile Door
|-
|7
|Power Bomb Door
|-
|16
|Elevator
|-
|17
|Save Station
|-
|20
|Ammo Station
|-
|21
|Portal
|-
|22
|Light Teleporter
|-
|23
|Translator Gate
|-
|24
|Up Arrow
|-
|25
|Down Arrow
|}
|}


Line 241: Line 309:
=== Primitive Headers ===
=== Primitive Headers ===


The Primitive headers are extremely simple, they merely have a bounding box followed by the primitive table start and end point, relative to the end of the current primitive header. In other words: read in the header, seek to the start of the table from the '''current''' position, then read the primitives tables.
The Primitive headers are extremely simple, they merely have a bounding box followed by the primitive table start and end point, relative to the end of the file header.


{|class="wikitable"
{|class="wikitable"
Line 254: Line 322:
|-
|-
|u32
|u32
|'''Primitive Table Start'''; relative to the end of the header
|'''Primitive Table Start'''; relative to the end of the file header
|-
|-
|u32
|u32
|'''Border Table Start'''; relative to the end of the header
|'''Border Table Start'''; relative to the end of the file header
|}
|}


14

edits