MegaByte

From U.B. Funkeys Wiki
Revision as of 14:45, 11 October 2026 by NanderTGA(U.K. Funkeys) (talk | contribs) (fix <code> formatting)
Jump to navigation Jump to search

Outside of this community, a megabyte usually refers to a unit used to refer to storage or memory on computers.

In the modding scene however, MegaByte often has a different meaning. MegaByte is the internal name used to refer to the internal workings of the physical hub. Sometimes the name Bitty is also used (editor's note: I'm not 100% sure of this, but User:Lako used the name in FunkeySelectorGUI and OpenFK).

Internal Workings

The internal workings consist of an unsigned driver and an accompanying MegaByte.exe file. These are both located in the U.B. Funkeys\MegaByte folder.

When starting the game, the U.B. Funkeys game executable (UBFunkeys.exe or OpenFK v3 or higher) starts MegaByte.exe and they then communicate through window messages. (editor's note: check the source code of OpenFunk and the discord messages of the cool modder who found this, this part is probably not that accurate).

MegaByte.exe reads from the hub through an unsigned driver, which makes use of an old version of a driver toolkit known as WinDriver (the used version is now known to be full of exploits). Because it is unsigned, you need to jump through a bunch of hoops to install it (see the guide for instructions). It's also not that unlikely that this old, outdated, unsigned, exploitable driver could cause issues with various kernel-level anti-cheat programs (which are also massive security risks themselves), but there have been no reports so far.

Replacements

There are a couple of ways to substitute the functionality that is normally provided by MegaByte.exe:

  • Not using the hub and using FunkeySelectorGUI instead. It can even pose as MegaByte.exe and communicate with the game executable in the same way. This means that you can even replace MegaByte.exe with FSGUI on Windows XP, and it will work.
  • Using the modified version of Bawoosette's rust driver code that writes to a customF.txt file (requires funkeys selection mod or OpenFK). Currently there are however no builds available and it has only been tested on linux. It also requires root permissions to run unless you figure out the correct udev rules to give it the right permissions.
  • FunkeyOne's MegaByte replacement, which is known to work on modern windows and possibly doesn't need the original unsigned driver. It is however closed-source and that means nobody can study or improve it, let alone the malware risk.