PMP (File Format)

From Custom Mario Kart
Jump to navigation Jump to search

Overview

PMP (Pack MaP) is a file format similar to KMP which appears in various games in the Wii series (Wii Sports, Wii Sports Resort, Wii Fit Plus, etc.).

It contains object positions, routes, object parameters, and various other things.

File Format

Header

Offset Type Usage
File header of a PMP file
0x00 String File magic. Always PMPF in ASCII.
0x10 UInt16 Object count.
0x12 UInt16 Route count.
0x14 UInt16 Point count.
0x40 UInt32 Object data offset.
0x44 UInt32 Route data offset.
0x48 UInt32 Point data offset.
0x4C End of this file header.

Object Data

Offset Type Usage
Layout of PMP object
0x00 UInt16 Object group ID.
0x02 UInt16 Object ID.
0x04 UInt32 Unknown.
0x08 Single[3] Position vector.
0x14 Single[3] Scaling vector.
0x20 Single[3] Transformation matrix (first column).
0x2C Single[3] Transformation matrix (second column).
0x38 Single[3] Transformation matrix (third column).
0x44 UInt32 Unknown.
0x48 Varies Object-specific parameters.
0x58 End of object data.

Route Data

Offset Type Usage
Layout of PMP route
0x00 UInt16 Point count.
0x02 UInt32 Unknown.
0x06 UInt16 Route group ID.
0x08 String Internal route name (if applicable).
0x1A UInt16 Route point index.
0x1C UInt32 Unknown.
0x20 End of route data.

Point Data

Offset Type Usage
Layout of PMP point
0x00 Single[3] Position vector.
0x0C Varies Additional parameters.
0x13 End of point data.

Tools

The following tools can edit PMP files: