HomeGame GuidesHow to add Mods and Maps to your Server - Project Zomboid

How to add Mods and Maps to your Server – Project Zomboid

Published on


By SuperCoolDuden

This will show you how to add maps and mods to your server.

This was originally used as a guide specifically for G-Portal dedicated servers, but the steps can be used for any server that is being hosted. If you don’t have a G-Portal server can just skip the steps that I talk about it, the other parts are the same for all servers.

You will need FileZilla, can download it here:


Adding Mods / Restarting or Resetting a Server

First, using a wordpad write down the Workshop ID and Mod name of all the mods you wish to add, with “WorkshopItems” (the Workshop ID) on one line and “Mods” on another, and separate them all by a semicolon.

You can get this info from the bottom of each mod’s description in the Steam Workshop:

So, if you were wanting two mods, in this case Hydrocraft and the Evis mini map, you’d have in your wordpad:



Do this for all the mods you want to add, and save the text file somewhere as a backup, as if you restart or wipe a server you’ll have to manually do this again. If you want a baseline to copy that has tons of mods, you can use mine below:

Mods=Grapeseed;BedfordFalls;EerieCountry;RavenCreek;Hashima;FORTREDSTONE;modoptions;Brita;Hydrocraft;MVM;More Gun;Making Bullets;svgMCerdato;USFpack;TMC_TrueActions;Tactical Weapons;ShowSkillXpGain;Swatpack;CraftHelper41;ATA_Bus;2206552815;ArmoredVests;2612617201;1904952813;Apocalypse Machines 2 WheelZ;ReducedWoodWeight2x41;autotsartrailers;FitnessGains;Arsenal(26)GunFighter;tsarslib;betterLockpicking;ProfessionFrameworkB41Patch;eris_minimap_hashima_island_plugin;eris_minimap_bedford_falls_plugin;eris_minimap_Louisville_plugin;MinimalDisplayBars;RainWash;Smoker;QuitSmoking;eris_minimap_westpoint_expansion_plugin;eris_minimap_grapeseed_plugin;eris_minimap_fort_redstone_plugin;eris_minimap_raven_creek_plugin;DisableAdminUI


IF YOU ARE ADDING MAP MODS, LIST THEM FIRST IN ORDER IN BOTH PLACES, if not the order is mostly irrelevant, though some mods that rely on others will explicitly tell you in the mod description to put them first.

Afterwards, navigate to the Settings page of your server on the G-Portal website and copy the Mods and Workshop Item numbers to their respective places:

If you are on a new server and haven’t run multiplayer yet, THEORETICALLY just restarting the server after saving these settings should be enough to get the mods into your game, but the sync and Settings page between the Settings page on the G-Portal website and on the server itself get out of wack a lot, especially if you edit anything with the Admin panel in-game.

So, to double check, and if you are adding in mods for the first time, it’s best to verify your serversettings.ini file on the server itself via FTP.

On the Status page of your server is your server IP and password, as well as a guide on how to access your Server via FTP, I’ll link it here and in the next steps assume you have accessed your server already:

(if you aren’t using G-portal just get FileZilla from here and FTP in:

https://filezilla-project.org/download.php?type=client )

Now, you can copy this serversettings.ini file over to your desktop and open it:

This file is the most important file on your server and manages all the settings. It’s good practice in general to keep a copy of it on hand as backup.

Open it and make sure the




sections are the same as on your Settings page on the G-Portal website. Just note that Workshopitems= is the same as

SteamWorkshopItems on the G-Portal Settings page.

If something is missing, edit the .ini and overwrite the .ini with the correct settings over FTP.

Now the last thing to do, which may or may not be optional based on the mods you are adding, is to clear your server saves and map and reset everything. You can also do this if you want to do a server wipe later for some reason.

Just delete the contents of this servertest folder and db folder over FTP:

Do this after Resetting your server on the G-Portal website and double-checking the servers servertest.ini file.

Now, when you start a new character the mods should all work. I’ve read other threads saying you need to copy mod contents but I’ve never had to do that, you should only have to copy anything when using map mods.

If you are not using map mods, and don’t care that the spawn selection is broken, then you are done and can ignore everything below. If you wish to add map mods, go on to part two.

Adding Maps

First of all, if you are adding maps follow the above steps to reset your server and delete all character saves. I’m not sure if it is entirely necessary, but if you follow the steps below and it doesn’t work, redo everything after deleting your server map and saves and I promise it will work.

Ok, now the next thing you need to do is create a “mods” folder on your server over FTP, then copy the map mods content to your server. You can get the files on your own computer from subscribing to the maps over the Steam Workshop, and search for them in your C:\Program Files (x86)\Steam\steamapps\workshop\content\108600 folder by default. The folders there correspond to the workshop ID from your maps that you have already gotten previously.

If you are using the same mods and maps as mine as a base, your server should look like this:

Next, copy ALL the contents of the “media” folder in each of the mod maps over ftp to the /media/maps folder on your server, and if you are asked to overwrite anything than do so.

Now we need to create a file that is missing from G-Portal servers. I have no idea why and it must be some mistake related to how they implement forced spawning by default for some bizarre reason due to this dropdown menu in the G-Portal website options here:

This dropdown menu is messing with your server and preventing you and your players from picking their map, spawn location, and also seems to lead to the lack of a .lua file that prevents map mods from working.

So, let’s create the .lua file. You can do this over notepad, create a .txt file and when you’re done change the extension to .lua.

The file should be called servertest_spawnregions.lua and goes in the same location as your servertest.ini file on your server, in the same Server folder.

The contents should include all of the maps you want and link them to the /media/maps/ locations of the map mods you just put on your server, and should look similar to this. If you are using my map mods from above can just copy this and create the .lua file directly:

function SpawnRegions()

    return {

        { name = “Muldraugh, KY”, file = “media/maps/Muldraugh, KY/spawnpoints.lua” },

        { name = “Riverside, KY”, file = “media/maps/Riverside, KY/spawnpoints.lua” },

        { name = “Rosewood, KY”, file = “media/maps/Rosewood, KY/spawnpoints.lua” },

        { name = “West Point, KY”, file = “media/maps/West Point, KY/spawnpoints.lua” },

        { name = “BedfordFalls”, file = “media/maps/BedfordFalls/spawnpoints.lua” },

        { name = “North”, file = “media/maps/North/spawnpoints.lua” },

        { name = “South”, file = “media/maps/South/spawnpoints.lua” },

        { name = “West”, file = “media/maps/West/spawnpoints.lua” },

        { name = “Eerie A”, file = “media/maps/Eerie A/spawnpoints.lua” },

        { name = “Eerie B”, file = “media/maps/Eerie B/spawnpoints.lua” },

        { name = “Eerie C”, file = “media/maps/Eerie C/spawnpoints.lua” },

        { name = “Eerie Country”, file = “media/maps/Eerie Country/spawnpoints.lua” },

        { name = “Eerie D”, file = “media/maps/Eerie D/spawnpoints.lua” },

        { name = “FortRedstone”, file = “media/maps/FortRedstone/spawnpoints.lua” },

        { name = “Grapeseed”, file = “media/maps/Grapeseed/spawnpoints.lua” },

        { name = “Hashima Island by Woldren”, file = “media/maps/Hashima Island by Woldren/spawnpoints.lua” },

        { name = “RavenCreek”, file = “media/maps/RavenCreek/spawnpoints.lua” },



Just change the names to those of your maps you wish to host, save as a .lua file called servertest_spawnregions.lua and then copy the .lua file to your servers “Server” folder.

Next, edit your servers “servertest.ini” file’s map= section to include the map name of all of the maps you are adding to your server. In my case, it looks like this:

Map=Grapeseed;BedfordFalls;North;South;West;Eerie A;Eerie B;Eerie C;Eerie Country;Eerie D;RavenCreek;Hashima Island by Woldren;FortRedstone;Riverside, KY;Rosewood, KY;West Point, K;Muldraugh, KY

YOU MUST PUT “Muldraugh, KY” LAST, I’m not sure why but if you don’t then the others won’t load.

Note that if you Restart your server on the G-Portal website, or Save changes on the G-Portal website, it will delete the map= section and revert to only having “Muldraugh, KY”, so I highly recommend future changes you do to just be over FTP alone and you keep backups of ALL the files in the servers “Server” folder so you can quickly fix things in the event of a backup.

Thankfully you don’t need to recopy the map files themselves in the event of a reset.

Now, you can finally login with a new character and pick your map and use map mods.

Latest articles

ATEEZ’s San’s Matching Tattoo With Wooyoung Has Finally Been Revealed

Last yr, ATEEZ‘s Wooyoung revealed a tattoo on his thigh that had the group’s fandom overwhelmed...

Phrase that confirms you’ve got understood. Crossword Clue

Crosswords might be a wonderful option to stimulate your mind, go the...

Is Purrloin Shiny? Spotlight Hour Rewards & Bonuses

October is right here and it’s Spooky Season with Pokemon GO being the...

Crush Felt Like He Was Auditioning When He Performed At BTS J-Hope’s Sister’s Wedding

He was singing in entrance of all of BTS! ...

More like this

ATEEZ’s San’s Matching Tattoo With Wooyoung Has Finally Been Revealed

Last yr, ATEEZ‘s Wooyoung revealed a tattoo on his thigh that had the group’s fandom overwhelmed...

Phrase that confirms you’ve got understood. Crossword Clue

Crosswords might be a wonderful option to stimulate your mind, go the...

Is Purrloin Shiny? Spotlight Hour Rewards & Bonuses

October is right here and it’s Spooky Season with Pokemon GO being the...