Setting up a modpack server is more involved than vanilla - but with the right steps, you can have it running in under 30 minutes.
Forge vs Fabric: Which Loader?
The modpack you want to run determines your loader. You don't get to choose.
- Forge/NeoForge: Feed The Beast (FTB), All The Mods (ATM), RLCraft, SevTech Ages, Create
- Fabric: Fabulously Optimized, Cobblemon, William Wythers Overhauled Overworld, some Create ports
Check the modpack's CurseForge or Modrinth page - it will clearly state which loader is required.
Setting Up a Forge Modpack Server
Step 1: Get the Server Files
Most modpacks provide a server pack download. On CurseForge or Modrinth, look for "Server Pack" or "Server Files" in the download options. This ZIP contains everything needed.
Step 2: Upload to Your Server
Extract the server pack locally, then upload everything to your server via FTP or the web file manager. The structure should include a forge-*.jar or run.sh, along with mods/, config/, and other directories.
Step 3: Configure Startup
Set your startup command to point to the Forge JAR with appropriate memory flags:
java -Xms8G -Xmx8G -jar forge-1.20.1-47.3.1.jar --nogui
On Space-Node's control panel, you configure the startup parameters in the server settings. Select the Forge JAR as the server file and set your memory allocation.
Step 4: Accept the EULA
On first run, the server generates eula.txt. Change eula=false to eula=true and restart.
Step 5: Configure Server Properties
Edit server.properties:
max-players=20
view-distance=8
simulation-distance=6
server-port=25565
difficulty=normal
Reduce view distance from the default 10 to 8 for modded - your TPS will thank you.
Setting Up a Fabric Modpack Server
Step 1: Install Fabric Server
Download the Fabric server installer from fabricmc.net. Run it or upload the resulting fabric-server-launch.jar.
Step 2: Add Mods
Upload all server-side mods to the mods/ folder. Client-only mods (shaders, HUDs) should NOT be on the server.
Step 3: Essential Server-Side Mods
Always include these Fabric server mods:
- Lithium - General server optimization
- Starlight - Lighting engine rewrite (massive performance gain)
- C2ME - Multi-threaded chunk generation
- FerriteCore - Memory optimization
- Krypton - Network stack optimization
Step 4: Same Configuration
Edit server.properties the same way as Forge. Accept EULA. Set memory flags.
Common Issues and Fixes
Server Crashes on Startup
- "java.lang.OutOfMemoryError" - Increase RAM allocation. Most modpacks need 6-12GB.
- "Mod X requires Mod Y version Z" - Dependency mismatch. Download the exact version specified.
- "Mixin apply failed" - Mod conflict. Remove the last mod you added and test.
Server Runs But Players Can't Join
- Ensure clients have the EXACT same mods and versions as the server
- Remove client-only mods from the server (minimap mods, shader mods)
- Check that the server port is open and reachable
TPS Drops After Playing
- Check Spark profiler for the worst offenders
- Common culprits: mob farms, automated systems, chunk loaders
- Reduce loaded chunks per player in server config
Player Distribution
Your players need the same mods installed client-side. Options:
- CurseForge/Modrinth app: Players install the pack directly from the launcher
- Custom launcher: Use packwiz or MCUpdater for custom modpack distribution
- Manual ZIP: Distribute a client ZIP with instructions (least user-friendly)
For custom packs not on CurseForge/Modrinth, create a packwiz repository that players can import into Prism Launcher or MultiMC.
Performance Expectations
Modded Minecraft server performance on Space-Node's Ryzen 9 7950X3D servers:
| Modpack | Players | RAM Used | Average TPS | |---------|---------|----------|-------------| | Create: A&B | 10 | 5.8GB | 19.9 | | ATM10 | 8 | 9.2GB | 19.6 | | RLCraft | 15 | 4.1GB | 19.8 | | Vault Hunters | 10 | 5.5GB | 19.7 | | BetterMC | 12 | 4.8GB | 19.9 |
The Ryzen 9's 3D V-Cache is particularly helpful for modded - the extra L3 cache absorbs the random memory access patterns that modded Minecraft generates constantly.
