AGL > PMAA > V1
This page describes the first version of the PMAA file format.
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 (1) |
| 0x8 | 4 | Flags: 1 = little endian |
| 0xC | 4 | Filesize |
| 0x10 | 4 | Effect type version |
| 0x14 | 4 | Length of effect type name, including null terminator and padding |
| 0x18 | Effect type name | |
| Root list |
In old games, the rest of the file is misaligned if the length of the type name is not a multiple of 4. In newer games, padding is added to the effect type name so that its length is always a multiple of 4.
Parameter List
The size includes the header and all children.
| Offset | Size | Description |
|---|---|---|
| 0x0 | 4 | Size |
| 0x4 | 4 | Name hash |
| 0x8 | 4 | Number of child lists |
| 0xC | 4 | Number of child objects |
| 0x10 | Child lists | |
| Child objects |
Parameter Object
The size includes both the header and parameter values.
| Offset | Size | Description |
|---|---|---|
| 0x0 | 4 | Size |
| 0x4 | 4 | Number of parameters |
| 0x8 | 4 | Name hash |
| 0xC | 4 | Type name hash |
| 0x10 | Parameter values |
Parameter Value
The size includes both the header and data, so it is the size of the data plus 12.
| Offset | Size | Description |
|---|---|---|
| 0x0 | 4 | Size |
| 0x4 | 4 | Type id |
| 0x8 | 4 | Name hash |
| 0xC | Data |