A Mordhau dedicated server is a free download (Steam app 629800, anonymous login, Linux and Windows) configured almost entirely through one file: Game.ini, in Mordhau/Saved/Config/LinuxServer/ or WindowsServer/. That file holds the server name, password, admin password, slot count, admin list, map rotation and mods. The server uses three UDP ports - 7777 for the game, 27015 for the Steam query and 15000 for the beacon - and wants a fast CPU core more than memory: 2-3 GB of RAM carries a 48-player server, and the tick rate holds or does not depending on clock speed. Admins are identified by PlayFab ID, not SteamID, and mods come from mod.io by numeric ID.
How Mordhau servers work#
Mordhau is an Unreal Engine 4 game, and its server behaves like most UE4 shooters: one process, one map at a time, a game mode chosen by the map name, and a rotation that moves to the next map when a round ends. Unlike survival games there is no persistent world, which makes Mordhau servers simple to back up and easy to rebuild - the configuration is the server.
Game modes include Frontline (the large objective mode with horses and siege engines), Invasion (attack and defend), Skirmish (rounds without respawns), Team Deathmatch, Free-for-all, Horde (co-op waves) and Battle Royale. Which mode runs is determined by the map entry in the rotation, so a server can mix modes or stick to one.
Since the console release, Mordhau has crossplay, and player identity moved to PlayFab IDs. That changed how admins and bans are configured, and older guides that tell you to paste SteamIDs into the admin list are out of date.
Requirements and resource usage#
Mordhau servers are light on memory and heavy on a single core. Melee combat is latency-sensitive in a way that shooters are not - a missed parry feels like the server's fault - so tick stability matters more than raw player count.
| Server | RAM | CPU | Notes |
|---|---|---|---|
| Duel / FFA, up to 16 | 1.5-2 GB | 1 fast core | Small maps, little physics |
| Skirmish / TDM, up to 32 | 2-3 GB | 1-2 fast cores | Common community setup |
| Frontline / Invasion, 48-64 | 3-4 GB | 2 fast cores | Horses, siege, large maps |
| Modded, 64+ | 4-6 GB | 2+ fast cores | Mods and slots both cost |
- CPU: the game thread is the limit. A modern core at high clock beats extra cores. CPU vs RAM for game servers explains why adding memory does nothing for a tick problem.
- Disk: the server installs to roughly 10-15 GB depending on version; mods add to it.
- Network: around 30-60 KB/s per player at 60 Hz. Latency between players and the server matters more than bandwidth - see latency, jitter and packet loss.
Installing and first start#
On Linux:
$ steamcmd +force_install_dir /home/mordhau/server +login anonymous +app_update 629800 validate +quit$ cd /home/mordhau/server$ ./MordhauServer.sh -log -Port=7777 -QueryPort=27015 -BeaconPort=15000On Windows the binary is MordhauServer.exe with the same arguments. SteamCMD explained covers the install and update loop.
The first start creates Mordhau/Saved/Config/LinuxServer/ (or WindowsServer/) with Game.ini and Engine.ini. Stop the server, edit Game.ini, start again. Like most Unreal servers, Mordhau may rewrite its ini files on shutdown, so edits made while it runs can vanish.
The launch arguments that matter:
| Argument | Default | Purpose |
|---|---|---|
-Port | 7777 | Game port |
-QueryPort | 27015 | Steam query port |
-BeaconPort | 15000 | Beacon port, used for joining |
-log | off | Prints the log to the console |
-GameIni | default path | Use a different Game.ini file |
Game.ini: the settings that matter#
A working Game.ini for a community server:
[/Script/Mordhau.MordhauGameMode]PlayerRespawnTime=5.000000BallistaRespawnTime=30.000000CatapultRespawnTime=30.000000HorseRespawnTime=30.000000DamageFactor=1.000000TeamDamageFactor=0.500000MapRotation=FFA_ThePitMapRotation=FFA_Contraband[/Script/Mordhau.MordhauGameSession]bIsLANServer=FalseMaxSlots=32ServerName=Iron Keep | EU | FFAServerPassword=AdminPassword=a-long-random-admin-passwordAdmins=0123456789ABCDEFBannedPlayers=()The two sections split responsibilities:
| Key | Section | What it does |
|---|---|---|
MaxSlots | GameSession | Player slots |
ServerName | GameSession | Name in the browser |
ServerPassword | GameSession | Join password; empty for public |
AdminPassword | GameSession | Password for adminlogin in the console |
Admins | GameSession | One line per admin PlayFab ID |
BannedPlayers | GameSession | The ban list, maintained by ban |
MapRotation | GameMode | One line per map, played in order |
PlayerRespawnTime | GameMode | Seconds before respawn in respawn modes |
DamageFactor | GameMode | Global damage multiplier |
TeamDamageFactor | GameMode | Friendly fire, as a fraction of normal damage |
Map rotation and game modes
Each MapRotation line is a map name whose prefix sets the mode - FFA_ for free-for-all, SKM_ for skirmish, TDM_ for team deathmatch, and so on, with Frontline, Invasion and Horde maps named in their own patterns. The exact list changes as maps are added or reworked, so take names from the current official list or from changelevel in the console rather than copying an old guide. When the rotation reaches the end, it loops.
Mode-specific settings also live in [/Script/Mordhau.MordhauGameMode]: respawn times, siege engine respawns, damage factors. Friendly fire deserves a decision up front. TeamDamageFactor at 0.5 is the familiar default for Frontline; a skirmish community often prefers full friendly fire, which rewards careful swings and punishes spamming in a crowd.
Tick rate in Engine.ini
The server's update rate is set in Engine.ini:
[/Script/OnlineSubsystemUtils.IpNetDriver]NetServerMaxTickRate=6060 is the standard. Raising it costs CPU in proportion and only helps if the server can hold it under a full load; a server advertised at 120 that drops to 70 in a big fight feels worse than one that holds a steady 60. Watch CPU on the panel graphs during a full Frontline round before touching it.
Ports and connecting#
| Port | Protocol | Purpose |
|---|---|---|
7777 | UDP | Game traffic |
27015 | UDP | Steam query - server browser and player counts |
15000 | UDP | Beacon - the join handshake |
All three must be open and match the launch arguments. A server with the beacon port closed shows in the browser but cannot be joined, which is a confusing failure; game server ports explained goes through why games separate query and join ports. If your host assigns different numbers, pass them to -Port, -QueryPort and -BeaconPort.
Players find the server in the in-game browser by name. A clear, filterable name - region, mode, rules - does more for population than anything else in the config, because Mordhau players choose servers by browsing.
Admins and admin commands#
Admins are listed in Game.ini, one Admins= line per player, using their PlayFab ID. To find one, have the player join and run playerlist in the console as an admin; it prints each player's name and PlayFab ID. Anyone who knows AdminPassword can also log in for the session with adminlogin.
Commands are typed in the in-game console (the ~ key by default):
| Command | Effect |
|---|---|
adminlogin <password> | Grants admin for this session |
playerlist | Lists players with PlayFab IDs |
kick <PlayFabID> <reason> | Removes a player |
ban <PlayFabID> <duration> <reason> | Bans a player and writes BannedPlayers |
unban <PlayFabID> | Removes a ban |
changelevel <map> | Switches map immediately |
Exact arguments, such as the unit of the ban duration, have shifted between patches; check the official hosting guide for your version. Admins listed in Admins= do not need adminlogin.
Current builds also support RCON using the Source RCON protocol, with a port and password set in Game.ini. The section name and keys have moved between patches, so copy them from the official guide for your version, give it its own port, and treat it as sensitive - using RCON safely explains how an exposed RCON port gets abused.
A population depends on admins being consistent more than being numerous. Write the rules where players see them (the server name and your Discord), log bans with reasons, and be careful who gets admin at all - vanilla Mordhau has no permission tiers, so every admin can ban, change the map and kick anyone. Moderation mods add finer roles if you need them. Server rules, moderation and staff has a fuller framework.
Planning a server people actually join
Most new Mordhau servers fail for lack of players, not hardware. The browser is crowded, and players pick from what they can see in a few seconds: name, mode, ping and how full it is. A few decisions make the difference.
Pick one mode and say so. A server that rotates Frontline, Skirmish and Duel maps attracts nobody in particular. Players looking for Frontline filter for it and want to know they will get Frontline next round too. Put the mode in the name, and keep the rotation consistent with it.
Size the slots to the population you have. A 64-slot Frontline server with six people on it looks dead, and players skip it for one that is full. Start small - 24 or 32 - and raise MaxSlots when the server fills at peak hours. Fewer slots also means more headroom on the CPU, which keeps the tick steady while you are still learning what the hardware holds.
Region and ping. Melee timing punishes latency harder than shooters do. A server in Germany plays well across most of Europe and badly from other continents, and no setting fixes distance. Put the region in the name so players who will have a poor experience can choose another server rather than leaving a bad review in chat.
Rules that fit the mode. Duel servers live or die on etiquette (no interfering in other people's duels, bowing before a fight), which is enforced by admins and community, not config. Frontline servers care about team killing, which TeamDamageFactor and a quick kick handle. Decide what you will enforce and write it down before the first argument.
Seeding. A server fills when it already has players. Communities often schedule a regular time when members join together to seed it, and after a few weeks the server starts filling on its own at that hour. A private server with a password skips all of this - set ServerPassword, share it with your group, and none of the browser competition matters.
Mods from mod.io#
Mordhau uses mod.io, not the Steam Workshop. Mods are added to Game.ini by numeric mod.io ID, one line each:
[/Script/Mordhau.MordhauGameSession]Mods=1700790Mods=2673283The server downloads the listed mods at start, and players download them automatically when they join. Those IDs are placeholders for the shape - take real ones from each mod's mod.io page. Some mods also need an entry that spawns their server-side logic on map load, SpawnServerActorsOnMapLoad= in the game mode section; the mod's page gives the exact value when it is needed.
Mod types to know:
- Maps: add a map to
Mods=, then its map name toMapRotation. Community maps are the most common mods on servers. - Server-side gameplay mods: chat commands, admin tools, gameplay tweaks. They usually need the server-actor line.
- Cosmetic and client mods: not a server concern.
Every mod adds download time for new players, and a broken mod can stop the server starting after a game update. Keep the list short on public servers, and read what to do when a mod update breaks before you need it.
Performance, updates and backups#
The things that move a Mordhau server's tick rate:
- Clock speed of the core the game thread runs on.
- Player count - each extra player adds hit detection work, and Frontline at 64 is the heaviest normal load.
- Horses and siege engines, which add physics.
- Heavy mods, especially scripted gameplay mods.
A server that drops tick under full load needs fewer slots or a faster core, not more memory. A scheduled restart once a day at a quiet hour keeps long-running servers clean - see restart schedules that help.
Updates: after every game patch the server must be updated before players on the new version can join. Update through SteamCMD as soon as the patch lands, and expect mod breakage on large patches.
Backups are easy because there is no world: keep a copy of Game.ini, Engine.ini and your mod ID list. With those, a fresh install is your server again in minutes. Back up the ban list too - it lives in Game.ini - so a rebuild does not let every banned player back in.
On RE:NODE every game server has a file editor for the ini files, SFTP, backup slots and a Schedules tab for restarts. Mordhau is not in the catalogue, so this guide is not describing a Mordhau plan.
Troubleshooting#
The server is in the browser but nobody can join. The beacon port is closed or does not match -BeaconPort.
The server is not in the browser at all. The query port is closed or wrong. Check the log for the ports it bound.
`Game.ini` changes are lost. You edited while the server was running, and it wrote its own copy on stop. Stop, edit, start.
Only the first map in the rotation ever loads. Several maps on one MapRotation line, or a mistyped map name. One per line, exact names.
An admin in `Admins=` has no rights. The entry is a SteamID, or the PlayFab ID has a typo. Copy it from playerlist.
Rubber-banding in big fights. Tick drop. Check CPU during a full round; reduce slots or tick rate before blaming the network.
FAQ#
Is the Mordhau dedicated server free?
Yes. It downloads anonymously through SteamCMD and needs no game licence. Players need the game.
Can console players join a PC dedicated server?
Mordhau has crossplay, but what console players can see and join in the community browser depends on platform rules and on the server's mods, and it has changed between patches. A vanilla server is the safe choice for a mixed group; test with a console player before promising it.
How do I find a player's PlayFab ID?
Run playerlist in the console while they are on the server. It lists each player with their PlayFab ID, which is what Admins= and ban expect.
What tick rate should a Mordhau server run?
- Raise it only if the server holds the higher rate at full population; a steady 60 is better than an unstable 120.
Do players need to download mods manually?
No. The server downloads mods from mod.io at start, and clients fetch them when they join. Keep the list lean so new players are not waiting on large downloads.




Comments
Completely anonymous: no account, no email, no cookie. We store the name you type, the text and the time - nothing else. Links are limited and markup is not rendered.