NilLoader (ØL or 0L) is a minimal, easy-to-install, application-independent system for applying runtime patches to programs written in Java, compatible with any launcher that allows you to modify JVM arguments.

It’s based on the native Java agent system, but provides a comprehensive and convenient API for defining class patches and entrypoints on top of it. It additionally provides a system for working with obfuscated environments, without forcing you to write code using obfuscated names. (Note that NilLoader does not provide a “high-level” bytecode patching system like Mixin; you have to write raw bytecode patches using Mini or ASM directly.)

A NilLoader mod includes a complete copy of NilLoader within itself, allowing a NilLoader mod to be used directly as a Java agent. However, you can also load NilLoader alone as a Java agent, and it will discover NilLoader-compatible jars in a subdirectory called mods, or nilmods if another loader is being layered with NilLoader and is confused by the presence of NilLoader jars in its mods directory. Copies of NilLoader contained in these mods will be ignored by the class loader, avoiding version conflicts.

Features:

  • NilLoader was primarily designed for Minecraft, like a lot of Java bytecode patching frameworks. In a Minecraft environment, it is compatible with all current and past loaders, and can patch any version of the game from Cave Game Test to the latest snapshot. However, since NilLoader is so generic, it does not come with many conveniences that other loaders do, such as intermediate mappings, cross-version compatibility, or any API of any kind. NilLoader lets you do two things: patch classes, and get told when the JVM starts before anything else has run.
  • However, given these two possibilities, you can do just about anything else you want. Note that NilLoader is not a replacement for Fabric or Forge, it is an additional option for supporting weird versions or doing things the other loaders won’t let you do. Someone could very well build an entire API on top of NilLoader, but that someone will not be me, and it’s not something I intend to have happen.
  • NilLoader has its origins in the cross-version patching framework created for Ears, used for its ports to Beta 1.7, early versions of Forge, NFC, etc. That is, more or less, its intended purpose.

How to install:

Installing with Prism Launcher

  • Open Prism Launcher:
    • Start Prism Launcher on your computer.
  • Add NilLoader to Versions:
    • In the main interface of Prism Launcher, find the Versions section (usually located in the instance or profile management section).
    • Click the Add Empty button.
    • In the window that appears, enter the following information:
      • Name: NilLoader
      • Component ID: com.unascribed.nilloader
    • Press OK to add.
  • Check and run:
    • Return to Prism Launcher, select the Minecraft instance you want to use with NilLoader.
    • Run the instance to verify if NilLoader has been installed correctly.

Installing with other Launchers

  • Download NilLoader:
    • Download the JAR file below.
  • Place the file in the .minecraft folder:
    • Open the .minecraft folder on your computer:
      • Windows: Press Win + R, type %appdata%\.minecraft, and press Enter.
      • Mac: Open Finder, press Cmd + Shift + G, type ~/Library/Application Support/minecraft.
      • Linux: Open ~/.minecraft.
    • Copy the downloaded JAR file into the .minecraft folder.
    • Rename the file to NilLoader.jar for easier management.
  • Add JVM arguments:
    • Open the launcher you are using and find the settings or edit the profile/instance.
    • Locate the JVM Arguments section (or Advanced Settings, depending on the launcher).
    • Add the following line to the JVM Arguments:
      • -javaagent:NilLoader.jar
    • Ensure the path to NilLoader.jar is correct. If you placed the file in the .minecraft folder, the above line is sufficient. If you placed it elsewhere, provide the full path, e.g., -javaagent:C:\path\to\NilLoader.jar.
  • Check and run:
    • Save the settings and run the Minecraft instance.
    • If installed correctly, NilLoader will work and automatically detect compatible mods in the mods or nilmods folder within .minecraft.

Installing NilLoader mods (if needed):

  • If you want to use mods written for NilLoader:
    • Create a mods or nilmods folder in the .minecraft folder (use nilmods if you are using other loaders like Fabric/Forge to avoid conflicts).
    • Download JAR files of mods compatible with NilLoader and place them in the mods or nilmods folder.
    • NilLoader will automatically detect and run these mods when Minecraft starts.

NilLoader Download Links

For All Versions of Minecraft

Download from Server 1Download from Server 2

Click to rate this post!
[Total: 1 Average: 5]