NeoBackports

NeoBackports

Backports of various Neoforge / 1.21.1 features to 1.20.1 for easier maintenance between versions

by
6 Downloads
forgelibrary
Rent Server with this Mod

About this Mod

A library for using neoforge 1.21.1 features and methods on forge 1.20.1

This mod is intended to be used as a library included with other mods. Currently, the only standalone features are blurred 1.21-style gui backgrounds. Manually installing a newer version than is packaged is only useful for fixing bugs

Current features include:

  • Datamaps
  • Data components
  • Data attachments
  • Stream codecs
  • Blurred gui backgrounds (enabled with a built-in resourepack)
  • DeferredHolders (and their subtypes)
  • 1.21.1-style networking
  • Recipe serializers with codecs
  • useItemOn and useWithoutItem methods for blocks

... and a lot of convenience interface extensions

Q&A

  • Why backport to 1.20.1? wouldn't it make more sense to help devs port up instead of down?
  • Making a lib for foward porting is fundamentally pointless, as it carries technical debt and would require porting the lib up every new version. Devs would never get used to new features, even when they are objectively better, and would make laggier and buggier mods. Doing it this way means we can satisfy the 1.20 crowd while still pushing them towards newer version
  • This sounds like a synitra connector type mod, could it work that way?
  • Theoretically, if I put a lot of work into it, it could make very tiny 1.21.1 mods run on 1.20.1, but the support would be extremely limited so it's not work the time. TLDR: NO

Installation instructions

Since this lib uses interface injections, switching from ForgeGradle to ModDevGradle Legacy gradle plugin is required. Documentation here and a working MDK here

In build.gradle:

repositories {
    // Some other repositories you might have...
    
    maven {
        url = 'https://nikdo53.github.io/NeoBackports'
    }
}

dependencies {
    // Some other dependencies you might have...

    jarJar(modImplementation("net.nikdo53:NeoBackports:${neobackports_version}"))
    interfaceInjectionData("net.nikdo53:NeoBackports:${neobackports_version}")
}

In gradle.properties:

# Set this to whatever is latest
neobackports_version=1.2.2

Technical differences

Features aren't backported 1 to 1 (due to backend differences between versions) but should be similar enough for most mods to just work without major differences

Class names

In order to make the difference between original forge/vanilla classes and backported ones, backported classes get the "neo" suffix, for example:

  • SmithingRecipe -> SmithingRecipeNeo
  • PacketDistributor -> PacketDistributorNeo
  • DeferredRegister -> DeferredRegisterTyped (this ones different cuz i forgot)

Data components/attachments

Unlike 1.21.1, these are just clever wrappers for existing features (item nbt and capabilities respectively), meaning that other mods not using this API should be able to access them like normal.

Datamaps

These have been (with permission) ported directly from neoforges code with minimal differences. Note that the login packet which handshaked known datamaps has been removed and non-mandatory are generally not supported. I might return to this in the future, but since this mod is required on both client and server, it's probably not very useful (and 1.20.1 login packets are weird)

Stream codecs

The ByteBuf generic has been removed, since everything uses FriendlyByteBuf:

StreamCodec<RegistryFriendlyByteBuf, SomeClass> -> StreamCodec

The icon is a tibetan fox, it looks pissed cuz its been forced to use forge

Available Versions

NeoBackports 1.2.2release
MC 1.20.1forge
June 20, 2026

How to Install NeoBackports on Your Server

1

Order Server

Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).

2

Set forge Loader

In the panel under "Egg", select the forge loader and matching Minecraft version (1.20.1).

3

Install Mod

Open the mod browser in the dashboard and search for "NeoBackports". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.

Compatibility

Mod Loaders

forge

Minecraft Versions

1.20.1

Server-side

Required

Recommended RAM

4 GB(min. 3 GB)

Frequently Asked Questions

NeoBackports server crashes on startup – what to do?

Most common cause: wrong forge version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.20.1). You can switch loaders with one click in the panel.

Is NeoBackports compatible with forge?

NeoBackports officially supports forge for Minecraft 1.20.1. The Mado dashboard automatically detects incompatible loader combinations.

Server lagging with NeoBackports – how to optimize performance?

Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if NeoBackports consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.

Rent Modded Server

Install NeoBackports with just one click on your server.

Recommended RAM
4 GBab €8/mo
Min. 3 GB | +1 GB pro 8 Spieler
Create Server Now
1-Click Mod Install
NVMe SSD Storage
DDoS Protection included

Details

License
GNU Lesser General Public License v2.1 only
Server-side
Required

Supported Versions

1.20.1