ABC (File Format)

From Wexos's Wiki
Revision as of 10:57, 4 May 2026 by Atlas (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

ABC (Area BloCk) is a file format found in Mario Kart Arcade GP DX and Luigi's Mansion Arcade. In Mario Kart Arcade GP DX it defines culling areas used in tracks, whereas in Luigi's Mansion Arcade it defines areas used for lighting.

File Format

The file byte order is always little endian.

File Header

The file starts with a header that is 0x10 bytes long.

Offset Type Description
0x00 Char[4] File magic. Always ABCT in ASCII.
0x04 Int32 Always 1. Maybe version? The game checks if this value is 1, otherwise it won't read the file.
0x08 Int32 Number of Areas (N).
0x0C Byte[4] Padding.
0x10 End of header, start of Areas

Areas

After the header, there are N 0x40-byte areas. Each area corresponds to each section of a corresponding VMD file. In Luigi's Mansion Arcade, it also references the sections from an ABT file. The area is made of a single 4x4 matrix. In Mario Kart Arcade GP DX this matrix is used to transform the current position of the camera's target. The game checks once per frame if the transformed position of each area lies within a -0.5f to 0.5f AABB cube to determine the culling status.

Area
Offset Type Description
0x00 Float[16] 4x4 matrix.

Tools

The following tools can handle ABC files:

  • (none)