MAPU (File Format)
The MAPU format is used to build the game's universe map, which is split up by world. The format is simple and is one of the few formats that's 100% cracked. There are no format differences between Metroid Prime 1 and 2.
Format
The MAPU format is broken into 2 parts: the header, and the world descriptors. Each world descriptor determines how that world's hexagon map is laid out. The number of areas in the world usually differs from the amount of hexagons present on the Universe Map.
Header
The header is extremely simple following this format:
Type | Description | Notes |
---|---|---|
u32 | Magic | Always 0xABCDEF01 |
u32 | Version | Always 1 |
MAPA | Hexagon MAPA ID | This is the MAPA file that contains the hexagon model |
u32 | World count (WC) | |
Worlds[WC] | World array |
World
For each world, its internal name and MLVL file are listed. Following that is a list of 3x4 transformation matrices defining the location of each hexagon; then finally, the color of the world's hexagons.
Type | Description | Ntes |
---|---|---|
string | Name | This is the internal name of the world; for example, "Ruins" |
u32 | World MLVL ID | |
CTransform4f | World transform | The world map's transform within the universe map |
u32 | Hexagon count (HC) | |
CTransform4f[HC] | Hexagon transforms | This is the hexagon's transform within the world map; it's multiplied an additional time by the world transform |
CColor | World hexagon color |