Skip to main content
Early Access: MineXHost is live and still being built. Expect maintenance and occasional outages. Check live status

How to host a Minecraft modpack server: files, loader, Java, RAM and setup

Updated 10 min read By MineXHost

To host a modpack server, you need the pack's server files, the mod loader and Java version that match its Minecraft version, enough RAM, an accepted EULA and an open port. You can do each step yourself on any machine, or use a host that installs the pack and picks the loader, Java and memory for you. This guide covers both, step by step.

What does a modpack server need?

A modpack server is the dedicated-server side of a pack your players run in their launcher. It needs six things:

  • The pack's server files: the pack without the mods that only work in the game client.
  • The mod loader the pack was built for, at the loader version the pack names.
  • The Java version that matches the pack's Minecraft version.
  • Enough RAM for the pack and for the number of players online at once.
  • An accepted Minecraft EULA, in a file called eula.txt.
  • An open port, 25565 by default, so players can connect.

Your players join with the client version of the same pack, at the same pack version as the server.

Server pack or client pack: which one do I use?

A client pack is what players install in their launcher. It carries mods that only work in the game client, such as shaders, minimaps and HUD mods, and those mods crash a dedicated server. A server pack is the same pack with the client-only mods already removed.

Where the pack publishes server files, use them. If it does not, start from the client pack and remove the client-only mods yourself, which is the slow part of the job.

Which mod loader does my modpack use?

The pack's page names its loader and its Minecraft version. The server has to run that same loader, at the version the pack lists, because the pack's mods are built for it.

LoaderWhat it is
ForgeThe classic mod loader.
NeoForgeA community fork of Forge for current Minecraft versions.
FabricA lightweight mod loader that updates quickly for new Minecraft versions.
QuiltA community-driven mod loader that runs most Fabric mods.

Do not guess the loader from a pack's name or its series. Packs in the same family can use different loaders, so read it off the pack page every time.

Which Java version does a modpack server need?

Java follows the pack's Minecraft version. Mojang's version manifest lists these:

Minecraft versionJava version
1.16.5 and olderJava 8
1.17 to 1.17.1Java 16
1.18 to 1.20.4Java 17
1.20.5 to 1.21.11Java 21
26.1 and newerJava 25

For Minecraft 1.18 and newer, Mojang's release notes state the same requirement for the server. For 1.16.5 and older, the figure is what the launcher shipped clients with, which is a strong guide for the server but not a statement Mojang made about it. A loader or a pack can also need a specific Java release the table does not show, so check the pack's own notes.

Look up the Java version for any Minecraft release.

Minecraft Java version lookup

Why do client-only mods crash a dedicated server?

Some of Minecraft's code, for rendering, screens and input, exists only in the game client. Forge and NeoForge strip client-only code out of the server at load time, and when a mod reaches for it anyway the loader stops the server with a message such as invalid dist DEDICATED_SERVER. On Fabric and Quilt, a mod can declare itself client-only in its own metadata.

The fix is to remove the client-only mod from the server's mods folder. Players keep it in their own client, where it still works in multiplayer. Expect more than one: a client pack can carry many, and they tend to surface a few at a time.

Got the crash already? This guide shows how to find the mod when the message never names it.

Fix invalid dist DEDICATED_SERVER

How much RAM does a modpack server need?

Memory depends on the pack and on how many players are online at once. As a rule of thumb, a vanilla or light server runs fine on 2 to 4 GB, most mid-size modpacks want 6 to 8 GB, and large packs with 200 or more mods need 10 GB or more. Check the pack's own recommended memory too: a pack that asks for 8 GB will not run well in 4.

Set Java's heap, the -Xmx flag, a little below the server's total memory. Java keeps classes, buffers and its own bookkeeping outside the heap, and a heap that fills the machine gets the process killed under load.

Get a RAM figure for your pack and your group size.

Open the RAM calculator

How do I set up a modpack server myself, step by step?

  1. Pick the pack version, and note its Minecraft version and loader from the pack page.
  2. Download the server files if the pack publishes them. If not, start from the client pack and remove its client-only mods.
  3. Install the Java version that matches the Minecraft version.
  4. Install the loader's server at the version the pack names. Forge and NeoForge ship an installer that can install a server; Fabric publishes a server launcher.
  5. Copy the pack's mods and config folders into the server folder, if the server files did not include them.
  6. Start the server once. It creates eula.txt and shuts down. Read Mojang's EULA, then change eula=false to eula=true.
  7. Set the memory with the -Xmx flag in your start command, leaving room outside the heap.
  8. Open the server's port, 25565 by default (server-port in server.properties), in your firewall and router.
  9. Start the server and read the log from the top. Fix the first error before the rest.
  10. Back up the world before every change of pack, mod or Minecraft version.

If the server stops on its first boot, the crash message names the problem. Our troubleshooting guides cover the common ones: client-only mods, missing dependencies, Fabric mod resolution, mixin failures and out-of-memory errors.

Read the crash, find the mod, and fix it.

Browse the troubleshooting guides

What does MineXHost automate when you install a pack?

On MineXHost you pick a pack from CurseForge, Modrinth or FTB and install it in one click. MineXEngine, the launcher we built and run inside every server, then handles most of the steps above:

StepDoing it yourselfOn MineXHost
Loader and Minecraft versionRead them off the pack page and install the matching loaderMineXEngine detects both
JavaInstall the matching JavaMineXEngine picks it, from Java 8 for older packs up to Java 25
Client-only modsFind and remove them by handBefore the first boot, MineXEngine moves mods that cannot run on a dedicated server into a quarantine folder inside the mods folder (mods/.quarantined), where you can see them: mods marked client-only in their own files, and mods on a list of known client-side mods that crash servers. It also moves backup mods bundled in the pack, because MineXHost backs up your server itself, and extra copies of a mod installed twice. A mod that crashes the server after it starts is named in your console.
MemorySet -Xmx with headroomSized from your server's real memory limit, leaving room outside the heap
PortSet server-port and open itAssigned for you and written into server.properties on every boot
CrashesRead the log and restart by handDetected and restarted automatically, with a plain-English summary in your panel

Two limits, stated plainly. First, after a crash a customer server moves a mod aside without asking only in a few narrow cases: a mod whose mods.toml file is broken, a client-only mod that crashes the server, a mod MineXEngine has shown stops the server from starting, a second copy of a mod installed twice, and the old copy of a dependency it replaces with the version another mod needs. An empty mod file is removed; every other mod it moves goes to a separate folder and can be put back. Any other crashing mod is named in your console, and what to do with it is your call. Second, not every pack boots. Our QA Lab installs public CurseForge and Modrinth modpacks on test servers running MineXEngine and records whether each one starts and answers a server-list ping. That is a measured rate, not a promise about any particular modpack, and checkout marks packs with a known problem. The test servers may also automatically remove a mod that crashes the server in cases where a customer server only names it.

See the measured pass rate for each MineXEngine version.

See the modpack test results

Pick a plan by RAM and choose your modpack at checkout. We install it before the first boot, and MineXEngine sets up the loader, Java and memory for it. If checkout is not open yet, the homepage says so.

See hosting plans

Frequently asked questions

How do I host a Minecraft modpack server?

To host a Minecraft modpack server, get the pack's server files, install the mod loader and the Java version its Minecraft version needs, set eula=true in eula.txt, give the server enough memory, open its port (25565 by default) and start it. A host with one-click modpack installs does most of these steps for you, but not every pack boots on a dedicated server.

What is the difference between a server pack and a client pack?

A server pack is the same modpack with the client-only mods removed, made to run on a dedicated server, while a client pack is what players install in their launcher and includes mods such as shaders, minimaps and HUD mods that crash a server. Where a pack publishes server files, use them rather than uploading the client pack.

Which Java version does my modpack server need?

The Java version follows the pack's Minecraft version: Mojang's version manifest lists Java 8 for 1.16.5 and older, Java 16 for 1.17, Java 17 for 1.18 to 1.20.4, Java 21 for 1.20.5 to 1.21.11, and Java 25 from 26.1. A mod loader or a pack can need a more specific Java release, so check the pack's own notes as well.

Why does a client-only mod crash my modpack server?

A client-only mod crashes a dedicated server because it reaches for rendering, screen or input code that exists only in the game client, and the mod loader refuses to load that code on a server. Shaders, minimaps and HUD mods are the usual cases. Remove the mod from the server's mods folder; players keep it in their own client.

How much RAM does a modpack server need?

A modpack server's RAM depends on the pack and the players online: as a rule of thumb, a vanilla or light server runs fine on 2 to 4 GB, most mid-size modpacks want 6 to 8 GB, and large packs with 200 or more mods need 10 GB or more. Set the Java heap a little below the server's total memory, because Java needs room outside the heap for classes and buffers.

What does MineXHost automate when I install a modpack?

MineXHost installs a pack from CurseForge, Modrinth or FTB in one click, and MineXEngine, our launcher, detects the loader and Minecraft version, picks the Java version, sizes memory to your plan, and restarts the server if it crashes. Before the first start it sets aside mods that cannot or should not run on a dedicated server, such as client-only mods, a second copy of a mod, a damaged mod file and world-backup mods. After a crash, a customer server moves a mod aside on its own only in a few narrow, named cases, such as a client-only mod that crashes the server or a broken mods.toml file, and otherwise names the failing mod for you to decide. Not every pack boots: our test results page shows the measured pass rate.

Still stuck?

Every ticket is answered by a real person who plays Minecraft and knows modpacks. Send the full console output, not just the last line. Customers open a ticket from the panel; anyone can ask in our Discord.

  • Live support 5PM-12AM ET on weekdays
  • Replies typically within 12 hours
  • Limited availability on weekends