DayZ Server Mods: Install and Manage Them Step by Step
Install DayZ server mods step by step: get each @mod folder, list it in -mod with its dependencies first, copy its key to keys/ and check it loads.
You will need
- A DayZ server for PC (Steam) that you can stop and restart
- Access to its files and its start parameters
- The Steam Workshop page of every mod you want
- A backup of the server taken before the change
DayZ server mods are folders named @Something that sit next to the server, listed in the -mod start parameter with their dependencies first, each with its .bikey copied into the server’s keys folder. Get those three things right and your friends join with the same mods and no kicks. Get one wrong and the server either ignores the mod, refuses players, or never finishes loading.
If you have not chosen a provider yet, first use our DayZ server hosting with mods checklist to compare Workshop access, dependencies, keys, update behavior and recovery.
This guide walks the procedure that works on any host or home server: list what each mod needs, get the folders onto the server, write the load order, install the keys, prove it loaded, and change mods later without losing the world. Everything was checked on DayZ 1.29 (build 163709) running on Linux, with notes for Windows where it differs.
Back up and list what every mod requires#
If you have not settled on a modded setup yet, first read our overview of how DayZ mods work. Once you have chosen what to run, write each mod’s requirements before downloading anything. A missing requirement is one reason a mod can appear to do nothing.
On the mod’s Steam Workshop page, the Required items box lists its dependencies. Follow each one, because requirements have requirements of their own: an Expansion module needs DayZ-Expansion, which needs CF. Write them in order, foundations at the top.
| Mod | What it does | Usually needs | Made by (Workshop page) |
|---|---|---|---|
| CF (Community Framework) | Shared code other mods build on | Nothing | Jacob_Mango, Arkensor |
| Community Online Tools | In-game admin menu: teleport, spawn items, weather | CF | Jacob_Mango, Arkensor, LieutenantMaster |
| VPPAdminTools | In-game admin menu with its own permissions | Nothing extra | DaOne, GravityWolf |
| Dabs Framework | Framework used by several server and UI mods | Nothing | dab |
| DayZ-Expansion | Large content overhaul split into modules | CF | DayZ Expansion team |
Every mod is its author’s work; read its Workshop page for the license and whether you may repack it (most authors forbid reuploads). Check the Updated date too. A mod untouched for a year may not load on the current game version.
Then take a backup of the whole server, or at least of serverDZ.cfg, keys/ and the world: the mpmissions/<your mission>/storage_1 folder (the number matches instanceId in serverDZ.cfg). The world is the part you can’t download again.
Get each mod’s @folder onto the server#
Subscribing to a mod in your own Steam client only downloads it for your game. The server needs its own copy of every mod folder, in the server’s install folder, next to DayZServer (Linux) or DayZServer_x64.exe (Windows).
A mod folder looks like this once it’s in place:
@CF/
addons/ the .pbo files and their .bisign signatures
keys/ the mod's .bikey
meta.cpp the Workshop ID and nameDownload the mod with SteamCMD (self-hosted servers)
Workshop downloads for DayZ need a Steam account that owns the game; anonymous login is refused. Log in and download by Workshop ID (the number after
?id=in the mod’s URL):bash steamcmd +login YOUR_ACCOUNT +workshop_download_item 221100 1559212036 +quitThe files land in
steamapps/workshop/content/221100/1559212036/. Copy that folder to the server folder and name it after the mod, for example@CF.On Linux, make every file name lower case
The Linux server skips addons whose folder or file names have capital letters; nothing in the log says why. Rename
Addonstoaddonsand every.pboand.bisigninside to lower case. On Windows the case doesn’t matter.bash cd @CF && find . -depth -name '*[A-Z]*' -execdir sh -c 'mv "$1" "$(echo "$1" | tr A-Z a-z)"' _ {} \;Keep a short folder name without spaces
@CFand@Community-Online-Toolsare easy to list; a folder called@Community Online Toolsneeds quotes everywhere. Many owners name folders after the Workshop ID (@1559212036), which never collides.
On a rented server, use the host’s Workshop installer if it has one, or upload the folders with its file manager. Either way, check that each @folder sits at the top of the server install and has an addons folder full of .pbo files.
List the mods in -mod in load order#
The server only loads the folders named in its start parameters. Client mods (the ones players need too) go in -mod, separated by semicolons, in dependency order: the mod others need comes first.
-mod=@CF;@Dabs-Framework;@Community-Online-Tools;@DayZ-ExpansionOn Windows, inside a .bat file, quote the whole parameter so semicolons and spaces survive:
start DayZServer_x64.exe -config=serverDZ.cfg -port=2302 "-mod=@CF;@Community-Online-Tools" -profiles=profilesOn Linux, quote it for the shell the same way:
./DayZServer -config=serverDZ.cfg -port=2302 "-mod=@CF;@Community-Online-Tools" -profiles=profiles| Parameter | What goes in it | Players need the mod? |
|---|---|---|
-mod= |
Everything players see or use: items, maps, UI, admin menus | Yes, the same version |
-serverMod= |
Server-only logic: economy, logging, AI controllers that send nothing new to clients | No |
Most mods are client mods. Only put a mod in -serverMod when its page says it is server-side; a client mod there leaves players with missing items or a crash on join.
If the order is wrong, the mod that loaded too early can’t find what it needs. The script log then shows errors pointing at the later mod, so when a mod “breaks”, check what loads before it first.
Copy every .bikey into keys/ and keep verifySignatures = 2#
DayZ checks that every .pbo a player loads is signed by a key the server trusts. Each mod ships its key in its own keys folder; the server only trusts keys in its top-level keys folder.
cp @CF/keys/*.bikey keys/
cp @Community-Online-Tools/keys/*.bikey keys/keys/ already holds dayz.bikey; leave it there. In serverDZ.cfg, keep signature checks on:
verifySignatures = 2; // check every .pbo against its .bisignBohemia’s server configuration page lists 2 as the supported value. A missing key doesn’t stop the server; it kicks the players who load that mod, usually seconds after they join, with a message about a file or signature. When that happens, the fix is the key, not the mod.
Test a join and read the logs#
A mod is installed when the server finishes loading with it and a player can join and see it. Test before you tell your group.
Start the server and watch it finish loading
The server is ready when its console prints
Player connect enabled. If it never does, open the newestscript_*.login theprofilesfolder and search forCan't compile: the lines around it name the mod and the file. A script error stops the load completely, which is why one outdated mod can keep the whole server down.Join with the same mods
In the DayZ Launcher, find the server under Servers → Community (or Direct connect with its numeric IP and port). The launcher lists the content the server requires and offers to set up those mods and join. Players can also subscribe on the Workshop beforehand, or join through DZSA Launcher, which downloads a server’s mods by itself.
Check the mod in game
Spawn and look for what the mod adds: the admin menu’s key, a new item, a map marker. Then read the server’s
.RPTlog inprofilesfor errors that mention the mod.
| What you see | Usual cause | Fix |
|---|---|---|
Server never reaches Player connect enabled |
A script error in a mod | Can't compile in script_*.log; update or remove that mod |
| Mod loads on Windows but not on Linux | Capital letters in folder or file names | Rename to lower case |
| Players kicked seconds after joining | Missing or outdated .bikey |
Copy the mod’s key into keys/ |
| Players can’t join, launcher says versions differ | Server or player has an older copy of the mod | Update the server’s copy and restart; players update through Steam |
| Mod’s items never appear in the world | Its items aren’t in the mission’s loot tables | Merge the mod’s types.xml entries into db/types.xml |
Add, remove and update mods without wiping#
You don’t need to wipe to add a mod. The world lives in the mission’s storage_1 folder, and a new mod just adds content to it. Restart after adding it and the world is still there.
Removing a mod is the risky change. Items, vehicles and bases that came from that mod no longer exist in the game’s data, so the server drops them from the world when it loads; the script log shows lines like Entity will not be loaded correctly. Before removing a mod your players used, warn them and take a backup of storage_1, so you can go back if the group misses their base.
To remove a mod cleanly: take it out of -mod, delete its @folder, delete its .bikey from keys/, and restart.
Updates are the change that catches most groups. When an author updates a mod on the Workshop, Steam updates it on every player’s PC automatically, but the server keeps its old copy until you download the new one and restart. Until then, players with the new version can’t join. Restart the server after mod updates, with an in-game warning first, and copy the new key if the author changed it.
Let the panel do the downloading, keys and order#
Everything above is the job for a home server or a bare rented one. If you’d rather not run SteamCMD with your own Steam account, rename files for Linux and copy keys by hand, a DayZ server from Game Hosting does those steps for you. It’s for PC players on Steam.
In the Mods tab you search the Workshop by name, or paste a mod’s link, its ID, a collection or a DayZ Launcher preset (Mods → Presets → Export in the launcher). The mods each one requires are added above it in the right order, and the server downloads every mod and its keys with our own Steam account on each start, so you never type your Steam login into a panel. You mark server-only mods with a switch, see which mods have an update on the Workshop, and restart in 5 minutes with an in-game warning or wait until nobody is on. Each mod in the list links back to its Workshop page and its authors.
Quest complete
Before you invite your friends, check that the intended world loaded and that each player can connect. If those checks pass, you're ready for a session; if you'd rather not keep a PC on, that's what we're here for.
Quick answers
How do I get mods on my DayZ server?
Download each mod from the Steam Workshop onto the server as an @folder, list the folders in the -mod start parameter with dependencies first, copy every .bikey into keys/ and restart. Subscribing in your own game does not install anything on the server.
Where do DayZ mod keys go on the server?
In the keys folder at the top of the server install, next to DayZServer. Each mod ships its .bikey in its own keys folder; copy it across, or players are kicked for unsigned files.
Do I need to wipe my server to add mods?
No. Adding a mod keeps the world. Removing one can delete the items and buildings that came from it, so back up the storage folder first and avoid removing mods your players built with.
Do players need to download the mods too?
Yes, for every mod in -mod. The DayZ Launcher offers to set up the required mods when they join, or they can subscribe on the Workshop or use DZSA Launcher. Mods in -serverMod need nothing on their side.
Why is my DayZ server stuck loading after adding a mod?
Usually a script error. Open the newest script log in the profiles folder and look for "Can't compile": it names the mod. Update or remove that mod, or the one it depends on.




