NEW 📢 Limited launch offer: up to 70% off your first month on every game!See plans

How to host a Xonotic server (2026)

XonoticUpdated Nov 5, 20269 min read

Short answer. You can host a Xonotic server yourself for free: download the release zip from dl.xonotic.org, run the dedicated binary (xonotic-linux64-dedicated on Linux), put a server.cfg in ~/.xonotic/data, and make the game port reachable (26000 UDP by default). Or rent a Xonotic server and skip the networking.

Players find a public server in the in-game server browser, or type its IP and port.

Checked on 5 November 2026 against Xonotic 0.8.6 (released 20 June 2023, still the newest release on dl.xonotic.org).

This guide uses Xonotic's own example server.cfg, server readme, FAQ and download page, plus what we run on our own Xonotic servers. To go straight to the rental route, see Option 2.

What you need

  • Operating system: the Linux build needs glibc 2.29 or newer. Xonotic's download page lists the client requirements; it does not publish separate server requirements.
  • Network: the game port, 26000 UDP by default, reachable from the internet.
  • Accounts: none. Xonotic is free and open source, and the server needs no Steam login or license.
  • The game: every player needs the free Xonotic client, which Xonotic ships for Windows, Linux and macOS.

The server software costs nothing. You pay for the machine, power and bandwidth.

Option 1: host it yourself

This works on a spare PC, a home server or a cloud virtual machine.

Linux

  1. Download and unpack the release.
    sudo apt install wget unzip
    wget https://dl.xonotic.org/xonotic-0.8.6.zip
    unzip xonotic-0.8.6.zip
    cd Xonotic
  2. Create your config. Xonotic reads server.cfg from its config folder, ~/.xonotic/data on Linux. The release ships an example you can copy and edit:
    mkdir -p ~/.xonotic/data
    cp server/server.cfg ~/.xonotic/data/server.cfg
    Almost every setting in the example is commented out with //. Remove the slashes on the lines you want to change. Four of the lines the file says you should change:
    sv_public 1
    hostname "My Xonotic Server"
    sv_motd "Welcome"
    rcon_password "choose-a-long-password"
    sv_public 1 lists the server in the public server browser. The engine default is 0, which leaves it unlisted, so this line matters. An empty rcon_password disables remote console.
  3. Start the dedicated server.
    ./xonotic-linux64-dedicated +log_file latest.log +maxplayers 16
    maxplayers is the number of slots, spectators included. The example config shows 8.
  4. Open the port. The default is port 26000, over UDP. The example config suggests a free port above 1024, because some ISPs filter gaming ports, and says changing it breaks nothing. Allow that UDP port on the machine's firewall and forward it on your router to this machine.
  5. Check it. Look for your hostname in the in-game server browser, or connect from a client outside your network by IP and port.

Windows and macOS

Xonotic ships builds for both, but we only run Linux and the steps above are the ones we checked. The server/readme.txt file in the release covers the Windows and macOS start scripts and the config folder on each system.

Maps and settings

  • Game mode: gametype dm by default. The example config lists dm, tdm, ctf, ca, ft, kh, as, dom, lms, ka, inv, ons, rc, cts and nb.
  • Map list: g_maplist holds the maps to play. Set it to "" to autodetect all maps.
  • Bots: minplayers adds bots when fewer players are playing, and skill sets their level.
  • Extra maps: custom maps are .pk3 files that go in ~/.xonotic/data. Players who do not have a map download it automatically from the address in sv_curl_defaulturl. By default that points at a download service on xonotic.org; for a map that is not there, put the .pk3 on a web server (HTTP works best) and set sv_curl_defaulturl to its address. Docs/mapdownload.txt in the release explains the setup.

Option 2: host it on PlayNHost

Renting removes the firewall and port forwarding work.

  1. Pick a plan. Open the Xonotic server hosting page and compare the plans (SHOTGUN, DEVASTATOR and VORTEX at the time of writing, for 16, 24 and 32 players). Press Create Server on SHOTGUN or DEVASTATOR, or Customize Plan on VORTEX, and finish the order. Prices change, so check them on that page.
  2. Wait for the install. You get an email, "Your Xonotic server is ready", and the server appears at panel.playnhost.com. On the Console tab, the panel counts the server as running when it prints Server listening on address 0.0.0.0:.
  3. Set the player count. The panel passes Max Players to the server as +maxplayers, and refuses a value above your plan. To change it later, use Edit Player Slots; this restarts the server.
  4. Edit your settings. Open Files and edit .xonotic/data/server.cfg: sv_public 1 to appear in the server browser, hostname, rcon_password, game mode, map list, bots. Remove the // in front of each line you change, then restart the server.
  5. Add custom maps (optional). Upload .pk3 files to .xonotic/data through Files or SFTP, then restart the server. Players without the map download it from the address in sv_curl_defaulturl, a xonotic.org service by default; for a map that is not there, host the .pk3 on a web server and set that address in server.cfg.
  6. Join. With sv_public 1 set, find your server in the in-game browser. Either way, players can connect with its address and port.

What our setup does for you

  • Start line. The panel starts the server as ./xonotic-linux64-dedicated +log_file latest.log +net_address 0.0.0.0 +port <your port> +maxplayers <Max Players>. Your port and slot count come from the panel, so leave the port and maxplayers lines in server.cfg commented out.
  • Newest autobuild. The install downloads the 0.8.6 release, then runs Xonotic's own rsync updater to bring the files up to the newest autobuild, which Xonotic treats as its beta channel. The Version field defaults to 0.8.6 and only chooses the starting zip. Players use the normal 0.8.6 client: Xonotic's own README says that online, the server's version of the game code is downloaded and used by all clients. The server does not update itself on start; a reinstall syncs to the newest autobuild again.
  • Your server.cfg survives a reinstall. Xonotic's updater deletes files that are not in its manifest, including .xonotic/data. Our install script copies that folder aside first and restores it afterwards, so a reinstall keeps your server.cfg and RCON password. Without that step, a real install log showed the updater deleting server.cfg.
  • Restart Match. A task that ends the current round and reloads the map without restarting the server.
  • Backups. If your plan includes backups, take one from Backups before editing the config by hand.

Self-hosting or renting: an honest comparison

  • Cost. Self-hosted: the software is free, and you pay for hardware, power and bandwidth, or a cloud virtual machine. Rented: a monthly fee set by plan. See the current plans.
  • Availability. Self-hosted: as reliable as your machine and home internet, and it must stay on while friends play. Rented: runs on the host's hardware, not your PC.
  • Network exposure. Self-hosted: players connect to your public IP, and you look after the firewall and router. Rented: your home IP is not involved.
  • Skill needed. Self-hosted: command line, port forwarding and a text config. Very doable. Rented: a web panel and a file editor.
  • Updates. Self-hosted: you run Xonotic's updater or download a new release yourself. Rented: each install or reinstall syncs to the newest autobuild.

Self-hosting suits you if a machine already runs all day and you are comfortable with networking. Renting suits you if you would rather not look after hardware.

Common problems and fixes

Your changes to server.cfg do nothing

Cause: the setting is still commented out with //.

Fix: remove the two slashes at the start of the line, save and restart.

The server is not in the browser

Cause: sv_public is not set to 1 (the engine default is 0, and the example config leaves the line commented out), or the game port is not reachable from outside.

Fix: set sv_public 1, restart, then forward and allow the UDP port. Test from outside your network.

Xonotic will not start on the same machine as your server

Cause: the dedicated server shares the lockfile ~/.xonotic/lock with the normal client and runs silently in the background.

Fix: stop any process with xonotic in its name, remove the lockfile if needed and start the client again (Xonotic FAQ).

FAQ

Can I host a Xonotic server for free?

Yes. The server is free and open source. You still pay for the machine, power and internet, and it must stay on while people play.

Which port does a Xonotic server use?

26000 UDP by default, set with port. Xonotic recommends a free port above 1024.

How many players can join?

That is whatever maxplayers says, spectators included. Our plans are 16, 24 and 32 players.

Do I need to own the game?

No. Xonotic is free for server and players.

Already hosting it somewhere else? Move your server to us

OUR LATEST BLOGS