Prepay & save up to 40% · 3 months −20% · 6 months −30% · 12 months −40% Client Area
Guide

How to Set Up an Unturned Server

Unturned··10 min read

Unturned is the free, low-poly zombie-survival sandbox with a massive Workshop. A dedicated server with RocketMod plugins and Workshop content is cheap to run and endlessly moddable. This step-by-step guide shows you how to set up an Unturned server in minutes — no manual install, no command line.

What you need

  • A Unturned plan with around 2–4 GB of RAM — Unturned is a Light-class game.
  • Support for RocketMod plugins and Steam Workshop, included on every GGameHost Unturned plan.
  • Your friends or community to play with (24–48 slots).

Step 1 — Choose your plan

Pick a plan sized for your Unturned community. We recommend about 2–4 GB of RAM; start smaller and upgrade in one click as you add players or mods. Unturned plans start at $3.99/mo.

Step 2 — Deploy your server

Check out and your Unturned server provisions automatically in under 60 seconds, with console access right away — no manual install, no command line.

Step 3 — Connect & invite players

Once your Unturned server is online, share its address (IP and port) with your friends so they can join. Start, stop and restart it anytime from the control panel.

Step 4 — Install mods & configure

Your Unturned server supports RocketMod, Steam Workshop, Plugins, Config, FTP/SFTP. Install RocketMod plugins and Steam Workshop straight from the one-click installer, or upload your own from the control panel — then tweak settings in the visual config editor.

Step 5 — Keep it running smoothly

Enable scheduled automatic backups, set restart timers, and monitor CPU, RAM and player counts from the dashboard. Always-on DDoS protection and 24/7 support keep your Unturned server stable.

Server softwareRocketMod plugins and Steam Workshop
Recommended RAM2–4 GB
Player slots24–48 slots
Performance classLight

Unturned server FAQ

How much RAM does an Unturned server need?
We recommend 2–4 GB for Unturned. Start smaller and upgrade in one click as your player count or mod list grows.
How many players can an Unturned server hold?
Typical Unturned servers run 24–48 slots. Slots scale with your plan, so you can raise them at any time.
Can I install mods on an Unturned server?
Yes — Unturned supports RocketMod plugins and Steam Workshop. Install them from the one-click installer or upload your own over FTP/SFTP.

Ready to start? Deploy your Unturned server in under 60 seconds — 7-day money-back guarantee.

Related guides

Share:Twitter / XFacebookRedditWhatsApp

Ready to play?

Deploy your server in under 60 seconds — 7-day money-back guarantee.

Browse games
Reference

Ports, config and common failures

Which ports an Unturned server occupies

Every Unturned server occupies two consecutive UDP ports. With the defaults, the first handles server list queries and the second carries in-game traffic.

PortProtocolRole
27015UDPServer list queries; the number you give to the Port command
27016UDPIn-game traffic; taken implicitly as Port plus one

The Port command takes only the lower number — the documentation says that setting a value "uses that value and plus one". That is why the recommended spacing for several instances on one machine is 27015 for the first server, 27017 for the second and 27019 for the third. Bind selects which internal IP the socket attaches to, and defaults to 0.0.0.0.

You can confirm the pair from the client: pressing the Clipboard Debug hotkey (PageDown by default) on a server's lobby screen copies public details, including these lines for a server using the defaults:

Connection Port: 27016
Query Port: 27015

Since the 3.23.14.0 update, the documentation states that port forwarding is no longer necessary to make a server reachable over the Internet, though it is still required if you want players to join directly by IP address or domain name. Forwarding rules for that case use UDP.

Installing and launching the dedicated server with SteamCMD

Hosting is supported on Windows and Linux; the documentation states that macOS devices are not supported. Fetch the files with SteamCMD:

login anonymous
app_update 1110390
quit

They install under steamcmd/steamapps/common/U3DS — on Linux, commonly ~/.steam/steam/steamapps/common/U3DS or ~/Steam/steamapps/common/U3DS. Appending validate to the update line verifies file integrity and repairs corrupted files, and app_update 1110390 -beta public returns an install from a beta branch to public.

Start the server with the helper script in that folder. The name after the slash is the ServerID, which is also the name of the folder created under Servers/:

# Windows
ServerHelper.bat +InternetServer/MyServer

# Linux
./ServerHelper.sh +InternetServer/MyServer

Use +InternetServer/ for a server intended for the Internet and +LanServer/ for a local-network one. The developer's own restart script skips the helper and calls the executable directly with Unity's batch flags: Unturned.exe -batchmode -nographics +InternetServer/MyServer.

The console prints Loading level: 100% once loading has finished and the files have been generated. Run Shutdown before editing the configuration, because most settings cannot be changed while the server is running. Updating later means shutting down first, then repeating the app_update line.

Commands.dat and the gameplay config file

Two files carry most of the settings, both under U3DS/Servers/<ServerID>/:

  • Server/Commands.dat — startup commands, one per line; lines beginning with // are comments and are ignored
  • Config.txt — difficulty and advanced options. Servers created before 3.25.8.0 have Config.json instead, which is converted at startup into a per-difficulty file such as Config_NormalDifficulty.txt; -UseLegacyJsonGameplayConfig keeps the older JSON format
Name My Unturned Server
Map PEI
MaxPlayers 24
Mode Normal
Perspective Both
Owner 76561198000000000
Cheats

Name accepts 5 to 50 characters and defaults to Unturned. Map loads PEI unless you change it. Mode accepts Easy, Normal or Hard, and the wiki instructs that the difficulty set in the config file must match the difficulty the server is set to run on. Perspective accepts First, Third, Both or Vehicle. Owner takes the steamID64 of the server owner. Cheats allows the use of cheat commands such as Give. PvE disables player-versus-player combat, and Whitelisted makes the server joinable only by permitted players. Password uses only a SHA-1 hash, so the wiki advises against reusing a password from anywhere else.

Several launch options help while tuning: -LogGameplayConfig prints configuration overrides to the console, -GameplayConfigNoEmptyValues removes non-overridden options from the file, -NoLevelConfigOverrides prevents levels from overriding server configuration, and -GameplayConfigFile loads an alternative config file.

Getting listed, or reachable without port forwarding

Internet-list visibility depends on a login token. Assign it as Login_Token in the Browser section of the server configuration, or with the GSLT command in Commands.dat or on the command line. With a token assigned, the Server Code also stays linked between sessions instead of changing on every restart.

Players can get in three ways:

  • Server Code — a randomly generated 17-digit numeric code that appears in the server console right after loading finishes, copyable with CopyServerCode. Players enter it in the Connect Directly menu, and no port forwarding is needed. It does not work with the pre-joining server info screen, because that screen uses Steam's A2S protocol, which can only be queried by IP.
  • Fake IP — set Use_FakeIP to true in the server configuration, then run CopyFakeIP in the console. This also needs no forwarding, and with a login token set the server can still appear on the Internet server list. The address and port change after every restart, so a fixed domain name needs custom scripting, and Steam's built-in Favorites and History lists, which remember a server by IPv4 address plus port, will not work.
  • Direct IP or domain — requires the ports to be reachable from outside. For a domain, create a DNS A record pointing at the server's IPv4 address.

BookmarkHost accepts either such a DNS entry or the URL of a custom web API that returns the address, and optionally the port, as plain text.

Loading Steam Workshop mods and maps

Workshop content is declared in WorkshopDownloadConfig.json in the server folder. Copy the File ID out of the Workshop URL — the value after ?id= — and list it under File_IDs, separating multiple IDs with commas:

"File_IDs":
[
    1753134636,
    1702240229
],

During server startup, any mods you specify and their dependencies are installed and updated, and players automatically begin downloading them while connecting. Curated maps and official arena maps must be installed from the Workshop this way before Map can load one, and the wiki's command history records that Map is case-sensitive, so the level name has to match exactly.

Maps carry their own version numbers, which the server list uses to test compatibility before players connect. The server also watches the map it hosts: when it detects a change, it warns players in chat and shuts down after a timer.

When Workshop content misbehaves, the documented repair is to delete appworkshop_304930.acf from U3DS/Servers/<ServerID>/Workshop/Steam/ and the 304930 folder from .../Workshop/Steam/content/, then start the server again so the files are re-downloaded. For unclear Workshop errors, Steam's own workshop_log.txt — in the server's logs folder on a SteamCMD install — describes recent errors near the bottom. The -NoWorkshopSubscriptions option disables loading of all Steam Workshop subscriptions, which the documentation notes can help when troubleshooting.

Adding a plugin framework

Two frameworks are documented. Following the resignation of Rocket's original community team, Smartly Dressed Games (SDG) maintains a fork of Rocket called the Legally Distinct Missile (LDM); the dedicated server includes the latest version, so no external download is necessary. Install it by copying the Rocket.Unturned module from the game's Extras directory into its Modules directory.

OpenMod is described as a spiritual successor to Rocket, developed by one of Rocket's original maintainers; it keeps compatibility with existing Rocket plugins by integrating with RocketMod and LDM. It has two install paths:

  • Recommended — place the OpenMod installer plugin for RocketMod in the /Rocket/Plugins folder, restart the server, then run /openmod install and follow the prompts.
  • Manual — move the OpenMod.Unturned folder into the Modules directory. The first startup takes longer, because OpenMod downloads its core components at that point.

OpenMod can be installed side by side with RocketMod.

To check what loaded, run the Modules command, which lists the loaded modules in the server console. -ModulesPath searches for .dll and .module files in a given directory instead of Unturned/Modules, and -LogAssemblyResolve logs failures to resolve an assembly, which the documentation describes as useful when working with non-Rocket plugins.

Administrator privileges come from the Owner command, the runtime Admin command, or Adminlist.dat. In chat, administrators prefix commands with @ or /.

Saving, restarts and common errors

There is no built-in autosave. Save forces a save while the server is running, and Shutdown saves the state, disconnects clients and closes the server. SDG recommends restarting once every 24 hours, because much of the game's older code uses single-precision floating-point time. The gameplay config can automate that with Enable_Scheduled_Shutdown, Scheduled_Shutdown_Time (default 1:30 am) and Scheduled_Shutdown_Warnings, while Enable_Update_Shutdown with Update_Steam_Beta_Name (default public) shuts the server down when an update lands.

Not on the server list. Check that a login token is configured, then whether players outside your network can connect directly. SDG notes that the Steam master server is a "black box", that empty servers might not be returned unless the browser filters for them, and that servers are only visible to players running the same version of the game.

"Client and server disagree on asset [...] configuration." Files are corrupted, locally modified, or modified on the server. If only one player is affected, that client should verify game files through Steam; if several are, the server's Workshop install needs repairing.

A mod works on Windows but not Linux. This is almost always filename case: Windows is case-insensitive, Linux is not, so a game looking for MasterBundle.dat finds masterbundle.dat on Windows but not on Linux.

For lag, debug reports ticks per second, where 100% means the simulation is keeping up with real time, and logmemoryusage reports how many entities are active.