Runtime patching in Nova
Introduction
Patching is a pretty common practice in most modding communities. Sometimes it's even the only way to add specific features to a game. Minecraft is no exception here. Most of the time, modding frameworks use 1 of 2 main approaches to modify Minecraft's code. The first way is decompiling Minecraft, applying predefined patch files to the decompiled code and finally, recompiling the entire server. These patch files are usually using git's diff format.
As an example, here's one of the patches applied when running BuildTools to ensure the correct CommandDispatcher is used: