Home›Java›Mods›Universal FML

An easy way for mod developers to make Forge mods for both 1.8-1.12 and 1.13+.

Players:

This mod does NOTHING on either the client or server. You do not need to install it. It is for developers only.

Developers:

This mod defines a net.minecraftforge.fml.common.Mod annotation that contains both the legacy (1.8-1.12) and modern (1.13+) fields. This allows you to load one entrypoint in both legacy and modern forge, without having to make a split buildscript or deal with projects like Stonecutter.

Why?

I wanted to mixin into other mods (namely Essential) on 1.8 through 1.20.

Fabric/Neo?

Fabric uses fabric.mod.json to load entrypoints, which is intentionally kept backwards-compatible. Neoforge uses net.neoforged.fml.common.Mod, which you should be able to add (to a seperate class) and load with no issue.

Usage

Short answer: @Mod(value = "mymodid", modid = "mymodid", useMetadata = true), then put all of your metadata into mcmod.info and mods.toml.
Long answer: see the GitHub.

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more