BFEVFL
Jump to navigation
Jump to search
bfevfl is a binary file format for event flows.
Structures
bfevfl is a little endian format, so values are stored in little endian even on Wii U.
bfevfl uses pointers very heavily. All pointers are always 64 bit long -- since the same format is used on the Switch which is a 64 bit platform -- and must be present in the #Relocation table.
There is no fixed order for most sections. Therefore, this article will only document the data structures and the most common order. For more details, it is recommended to look at the evfl
library directly.
Header
Offset | Type | Description |
---|---|---|
0x0 | char[8] | Magic ("BFEVFL\x00\x00") |
0x8 | u16 | Version (0x0300) |
0xa | u8 | Unknown (must be zero) |
0xb | u8 | Unknown |
0xc | u16 | Byte order mark |
0xe | u8 | Alignment (to get the actual value: 1 << raw_value) |
0xf | u8 | Unknown |
0x10 | u32 | File name offset |
0x14 | u16 | Is relocated flag (set in memory) |
0x16 | u16 | First block offset |
0x18 | u32 | Relocation table offset |
0x1c | u32 | File size |
0x20 | u16 | Number of flowcharts |
0x22 | u16 | Number of timelines |
0x24 | u32 | Padding |
0x28 | Flowchart* | Flowchart (nullptr if no flowchart) |
0x30 | Dic* | Flowchart name dictionary |
0x38 | Timeline* | Timeline (nullptr if no timeline) |
0x40 | Dic* | Timeline name dictionary |
Relocation table
This section is empty. You can help by adding to it. |
Dic
This section is empty. You can help by adding to it. |
Flowchart
This section is empty. You can help by adding to it. |
Timeline
This section is empty. You can help by adding to it. |
Tools
evfl
: Python library for parsing and writing event flows- EventEditor: graphical editor for event flows