How to Host a Xonotic Server (Dedicated Server Setup Guide)
Host a Xonotic dedicated server: copy server.cfg to your data folder, set hostname, gametype and rcon_password, open UDP 26000 and get on the public list.
Updated Oct 7, 2026 · 5 min read
On this page
To host a Xonotic server, download Xonotic from xonotic.org (the dedicated server is included), copy the example server/server.cfg into your user data folder (~/.xonotic/data/ on Linux), uncomment and set hostname, gametype, maxplayers and rcon_password, then start the dedicated binary, for example xonotic-linux64-dedicated. Forward UDP port 26000 and the server announces itself to the public list unless you set sv_public to 0 or -1.
Xonotic is a free, open source arena shooter on the DarkPlaces engine. The public player base is small and concentrated on a handful of servers, which is exactly why groups host their own: instagib nights, CTF with friends, or a duel server for practice. Since the game is free, getting someone new in is just a download.

What you need
- Xonotic from the official download page. The current release is 0.8.6, and the zip includes the dedicated server for Windows, Linux and macOS.
- A machine that stays on. Memory needs are tiny. CPU speed matters more, because the server runs a fixed tick.
- UDP port 26000 forwarded, or any port you pick.
- Players on the current release. Old distro packages are often several versions behind and cause join problems.
Step 1: Find the server pieces
Inside the extracted Xonotic folder:
| Item | What it is |
|---|---|
xonotic-linux64-dedicated |
Linux dedicated server binary |
Windows dedicated .exe |
The Windows equivalent, next to the game executable |
server/server.cfg |
The fully commented example config |
server/ start scripts |
Helper scripts that launch the dedicated binary |
data/ |
The game's own data packages. Do not edit these |
Step 2: Put server.cfg in the right place
This is where most first time setups go wrong. The example file says it plainly: to use it, copy it to your user data directory, not the install folder.
| System | Copy server.cfg to |
|---|---|
| Linux | ~/.xonotic/data/ |
| Windows and macOS | Your Xonotic user data folder (see the Xonotic FAQ) |
The dedicated server reads server.cfg from there on start. If you edit the copy in the install folder, nothing changes.
Step 3: Make it yours
Open server.cfg. Lines starting with // are comments, so remove the // from the lines you want to use. The essentials:
sv_public 1
hostname "Friday Instagib | EU"
sv_motd "Discord: discord.gg/yourinvite"
rcon_password "a-long-random-password"
maxplayers 16
port 26000
gametype ctf
g_maplist "atelier dance erbium implosion runningmanctf silentsiege solarium stormkeep"
g_maplist_shuffle 1
minplayers 4
skill 6
| Setting | Meaning |
|---|---|
sv_public |
1 lists the server publicly, 0 or -1 keeps it off the list |
hostname |
Name in the server list |
rcon_password |
Remote console password. Empty disables RCON |
maxplayers |
Slots, including spectators |
gametype |
dm, tdm, ctf, ca, ft, kh, dom, lms, ka, ons, rc, cts, nb, as or inv |
g_maplist |
Maps to rotate. Maps that do not support the mode are skipped |
minplayers |
Bots top up the server to this count |
skill |
Bot skill |
Every key in the file is explained in our Xonotic server.cfg guide, including voting, limits and mutators like instagib.
Step 4: Start the server
Linux, from the Xonotic folder:
./xonotic-linux64-dedicated +port 26000 +maxplayers 16
Settings on the command line with + apply on top of server.cfg. On Windows, run the dedicated .exe the same way or use the start script in server/. Watch the console: it shows the first map loading and lists any config lines it does not understand.
Step 5: Open the port
Forward UDP 26000 to the server machine and allow it through the firewall. The example config even suggests moving off 26000 to a different port above 1024, because a few internet providers filter well known gaming ports. Changing it breaks nothing, as long as you forward the new port. Our port forwarding guide covers routers.
Step 6: Join
Players start Xonotic, click Multiplayer, then type your address (for example 203.0.113.10:26000) into the Address box at the bottom of the server list and click Join!. With sv_public 1, the server also appears in the list after a short while.
Running it with RCON
Set the same password on your client, then send commands:
rcon_password "a-long-random-password"
rcon gotomap dance
rcon status
rcon kick "PlayerName"
gotomap changes map now, endmatch ends the round and status lists players. The panel or server console accepts the same commands without the rcon prefix.

Custom maps
Community maps are .pk3 files in the server's data folder. Players fetch them over HTTP from the address in sv_curl_defaulturl, which you set up once. Our guide to adding custom maps to a Xonotic server covers the folder, the download URL and curl_urls.txt.
When you would rather not run it at home
A GamezServers Xonotic server is up in about a minute on a fixed address with the port already open. Max Players and the release Version are panel settings, server.cfg sits in .xonotic/data/ in the file manager, and the live console takes gotomap, status and every other server command directly. It is one of the lightest servers we host, so the entry plan suits most groups, and friends can split the bill.
FAQ
What port does a Xonotic server use?
UDP 26000 by default, set with port in server.cfg or +port on the command line.
Where does server.cfg go?
In your user data folder, ~/.xonotic/data/ on Linux, not in the install folder.
How do I hide my Xonotic server from the public list?
Set sv_public 0 or sv_public -1 in server.cfg and restart. Friends can still join by address.
How do I set up instagib?
Add g_instagib 1 to server.cfg and restart. It is one of the mutators allowed on a pure server.
Do players need to own Xonotic?
No. Xonotic is free and open source, so anyone can download it and join.
Skip the setup. Your own Xonotic server.
Then $2.99/mo. Just trying it? $0.75 for 3 days