WiiU:Applying ROM Patches
On Wii U, mods for games are applied via Caffiine/SDCaffiine. These apps changes what file the game is loading at runtime, so that the actual files in the Wii U are unchanged.
Caffiine
Caffiine remotely streams files from a PC to a Wii U, making it quite convenient for mod development on real hardware.
Legacy CFW
On legacy CFWs, Caffiine is launched as an app via Homebrew Launcher, and then runs in the background. Some combination homebrews (such as SDGeckiine) also include it among other homebrews, such as TCPGecko, so that it can be run alongside those other applications.
Aroma CFW
Currently, Caffiine does not have a port for Aroma.
SDCaffiine
SDCaffiine offers the same patching that Caffiine provides, but instead of loading from another device via the network, it checks a directory on the SD card to apply file patches.
SDCaffiine expects a file tree in a specific place on the SD card. This root of this tree changes depending on which version being used. However, the actual file tree stays the same: In the base folder is a series of folders, named the title ID of the game or app the mod is for. Within each of those folders, there are one or several folders, each containing the mods. The names of these folders dictates what the mod shows up as in the selection menu. Inside those folders is where the actual files of the mod are stored. The folder structure of the mod files will mirror the folder system of the actual game when installed.
When an app is launched and mods for it are detected on the SD card, a selection menu will appear, allowing the user to select which mods they want to use (or if they don't want to use any mods)
Legacy CFW
On legacy CFWs, SDCaffiine is launched as an app via the Homebrew Launcher, and then runs in the background. The root of SDCaffiine is contained in SD:/sdcaffiine on the SD card.
Aroma CFW
On Aroma, SDCaffiine is a plugin, which automatically runs full time. The root for SDCaffiine is found in SD:/wiiu/sdcaffiine here. The plugin can be set (via the settings in the plugin config menu) to automatically load mods if only one mod is present for a game, otherwise the mod selection menu will appear onscreen as usual.