How to Update Your Modded Minecraft Server

How to Update Your Modded Minecraft Server

12 min read

Mod pack updates happen all the time, and if you're playing on a server, you may be faced with errors like:

Mismatched mod channel list.

Minecraft error message showing mismatched mod channel list between client and server

The most likely cause for this issue is that the server you're playing on is a different version of Minecraft than what is installed on your local machine.

If you're not the server owner, then your quickest course of action is probably to install the version that is on the server. Check with your server administrator to find out the exact version of the mod pack you should be running. Mod launchers generally give you an option to install specific versions of a mod pack.

If you are the server owner and want to update your mod pack to the latest version, read on...

There's a Video Version

The Minecraft Server Directory

If you look in the directory structure of a Minecraft Server, you'll see that there are lots of folders and files in there. This is the folder list for a Prominence II RPG server, which is running on Fabric. Other mod packs will look similar but with some differences.

Minecraft server directory structure showing folders and files layout

Make Backups

Before doing anything, you should make backups of your server folder.

If you are running the server on your PC, or on a hosted Linux system somewhere, you should just compress the entire server folder so you have everything. If you are on a hosted server provider, they will likely have backups, or even handle everything for you if you request it, and it's included in their support. If you're doing everything yourself, you should still make backups of your important files. Most hosting providers have a "Backup" feature. This generally just backs up your world and not the entire server.

At a bare minimum, you should backup your world file by compressing the folder and copying it to another location away from the current server files. You're going to be deleting and moving files, and you don't want to risk deleting your backups!

Backing up the entire folder is a good idea to have an easy back-out plan. But everything other than the world folder can be replaced.

Don't lose your world. Players will be sad.

Always back up your world folders.

In Windows, right click on your world folder and click "Compress to..." and chose Zip file (or any option you're familiar with). Name that something meaningful and move it somewhere safe.

What are the Minecraft Server Files and What Needs to be Updated?

First and foremost, the most critical folders are your world folders. In the above example, the world folder is named world, which is the default name of your world directory. This is different than a Minecraft client with local saves, which are saved in the "saves" folder. In the simplest terms, the only folder that you must retain in a server upgrade is the world folders. You can copy a world folder into a fresh server install and it will load. In that case, you may miss other customizations you've made to a server, like server.properties, but generally these settings (like the seed, difficulty, etc.) are stored in the world data.

I'll say it again: Always back up your world folders.

There are important files here like server.properties, which have all the configuration settings for your world, and if you have modified that, you don't want to delete it. There are other files here, like banned-ips.json, banned-players.json, options.txt, ops.txt, etc. that may have been configured and you generally don't want to update these, or you may need to reconfigure them if they are reset. For example ops.txt contains your server operarators.

Many of these are created and updated by Minecraft when it runs, and don't need to be updated.

Likewise, there are many folders that are created and updated by Minecraft and some mods on-the-fly, that you don't need to update.

The files that you do want to update are as follows. When updating, you want to delete them first entirely, and then copy the new folders over them. For example, if mods have been removed from a pack, you want to make sure they're deleted, and simply writing a new folder over an old one will not update/delete files that have been removed.

Core Updates

  • config - this is where any mod configuration files go
  • defaultconfigs - worlds have their own server config files which get copied from here when a world is generated. After a world is generated, the files in this folder aren't used. It never hurts to update this folder, but it won't affect existing worlds.
  • libraries - this is where the Minecraft and mod loader Java files are stored in recent versions of Minecraft. You'll want to delete this folder so they are recreated with any updates.
  • mods - this is where the mod .jar files are stored.

Note that some Minecraft hosting providers have their Java directories set up differently. Apex has a jar folder, in which the libraries folder lives. For a hosting provider, you're probably just going to delete that, and they'll take care of installing the Minecraft jar files.

Additional Mod Pack Dependent updates

Depending on the mod pack and the mods and methods used to customize the game, there may be other files that you need to update as well. Some common ones are:

  • kubejs - many mod packs use KubeJS to customize functionality, recipes, structures, loot, etc. If you see this folder, you must update it.
  • patchouli_books - if a mod pack has added its own Patchouli books, they may be in here. If you see this folder, it's a good idea to update it.
  • resourcepacks - if a server has resourcepacks installed, they may go here. Generally mod packs don't use resource packs, so this is unlikely.

The Manual Update Process

A manual mod pack update generally starts with a new server install, in a new directory on your PC to get the updated files.

Install the New Server Software in a Temporary Location

1. Download the mod pack's server file from Curseforge, Modrinth, etc., and extract it. It doesn't matter where. We'll delete this folder when we're finished.

2. Run the start.bat or start.ps1 file, depending on the modpack

3. Correct any errors, until you at least get to the EULA warning. It's ok if you do, but you don't need to go any further than this. All the folders you need have been created.

If you run into any issues, or need a reminder, here are full instructions on how to install a Modded Minecraft Server. There's also a video in there.

Zip Up the New Server Files

Go to the newly installed server folder and select the folders that you need to update, and compress them to a zip file.

Here on my Valhelsia 6 update, I'm going to compress these files. They may not all be required, but it doesn't hurt.

Selecting Minecraft server folders for compression during update process

Select all these folders by clicking on the first one, then ctrl+click on the rest. Right click on one of them, ensuring they all stay highlighted, and Compress to Zip.

Name this file something meaningful, like Valhelsia-server-v6.2.zip.

Creating ZIP file for Minecraft server update with meaningful filename

Stop the Server and Make Backups

Type "stop" into the server console, or otherwise stop the server using your normal methods.

Minecraft server console showing stop command being executed

Make a backup of your world folder. You can also make a backup of your entire server folder to be extra safe.

Creating backup of Minecraft server world folder before update

Did I mention, mAKe BACkUPs!?!?

Prepare the Server For Updating

On your server, we need to replace the same folders that we zipped up above.

This server directory may be on your local PC or on a hosted server elsewhere. If you're just on your local PC the steps are simplified as you can just access them all through your File Explorer to delete/rename, copy the zip file with the new folders to the new directory, then extract the Zip file in place.

If you are running on a separate server somewhere, access the server via your normal methods, such as an FTP client like Filezilla or WinSCP. Or if you have root access to a Linux server, like on Oracle Cloud Free Tier, you may use SSH to log in.

Here I am renaming the folders in WinSCP FTP client

WinSCP FTP client interface showing folder renaming during server update

If you're using a Minecraft Hosting provider like Apex Hosting, you will also have access to a web interface with your files in it where you can rename, delete, and upload new files.

Also, see that jar directory? That's a bit different because it's a Minecraft hosting provider. See the note below about that. But we're going to want to rename/delete that as well.

Apex Hosting web interface file manager for Minecraft server updates

Whichever method you use, go to your server directory and either delete these folders, or rename them. Generally, I rename them by editing the folders and giving them an extension named after the old version, like config.v12. Folders that are renamed like this essentially don't exist.

If things go wrong, I can delete the new folders I created, and rename these back. If things go well, I'll delete these later.

Note that if you have completely set this up yourself, like on a local PC or on a linux server somewhere, everything on the server should be exactly the same as setting up the server the first time, namely with the libraries file.

On some Minecraft Hosting providers, the Java files are stored a bit differently. On Apex, there's a jar folder that contains the library folder. Generally, you can just delete this folder and the Apex start up scripts will re create it. When in doubt, you can always ask the support team.

Upload/Copy the Zip File to the Server Directory

After renaming or deleting the old folders, the same folders that you've Zipped up from the new server folder, upload the new server ZIP file using your FTP software, SCP (SSH copy), or the hosting web interface.

If you're using an FTP client, you can drag the zip file into the remote directory in the FTP software.

Uploading ZIP file to Minecraft server via FTP client

If you're using the web interface, there's an upload link in the FTP page.

Extract the Zip File

If you're on the PC, just double click it to extract it.

If you're on a hosted server, use the web interface to unzip it. You cannot unzip a file using an FTP client.

Web interface showing ZIP file extraction option for Minecraft server update

If you have root access, SSH in and extract the file with Linux unzip commands. Hopefully you know how to do this since you did it in the first place when you set up the server!

Confirm that the all of the new folders have been created by visually inspecting the file structure in your FTP client or web interface, or SSH console. These folders will be created if they don't exist, so it's easy to be fooled after starting the server and these folders weren't properly updated.

Start the server

Start the server with your normal methods, either by running start.bat, start.ps1, or click the start button on your Minecraft hosting web interface.

Watch the console to make sure things look normal, and at the very least don't crash!

Test the Server

The ultimate test is to connect with your client that's updated to the same version as what you put on the server. Be sure to communicate the change to your players!

Clean up

I'd wait a few days, and if everything's running ok, we've made a bit of a mess here, so let's clean it up by deleting the new server directory we created on the local PC. we don't need that any more. And we can always make another one. on the Minecraft server, delete the directories that we renamed with a .vXXX extension. You don't need to stop the server to do this. I'd leave the other backups that we created of the world or of the entire folder probably until the next update.

That's it! Have fun!