AGL > PMAA > V2
This page describes the second version of the PMAA file format.
The file is organized out as follows:
Header
In little endian mode, the whole header is swapped, including the magic number.
Offset | Size | Description |
---|---|---|
0x0 | 4 | Magic number (PMAA ) |
0x4 | 4 | Version number (2) |
0x8 | 4 | Flags: 1 = little endian, 2 = shift-jis |
0xC | 4 | Filesize |
0x10 | 4 | Effect type version |
0x14 | 4 | Length of effect type name, including null terminator and padding |
0x18 | 4 | Total number of parameter lists |
0x1C | 4 | Total number of parameter objects |
0x20 | 4 | Total number of parameter values |
0x24 | 4 | Size of parameter data |
0x28 | 4 | Size of string table |
0x2C | 4 | Unknown |
0x30 | Effect type name |
The effect type name is always padded so that its length is a multiple of 4.
Parameter List
The parameter lists are stored behind the header.
Offset | Size | Description |
---|---|---|
0x0 | 4 | Name hash |
0x4 | 4 | 0xAAAABBBB : A = number of child lists, B = offset to first child list |
0x8 | 4 | 0xAAAABBBB : A = number of child objects, B = offset to first child object |
Offsets are measured in 32-bit words, relative to the name hash.
Parameter Object
Offset | Size | Description |
---|---|---|
0x0 | 4 | Name hash |
0x4 | 4 | 0xAAAABBBB : A = number of parameters, B = offset to first parameter |
Offsets are measured in 32-bit words, relative to the name hash.
Parameter Value
Offset | Size | Description |
---|---|---|
0x0 | 4 | Name hash |
0x4 | 4 | 0xAABBBBBB : A = type id, B = offset to data |
Offsets are measured in 32-bit words, relative to the name hash.
Parameter Data
The parameter data section contains raw parameter values. It is referenced by the parameter value headers.
String Table
The string table contains null terminated strings, each of which is aligned to a multiple of 4 bytes.