Difference between revisions of "Mario vs. Donkey Kong 2: March of the Minis:Level Format"

From Data Crystal
Jump to navigation Jump to search
m
 
(26 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{subpage|game=Mario vs. Donkey Kong 2: March of the Minis:Notes}}
 
{{subpage|game=Mario vs. Donkey Kong 2: March of the Minis:Notes}}
  
This is a mixture of research on the USA and the European versions of the game. In addition to page editor(s), TheMarioVariable has made contributions.
+
This is a mixture of research on the USA and the European versions of the game. In addition to page editor(s), TheMarioVariable has made contributions. Not everything has been tested in-game yet.
  
 
Values are in Little Endian.
 
Values are in Little Endian.
  
==Header==
+
==General Data 1==
 
{| class="wikitable"  
 
{| class="wikitable"  
 
|-
 
|-
 
! Offset
 
! Offset
! Length
+
! Type
 
! Description
 
! Description
 
|-
 
|-
 
| 0000
 
| 0000
 
| UInt32
 
| UInt32
| Always 0x0A
+
| Magic value or format version
 
|-
 
|-
 
| 0004
 
| 0004
 
| UInt32
 
| UInt32
| Offset to Actor Loading Data (usually/always 0x14)
+
| Offset to Actors to Load
 
|-
 
|-
 
| 0008
 
| 0008
 
| UInt32
 
| UInt32
| Offset to Tile Loading Data (usually/always 0x1C)
+
| Offset to Tiles to Load
 
|-
 
|-
 
| 000C
 
| 000C
 
| UInt32
 
| UInt32
| Offset to Level Properties Data (usually/always 0x1E70)
+
| Offset to Footer
 
|-
 
|-
 
| 0010
 
| 0010
 
| UInt32
 
| UInt32
| Offset to Water/Lava Data (usually/always 0x1E98)
+
| Offset to Liquid Placement
 
|}
 
|}
  
==Actor Loading Data==
+
==Actors to Load==
 +
See [[Mario_vs._Donkey_Kong_2:_March_of_the_Minis:Actors|here]] for a list of Actor IDs.
 +
 
 
{| class="wikitable"  
 
{| class="wikitable"  
 
|-
 
|-
 
! Offset
 
! Offset
! Length
+
! Type
 
! Description
 
! Description
 
|-
 
|-
 
| 0000
 
| 0000
 
| UInt32
 
| UInt32
| Number of Actor Instances
+
| Number of Actor IDs
 
|-
 
|-
 
| 0004
 
| 0004
| 0x4 * Number of Actor Instances
+
| Array of UInt32 values
| Actor Instance(s)
+
| Actor IDs
 
|}
 
|}
  
===Instance===
+
==Tiles to Load==
See [[Mario_vs._Donkey_Kong_2:_March_of_the_Minis:Actors|here]] for more info.
+
{| class="wikitable"
 +
|-
 +
! Offset
 +
! Type
 +
! Description
 +
|-
 +
| 00
 +
| UInt32
 +
| Number of Tile IDs
 +
|-
 +
| 02
 +
| Array of UInt8 values
 +
| Tile IDs
 +
|}
  
 +
==General Data 2==
 
{| class="wikitable"  
 
{| class="wikitable"  
 
|-
 
|-
 
! Offset
 
! Offset
! Length
+
! Type
 
! Description
 
! Description
 
|-
 
|-
 
| 00
 
| 00
 
| UInt8
 
| UInt8
| ID
+
| Level width (in half-blocks)
 +
|-
 +
| 01
 +
| UInt8
 +
| Level height (in half-blocks)
 
|-
 
|-
 
| 02
 
| 02
| UInt8
+
| Bytes (0x6)
| Parameter
+
| Padding
 +
|-
 +
| 08
 +
| UInt32
 +
| Offset to Actor Placements
 +
|-
 +
| 0C
 +
| UInt32
 +
| Offset to Tile Placements
 +
|-
 +
| 10
 +
| UInt32
 +
| Offset to Misc. Object Placements. At least some of the time, this is set to the value of the next field (at 0x14) if the Misc. Object Placements section isn't being used.
 +
|-
 +
| 14
 +
| UInt32
 +
| Offset to Tile Collison Placements
 +
|-
 +
| 18
 +
| UInt32
 +
| Offset to Warning Sign Placements
 +
|-
 +
| 1C
 +
| UInt32
 +
| Offset to Intro Camera Properties
 +
|-
 +
| 20
 +
| UInt32
 +
| Offset to Warp Pipe Placements. At least some of the time, this is set to 0x0 if the Warp Pipe Placements section isn't being used.
 +
|-
 +
| 24
 +
| UInt32
 +
| Unknown. At least some of the time, this is set to (value of 0x20) + 0x8.
 
|}
 
|}
  
==Tile Loading Data==
+
==Liquid Placement==
 
{| class="wikitable"  
 
{| class="wikitable"  
 
|-
 
|-
 
! Offset
 
! Offset
! Length
+
! Type
 
! Description
 
! Description
 
|-
 
|-
 
| 00
 
| 00
 
| UInt32
 
| UInt32
| Number of Tile IDs
+
| "where water/lava is loaded"
 
|-
 
|-
| 02
+
| 04
| UInt16 * Number of Tile IDs
+
| UInt32
| Array of tile IDs to load
+
| Offset to Liquid Size. At least some of the time, this is set to this value + 0x04 if the Liquid Size section isn't being used.
 
|}
 
|}
 
==Level Properties Data==
 
xxxx
 
 
==Water/Lava Data==
 
xxxx
 

Latest revision as of 15:09, 22 March 2021


This is a mixture of research on the USA and the European versions of the game. In addition to page editor(s), TheMarioVariable has made contributions. Not everything has been tested in-game yet.

Values are in Little Endian.

General Data 1

Offset Type Description
0000 UInt32 Magic value or format version
0004 UInt32 Offset to Actors to Load
0008 UInt32 Offset to Tiles to Load
000C UInt32 Offset to Footer
0010 UInt32 Offset to Liquid Placement

Actors to Load

See here for a list of Actor IDs.

Offset Type Description
0000 UInt32 Number of Actor IDs
0004 Array of UInt32 values Actor IDs

Tiles to Load

Offset Type Description
00 UInt32 Number of Tile IDs
02 Array of UInt8 values Tile IDs

General Data 2

Offset Type Description
00 UInt8 Level width (in half-blocks)
01 UInt8 Level height (in half-blocks)
02 Bytes (0x6) Padding
08 UInt32 Offset to Actor Placements
0C UInt32 Offset to Tile Placements
10 UInt32 Offset to Misc. Object Placements. At least some of the time, this is set to the value of the next field (at 0x14) if the Misc. Object Placements section isn't being used.
14 UInt32 Offset to Tile Collison Placements
18 UInt32 Offset to Warning Sign Placements
1C UInt32 Offset to Intro Camera Properties
20 UInt32 Offset to Warp Pipe Placements. At least some of the time, this is set to 0x0 if the Warp Pipe Placements section isn't being used.
24 UInt32 Unknown. At least some of the time, this is set to (value of 0x20) + 0x8.

Liquid Placement

Offset Type Description
00 UInt32 "where water/lava is loaded"
04 UInt32 Offset to Liquid Size. At least some of the time, this is set to this value + 0x04 if the Liquid Size section isn't being used.