FRME (File Format)
From Retro Modding Wiki
The FRME format is used to create frames for the GUI and HUD.
This file format needs more research We don't know a lot of settings in a lot of the widgets. Also, a lot of the widget structures are incomplete. |
Contents
Format
The FRME format is composed of a short header and then a number of widgets.
Header
Offset | Size | Description |
---|---|---|
0x0 | 4 | Unknown |
0x4 | 4 | Unknown |
0x8 | 4 | Unknown |
0xC | 4 | Unknown |
0x10 | 4 | Widget count |
Widgets
Each widget has a fourCC denoting its type, a name, and usually a parent widget name. There are no IDs or indices used in the file; widgets reference each other by name. The following values are set on every widget:
Type | Count | Description |
---|---|---|
char | 4 | Widget type fourCC |
string | 1 | Widget name |
string | 1 | Parent name |
Following this are a list of parameters; the number, type, and usage of the parameters is different for different widgets.
Head Widget (HWIG)
Offset | Size | Description |
---|---|---|
0x0 | 2 | Unknown |
0x2 | 2 | Unknown |
0x4 | 4 | R (float) |
0x8 | 4 | G (float) |
0xC | 4 | B (float) |
0x10 | 4 | A (float) |
0x14 | 4 | Unknown; doesn't seem to do anything |
0x18 | 1 | Unknown; tends to crash the game if modified |
0x19 | 4 | Unknown |
0x1D | 4 | Unknown |
0x21 | 4 | Unknown |
0x25 | 4 | X Scale |
0x29 | 4 | X Position |
0x2D | 4 | X Unknown (creates a skew effect) |
0x31 | 4 | X Unknown (creates a scale effect) |
0x35 | 4 | Y Scale |
0x39 | 4 | Y Position |
0x3D | 4 | Y Unknown (creates a skew effect) |
0x41 | 4 | Y Unknown (creates a scale effect) |
0x45 | 4 | Z Scale |
0x49 | 4 | Z Position |
0x4D | 4 | Z Unknown (creates a skew effect) |
0x51 | 4 | Z Unknown (creates a scale effect) |
0x55 | 4 | Unknown |
0x59 | 2 | Unknown |
0x5B | End of widget |
Base Widget (BWIG)
Incomplete. This widget might have the same parameters as HWIG.
Offset | Size | Description |
---|---|---|
0x0 | 2 | Unknown |
0x2 | 2 | Unknown |
Table Group (TBGP)
Camera (CAMR)
Incomplete.
Offset | Size | Description |
---|---|---|
0x0 | 4 | R (float) (RGBA settings don't seem to do anything on cameras) |
0x4 | 4 | G (float) |
0x8 | 4 | B (float) |
0xC | 4 | A (float) |
0x10 | 4 | Unknown |
0x14 | 4 | Unknown |
0x18 | 4 | Something - Left |
0x1C | 4 | Something - Right |
0x20 | 4 | Something - Top |
0x24 | 4 | Something - Bottom |
Light (LITE)
Model (MODL)
Text Pane (TXPN)
Offset | Size | Description |
---|---|---|
0x0 | 2 | Unknown |
0x2 | 2 | Unknown |
0x4 | 4 | R (float) |
0x8 | 4 | G (float) |
0xC | 4 | B (float) |
0x10 | 4 | A (float) |
0x14 | 4 | Unknown |
0x18 | 4 | Width (float) |
0x1C | 4 | Height (float) |
0x20 | 4 | X Offset (float) |
0x24 | 4 | Unknown (float) |
0x28 | 4 | Y Offset (float) |
0x2C | 4 | Unknown (float) |
0x30 | 2 | Unknown |
0x32 | 4 | Unknown |
0x36 | 4 | Unknown |
0x3E | 4 | Unknown |
0x42 | 4 | Unknown |
0x46 | 4 | Unknown |
0x4A | 4 | Unknown |
0x4E | 4 | Unknown |
0x52 | 4 | Unknown |
0x56 | 4 | Unknown |
0x5A | 4 | Unknown |
0x5E | 4 | Unknown |
0x62 | 1 | Unknown |
0x63 | 4 | Unknown |
0x67 | 4 | Unknown |
0x6B | 4 | Unknown |
0x6F | 4 | Unknown |
0x73 | 4 | Unknown |
0x77 | 4 | Unknown |
0x7B | 4 | Unknown |
0x7F | 4 | Unknown |
0x83 | 4 | Unknown |
0x87 | 4 | Unknown |
0x8B | 4 | Unknown |
0x8F | 4 | Unknown |
0x93 | 4 | Unknown |
0x97 | 4 | Unknown |
0x9B | 4 | Unknown |
0x9F | 4 | Unknown |
0xA3 | 2 | Unknown |
0xA5 | End of widget |