A DayZ server on a VPS: loot economy, restarts and protection
What loads a DayZ server is not so much the number of players as the number of things in the world. The game's central economy constantly tracks every item, vehicle, tent and zombie on the map: what to spawn, what to delete, what to persist. Sixty players on vanilla Chernarus is a manageable task, while thirty on a server with base-building mods and doubled loot can drop the "server FPS" to the point where gunfights start to desync. So a VPS for DayZ is chosen by your plans for the economy and mods, and only then by slots.
CPU and server FPS
The main health indicator of a server is its FPS, that is, how many times per second it manages to update the world. It depends on one fast core: entity and economy simulation runs mostly on the main thread. Hence the filter in the table: 4 cores from 3 GHz, sorted by clock speed. Extra cores are needed for networking, saves and BattlEye, but they don't speed up the world itself. FPS usually doesn't drop right away but towards the end of the cycle between restarts, when abandoned vehicles, stashes and structures have piled up on the map.
- A vanilla server for up to 60 players: 4 fast cores and 8 GB of memory.
- A server with mods for bases, vehicles and traders: 12–16 GB, since mods are loaded into memory in full.
- Several servers, or a test server next to the main one: count each instance separately.
The install itself doesn't need much disk, but mods, logs and the persistence folder come on top; 40 GB is a sensible minimum, and NVMe speeds up world saves.
Economy, persistence and restarts
The world state is stored in the storage_1 folder inside the mission folder, and the spawn rules live in the economy XML files, above all types.xml: for each item it sets the number on the map, the minimum and the lifetime. The most common causes of performance drops are inflated nominal values after edits "to get more loot" and unlimited lifetimes for structures. Before buying a more powerful plan, check the economy: editing a few lines often does more than extra gigabytes. It's handy to keep a copy of the mission next to the main server for experiments: economy changes don't show up immediately but over several spawn cycles, and testing them on a live world with players is risky.
DayZ servers are customarily restarted on a schedule, usually every 3–4 hours: at startup the economy redistributes loot and the server frees accumulated memory. Restart times and player warnings are set in the mission's messages.xml. Before a game update, copy storage_1 and the configuration: if the update breaks mods, there's no way to roll back without a copy.
Windows or Linux
The DayZ dedicated server is installed through SteamCMD (app 223350), and downloading it requires a Steam account that owns the game; anonymous login doesn't work. The server's main platform is Windows: mod documentation, admin tools and most guides are written for it, so for a modded setup it's simpler to take a VPS with Windows and allow 2–3 GB of memory for the system. A Linux version of the server also exists and is more economical, but some mods and server utilities are Windows-only, so test your setup on a test server before moving.
Mods, ports and protection
Mods are downloaded from Steam Workshop and enabled with the -mod=@Mod1;@Mod2 launch parameter, server-side ones through -serverMod. The signing keys from each mod's folder (the .bikey files) must be copied into the server's keys folder, otherwise players will be kicked on connect. The order of mods in the launch line matters: dependencies must load before the mods that use them.
The default game port is 2302/UDP; the official instructions recommend opening the 2302–2305/UDP range and the Steam query port, which is set in steamQueryPort in serverDZ.cfg (often 27016/UDP). Without it the server won't appear in the list. The BattlEye anti-cheat is enabled by default, and admin panels use its RCON: the password is set in beserver_x64.cfg, and the port should be closed to outside IPs.
Popular DayZ PvP servers regularly get hit by flood attacks: from rival projects, before a wipe, during raids. That's why the DDoS protection filter is on by default in the table: for a public server it's not an option but a requirement. Rust has a similar set of problems (wipes, raids, attacks and single-threaded simulation), so compare with the VPS for Rust page if you're choosing a game for your community. For players in Russia ping matters too: in long-range firefights the difference between 15 and 70 ms is noticeable, and the VPS with low ping selection will help you choose a location. Elsewhere, the same rule applies: host close to where most of your players are.