Duke3D: Undefining gamefuncs breaks the mouse buttons display
By using the CON command
definegamefuncname, it is possible to disable a gamefunc entirely by simply not specifying a name, thus removing it from the list of available keybinds. This completely disables the gamefunc and it cannot even be bound through the console, so my assumption is that this behavior is intended.
For instance, the following definitions disable all multiplayer-related keybinds:
definegamefuncname 37 definegamefuncname 43 definegamefuncname 45 definegamefuncname 53
However, as soon as a single gamefunc is undefined, upon restarting the game with the script loaded, all mouse keybinds that are normally set to
"-NONE-" will instead display
"Custom", see attached screenshot:
This does not appear to have any effect on the functionality of the keybinds. Judging from the source code, the "custom" string is the result of a binary search not finding the value in the list, so it's possible that by undefining a gamefunc, the binary search stops working correctly.