ABCDEF
1
This is a listing of EventFlow functions used in Animal Crossing: New Horizons. This list is used to generate cleaner decompiled EventFlow output (.bfevfl decompiler) and to compile decompiled EventFlows (.evfl compiler).

Names of functions and return types are obtained from usage in the EventFlow files (*.bfevfl) or via hash cracking, and matched to mmh3 hashes and parameter names and types extracted from the game executable (exefs/main).

In some cases, a easier to read version is defined in the Conversions sheet. For example, EventFlow does not have any integer comparison nodes, so instead of doing "EventFlowQueryName() <= 5", "EventFlowQueryName(3, 5)" might be called instead, where the 3 represents <=, and the implementation of "EventFlowQueryName" performs the check and returns a boolean. To make decompiled code cleaner, the Conversions spreadsheet is used to map "EventFlowQueryName(3, 5)" into "EventFlowQueryName() <= 5" and back.

The vast majority (but not all) of event flow queries returning two values (i.e. boolean) are inverted: 1 is false and 0 is true. This is represented with an inverted_bool return type in this spreadsheet.

Enum names are not present in the decompiled game code for return values, so enums for return values are manually named. Enum names are present for parameter values, but in these cases, EventFlow simply passes the name of the enum value as a string.

Maintained by: asteriation#6884

Thanks to SuperSpazzy#9209 for cracking some hashes, and Ninji (@_Ninji) for their tools.

If you have any suggestions/fixes, feel free to make a comment on this spreadsheet or message asteriation#6884 on Discord.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25