Upgrading a modded Minecraft server should be exciting—a chance to explore new features and improvements. But more often than not, it turns into a tangled mess of compatibility issues, broken mods, and hours of troubleshooting. I recently attempted to upgrade my server from Minecraft 1.20.1 to 1.21.1, and what followed was a three-hour journey into modding hell.
The Modding Fork: Forge vs. NeoForge
My server runs MineColonies as the central mod, which, as of writing, hasn’t released a 1.21.1 version for Forge. Instead, it’s available on NeoForge—a newer fork of Forge created due to creative differences in the development community. Since most of the core developers behind my essential mods had moved to NeoForge, I figured it was a good time to make the switch.
So, I spent about an hour rebuilding the entire modpack under NeoForge. Most of the original addons weren’t available on NeoForge, but thankfully, many had already been integrated into the base mod itself. I removed the outdated ones, consolidated everything, and verified that the client could run without crashing.
The Safety Net: Testing on a Cloned Server
Before touching the live environment, I made a clone of the production server VM using Proxmox. This is something I highly recommend if you’re running a self-hosted server. Working on a duplicate virtual machine meant I could safely test the modpack, configuration, and startup process without risking any player data or progress.
It’s a step that saved me from disaster—more than once.
Server Upgrades Are Never Simple
The real trouble began when updating the server itself.
Because of how drastically different NeoForge is from Forge, I was cautious even with the clone. I’ve made this mistake before—running a modded server without the actual mods loaded. The server defaulted to vanilla, and as you can imagine, all the colony data was nuked. I had to spend an entire day in creative mode manually rebuilding the starter colonies and factories.
Lesson learned.
So this time, I made sure to install NeoForge correctly using the provided installer in the server folder. Easy enough. But when I tried to run run.sh
, the terminal window would close immediately—no logs, no errors, just silence. Which is the worst kind of error.
Java Version Roulette
I suspected a Java compatibility issue. I ran apt-get update
and apt-get upgrade
to make sure my system was current, but the problem persisted. Eventually, I ditched the run script and executed the Java commands manually in the terminal. That’s when I confirmed: incompatible Java version.
After some digging (shout out to Microsoft’s JDK install guide), I installed the correct version of Java. Finally, the server launched… but without any colony data.
Not again.
Final Verdict: Stick With What Works
At this point, I had a choice:
- Push forward with the 1.21.1 NeoForge setup and risk permanent world damage.
- Or stick with 1.20.1 Forge and wait for official mod updates.
I chose the second option. It’s a shame to miss out on all the new 1.21.1 features, but I’d rather have a stable, working server than risk forcing players to rebuild their progress from scratch.
TL;DR
- Upgraded from Forge 1.20.1 to NeoForge 1.21.1 due to MineColonies only supporting NeoForge.
- Rebuilt the modpack and removed deprecated addons.
- Cloned the server VM in Proxmox to test safely.
- Faced silent crashes due to Java incompatibility.
- After hours of troubleshooting and a successful launch, colony data was missing.
- Reverted to 1.20.1 until mods catch up.
Sometimes, progress means waiting. If you’re running a modded server, always back up your data, test changes in a safe environment (like a cloned VM), double-check your Java version, and when in doubt… maybe just wait a little longer.
Leave a Reply