What does the launcher do with regard to the operation of the game that cannot be done within the actual game itself? Is it due to a technical limitation or simply there for the convenience of the players? Are there alternatives to such methods of starting the execution of games?
This works by replacing assets, config files or even by injecting binaries into pre-compiled games, as well.
Minecraft is in a pre-compiled language (Java), but so is Skyrim (C, C++) which is famously modded (although most mods are written in Papyrus which is an interpreted scripting language, the game itself wasn’t).
Most mods for Tekken (C++) also work this way; they simply replace assets and config files.