> ## Content Index
> Fetch the complete content index at: https://dedicatedmc.io/blog/llms.txt
> Use this file to discover other available public pages before exploring further.

# How to set up a modpack server
- URL: https://dedicatedmc.io/blog/modpack-server-setup/
- Published: 2026-08-16T10:00:00.000Z
- Updated: 2026-10-30T12:21:05.000Z
- Description: How to set up a Minecraft modpack server in order, matching the pack, loader and version, allocating memory, and keeping client and server mods in sync.
- Author: Mark E
- Tags: Guide, Minecraft, Modded

Setting up a modpack server is mostly an exercise in getting a lot of small things to match exactly. The pack, the loader, the Minecraft version and the mod list all have to line up between the server and every client, and when one of them is off by a version the server either refuses to start or throws players out at the login screen. None of it is hard once you know what has to match. This post walks the setup in order, and points out the handful of places where things usually go wrong.

## Get the correct server pack

A modpack ships in two shapes. There is the client pack, which is what you install through a launcher to play, and there is the server pack, which is the set of files that runs the server. They are not interchangeable. The server pack strips out the client-only mods, includes a startup script, and is meant to run headless without a game window. Installing a client pack on your server, or the other way round, is one of the most common first mistakes.

Most packs publish a server pack in the same place as the client one. On CurseForge the pack page usually has a server files download in the Files tab, under Additional Files for that version, and the CurseForge app can export one too. FTB packs distribute their server files from feed-the-beast.com through the FTB Server Installer, a `serverinstall_<packid>_<version>` program you run once to pull down the loader, mods and configs. Modrinth packs ship an `.mrpack` you install with a tool like `mrpack-install` or the Modrinth app. The rule that matters is simple: the server pack version has to be the same as the client pack version your players are running. If the client pack is on version 2.4, you download server pack 2.4, not the latest.

## Match the loader and Minecraft version exactly

A server pack is built for one mod loader on one Minecraft version, and both have to match what your players connect with. If the pack is NeoForge on 1.21.1, the server runs the NeoForge server build for 1.21.1, and every client runs the same. This is why the pack dictates the loader at setup time rather than leaving it to you, a point we cover in [choosing a mod loader](https://dedicatedmc.io/blog/choosing-a-mod-loader). A mismatch here is the single biggest cause of a server that will not start, and the error messages are not always obvious about it, so check the loader and the version first whenever something fails at launch.

If you are running through a game panel rather than a bare box, you usually select the loader and version when you create the server, then drop the pack's mods in. On our panel that is the same flow you would use for any modded server. The important part is that the numbers match the pack, exactly, down to the point release.

## Allocate memory sensibly

A loaded modpack needs more heap than vanilla, because mods load a great many classes and hold more in memory. So the vanilla habit of assigning a couple of gigabytes will not carry a heavy pack. But more heap is not more speed. Give the server enough that it is not constantly garbage-collecting or swapping, and stop there, because past the point it needs, extra heap does nothing useful and can lengthen garbage-collection pauses. A modded server is still CPU-bound on a single thread underneath, so the heap is there to keep it stable, not to make it tick faster. The actual ranges for different pack sizes are in [how much RAM a Minecraft server needs](https://dedicatedmc.io/blog/how-much-ram-minecraft-server).

## First launch and the EULA

The first time you start a modded server it does a lot of work: the loader installs itself, the mods initialise, configs generate, and the world builds its initial spawn area. This first start is slow and that is normal. On many setups the very first launch stops immediately and writes out a eula.txt file, because Mojang requires you to accept the EULA before the server will run. You open that file and change the line `eula=false` to `eula=true`, save it, and start again. The script you launch is usually `run.sh` on Linux or `run.bat` on Windows for a modern Forge or NeoForge pack, and `start.sh` or `start.bat` on some FTB and older packs. After that it should carry through to generating the world and reaching the point where players can connect.

Watch the first launch to completion rather than walking away, because this is where a mismatched mod or a missing dependency announces itself in the log. A server that crashes on first start almost always tells you why in the last few lines before it stops.

## Keep client and server mod lists in sync

Once it is running, the ongoing rule is that the client and server mod lists have to stay in agreement. Most mods that affect gameplay have to be present on both sides, and if the server has a mod a client does not, or runs a different version of it, the client usually cannot join. This is why using the matched client and server packs from the same publisher matters so much: they are built to agree. The place people trip is updating. If you bump the pack to a new version on the server, every player has to update their client pack to the same version, or they are locked out until they do. Update the pack as a coordinated step, not a quiet one, and tell your players before you do it.

Some mods are client-only, things like minimaps and visual tweaks, and those live on the client and are absent from the server pack by design. That is expected and not a mismatch. The ones that have to match are the gameplay and content mods, which is most of the pack.

## Where it usually goes wrong

Almost every failed modpack setup traces back to a small number of causes. The version does not match, client to server, or loader to pack. The wrong file set was used, a client pack where a server pack was needed. The EULA was never accepted, so it stops before it starts. The heap is too low and it crashes under load rather than at launch. A mod was updated on one side and not the other. Work through those in order and you will find most problems before they become a mystery. When a modded server misbehaves in ways that are not launch failures, [modded server troubleshooting](https://dedicatedmc.io/blog/modded-server-troubleshooting) picks up from there, and the wider stack around all of this is in the [running a Minecraft SMP](https://dedicatedmc.io/blog/running-a-minecraft-smp) pillar.

The setup rewards patience on the first launch and precision on the versions. Get those two right and a modpack server is no harder to keep running than a vanilla one. It just asks for more from the box underneath it.

If you want that box built for the single-thread load a heavy pack puts on a server, that is what we run.

[Explore modded Minecraft hosting](https://dedicatedmc.io/modded-minecraft-server-hosting?ref=dedicatedmc.io)