Minecraft
Forge is the oldest big mod loader, with the largest library of mods for older Minecraft versions. Forge runs Forge mods only: not Fabric mods or Paper plugins.
Forge or NeoForge?
NeoForge split from Forge in 2023, and most big mods moved with it. Their mods aren't interchangeable.
| You want | Use |
|---|---|
| Minecraft 1.20.1 or older, or a modpack built on Forge | Forge |
| Minecraft 1.20.2 and newer (especially 1.21+), or a NeoForge modpack | NeoForge |
When in doubt, use the loader your modpack or your most important mods are made for. Their CurseForge or Modrinth page says which.
Setup checklist
- [ ] Minecraft and Forge versions matching your modpack, set on Startup, with the right Java. Versions and Java
- [ ] The pack's server files (server pack), not the player files. Modpacks
- [ ] No client-only mods in
mods/. - [ ] Memory to the pack author's recommendation. Memory
- [ ] World pre-generated with Chunky, after the first start. Pre-generate
- [ ] Backups every 6 hours and a restart every 12–24 hours.
Memory
| Server | Memory |
|---|---|
| Light pack (under 50 mods), 3–6 players | 4–6 GB |
| Medium pack (50–150 mods) | 6–8 GB |
| Big "kitchen sink" packs (200+ mods, e.g. All the Mods) | 10–12 GB, more for 10+ players |
Use the modpack author's number as your starting point, then watch with spark. The panel gives Java its share of your plan from the start command, so you don't need to set -Xmx.
Modpacks and server packs
- The panel's Modpacks page installs many CurseForge, Modrinth, FTB and ATLauncher packs in one click, including the right loader. Install mods and modpacks
- For a pack that isn't listed, download its Server Pack (CurseForge: Files → the version → Additional Files) and upload it. Never upload the client pack: it's full of client-only mods.
- Keep the
libraries/folder. Forge's installer puts the game and loader files there, and the server won't start without them.
Client-only mods crash servers
Graphics, shader and screen mods only work on players' PCs, and crash a server with errors like invalid dist DEDICATED_SERVER or net.minecraft.client. Remove them from mods/: OptiFine, Oculus, Embeddium, Rubidium, minimaps, HUD and menu mods. The crash log names the mod.
Performance
- spark to find lag; FerriteCore and ModernFix to cut memory use and start-up time (most big packs include them). Check each mod's page for your Minecraft version.
view-distance8 andsimulation-distance5–6 inserver.propertiesare plenty for modded servers.- Chunk loaders (from mods like FTB Chunks) keep areas loaded around the clock. Limit how many each player can have in the mod's config.
- Pre-generating the world matters even more on modded servers: modded world generation is slow.
Configs
config/: settings that apply to the whole server.world/serverconfig/: per-world settings that overrideconfig/. Many mods keep their gameplay options here.defaultconfigs/: copied into new worlds'serverconfigthe first time they're generated, so put settings here before creating a new world.
Edit configs with the server stopped.
Restarts and backups
- Modded servers slow down over long uptimes. Restart every 12–24 hours, or every 6–8 hours on heavy packs, with warnings at 10, 5 and 1 minute.
- Backups every 6 hours, plus a locked backup before updating the pack or any mod. Pack updates can remove mods, and removing a mod deletes its blocks and items from the world.
- Update the whole pack to a new version together, not single mods inside it.
Running behind Velocity
- Forge servers in a Velocity network need the Proxy Compatible Forge mod for secure forwarding.
- For Minecraft 1.13–1.20.1, Velocity also needs the Ambassador plugin to carry modded players through. Newer versions don't need it.
Common problems
| Problem | Fix |
|---|---|
invalid dist DEDICATED_SERVER / net.minecraft.client |
A client-only mod. Remove it. |
| Missing mods when players join | Players need the same pack version as the server. |
| Server won't start after a pack update | Read the first error in the log; usually a removed or renamed mod. Restore the locked backup if needed. |
| Very slow first start | Normal for big packs: several minutes. Watch the console, not the clock. |
| Lag spikes every few minutes | Memory too tight, or a chunk-loaded farm. Check with spark. |
