How to Set Up a NeoForge Server Properly
Step-by-step guide to setting up a NeoForge server properly, covering installer usage, Java 21 configuration, mod loading, and performance best practices.
What Is NeoForge?
NeoForge is the community-driven successor to Minecraft Forge, created after a governance split in the Forge project. For Minecraft 1.20.2 and later, NeoForge has become the primary destination for modders who previously built on Forge. If you are starting a new modded server on 1.21 or later, neoforge server setup is likely your best path forward.
NeoForge maintains broad API compatibility with Forge, so many existing Forge mods work on NeoForge with minimal changes. However, it is a separate loader, you cannot mix NeoForge and Forge jars.
Requirements
A proper neoforge server setup requires:
- Java 21 for Minecraft 1.21+. NeoForge dropped Java 17 support starting with 1.21. Install OpenJDK 21 (Adoptium Temurin is recommended).
- Sufficient RAM. Bare NeoForge needs about 2 GB. With mods, allocate based on your pack size. See our RAM calculator.
- A supported Minecraft version. NeoForge targets 1.20.2+ only. For older versions, use legacy Forge.
Installation
Download the NeoForge installer from the official NeoForge website. Run it with:
java -jar neoforge-installer.jar --installServer
This downloads the vanilla server jar, installs NeoForge libraries, and creates the launch scripts. The neoforge server setup produces several files:
- A
run.sh(Linux/Mac) orrun.bat(Windows) launch script. - A
libraries/directory with NeoForge dependencies. - A
mods/folder where you place mod jars.
Edit the launch script to set your JVM flags and RAM allocation. For optimal flags, see our JVM flags guide. Accept the EULA in eula.txt.
Adding Mods
Place NeoForge-compatible mod jars in the mods/ folder. Check each mod's page to confirm it supports NeoForge (not just Forge). Some mods list both, while others target only one loader. Dependencies must also be NeoForge-compatible.
Start the server and watch the console for mod loading messages. Each mod prints its name and version during startup. Errors are clearly marked with the mod name and the reason for failure. Common first-boot issues during neoforge server setup include missing dependencies and incorrect Java versions.
Configuration
Mods generate config files in config/ on first boot. Server properties work identically to vanilla Minecraft. NeoForge adds a neoforge-common.toml and neoforge-server.toml that control loader-level settings like permission levels for mod commands and dimension handling.
For server performance, the same principles apply as Forge: pre-generate chunks with Chunky, keep view distance reasonable (8 to 10), and monitor with Spark. The neoforge server setup benefits from Java 21's improved garbage collection, so make sure you are using modern GC flags rather than legacy ones.
Migrating From Forge
If you have an existing Forge server, migration to NeoForge involves replacing the server jar, updating mods to NeoForge-compatible versions, and testing thoroughly. Your world data carries over without changes. Configs may need minor adjustments if mod authors changed config keys between their Forge and NeoForge releases. For cross-loader migration details, see our Forge-to-Fabric guide, which covers similar migration concepts.
The overall process is straightforward once you have the right Java version and mod jars in place. Most issues stem from using outdated Forge mods that have not been ported to NeoForge yet. Check each mod's page for NeoForge compatibility before adding it to your server.
Try our server: Astroworld MC, IP play.astroworldmc.com, Java + Bedrock.