This article documents the format of the Redguard FNT files, which contain font graphics. The understanding of this format is a work in progress.
Overall FormatEdit
Header (56 bytes)
Header FormatEdit
The file header is 56 bytes in size and has the rough format:
0x00: 4 byte magic number : "FNHD" 0x04: big endian int : size of header (always 0x38) 0x08: 32 byte char array : name (corresponds to address 0x14 in struct) 0x28: (corresponds to address 0x34 in struct) 0x2a: (corresponds to address 0x36 in struct) 0x2c: (corresponds to address 0x38 in struct) 0x2e: (corresponds to address 0x3a in struct) 0x30: (corresponds to address 0x3c in struct) 0x32: (corresponds to address 0x3e in struct) 0x34: (corresponds to address 0x40 in struct) 0x36: (corresponds to address 0x42 in struct) 0x38: (corresponds to address 0x44 in struct) 0x3a: (corresponds to address 0x46 in struct) 0x3c: (corresponds to address 0x48 in struct) 0x3e: 2 byte value. Short? 0 indicates no palette in file (corresponds to address 0x4a in struct)
Palette FormatEdit
The palette is 776 bytes and has the following format:
0x00: 4 byte magic number : "FPAL" or "BPAL". not sure the difference 0x04: big endian int : size of palette (always 0x300) 0x08: 256 item array of colors (r, g, b), one byte for each color