Skip to content
Current coupon:10% offUse it in your order

Rust server.cfg and launch parameters explained

Where a Rust server is configured and what each launch parameter and server.cfg line means: name, description, images, tags, slots, map size and seed, custom maps and server browser visibility.

  • advanced
  • ~25 min
  • Updated 2 Oct 2026

A Rust server is configured in two places: launch parameters and the server.cfg file. This guide explains what goes where, what each common setting does and which value to choose. It also covers map size and seed, custom maps and how to get the server into the server browser with the right tags.

What you'll need

  • A Rust server and access to its files
  • The ability to edit launch parameters (the start script on your own VPS, the startup settings on a game host)
  • About 25 minutes

Rust at StormHost

We're still preparing Rust servers. This guide also applies to a Rust server on your own VPS (installation guide).

What is configured where#

PlaceWhat belongs thereWho edits it
Launch parameters (+server.port 28015 …)Ports, RCON, server identity, map (type, seed, size or custom map URL), possibly the slot count. Things that have to be known at startup.You (on a game host, through the startup settings).
server/<IDENTITY>/cfg/server.cfgEverything else: name, description, images, tags, slots, gameplay rules.You. The server never changes it.
server/<IDENTITY>/cfg/serverauto.cfgValues the server saves by itself (on shutdown or with the server.writecfg command).The server. Don't edit it.
server/<IDENTITY>/cfg/users.cfgAdmins and moderators. See Admin and RCON.Both the server and you.

The identity (server.identity) is the name of the folder where the server stores the world, configuration and players. This lets several servers run from the same game files. If you change the identity, the server starts with a new, empty world in a different folder. The default identity is my_server_identity.

In server.cfg, variables are written without the leading +, each on its own line. In launch parameters, they're written with +, one after another on a single line.

Each setting in one place only

The Facepunch wiki says server.cfg takes precedence over command-line parameters, while the Oxide documentation says the opposite. To avoid depending on chance, set each variable in only one place. Facepunch recommends putting only the essentials (ports, RCON) in the launch parameters and everything else in server.cfg.

Variables changed in the console while the server is running only last until a restart (unless the server saves them to serverauto.cfg itself). Anything that should stick goes into server.cfg.

Launch parameters#

An example for Linux (on Windows the line is the same, only the program is called RustDedicated.exe):

start.shbash
./RustDedicated -batchmode \
  +server.identity "rust" \
  +server.port 28015 \
  +server.queryport 28017 \
  +server.level "Procedural Map" \
  +server.seed 12345 \
  +server.worldsize 3000 \
  +server.maxplayers 50 \
  +rcon.port 28016 \
  +rcon.password "<STRONG_PASSWORD>" \
  +rcon.web 1 \
  +app.port 28082 \
  -logfile "rust.log"

The backslash at the end of a line just means the command continues on the next line.

ParameterWhat it doesRecommended valueWhen to change it
-batchmodeRuns the server without a graphical window.always–
+server.identityThe name of the folder with the world and configuration (server/<IDENTITY>/).a short name without spaces, e.g. rustOnly when you want a new world in a new folder or several servers.
+server.portThe port players connect to. UDP.28015When several servers run on one IP or your host assigned you a different one.
+server.queryportThe port for server browser queries (Steam). If it isn't open in the firewall, you won't see the server in the browser. UDP. Must not be the same as server.port.28017Together with server.port. If you don't set it, it's 1 higher than the higher of the game and RCON ports.
+server.levelThe map type."Procedural Map"Not used with a custom map (you set server.levelurl).
+server.seedThe number the map is generated from. Same seed and size = same map.any number 0–⁠2147483647At a wipe, when you want a new map.
+server.worldsizeThe map size (side length in meters).2000–4500 depending on player count (table below)See the Map size and seed section.
+server.maxplayersThe number of slots.depending on server performanceMore players = higher CPU demands.
+rcon.portThe remote console port. TCP.28016See Admin and RCON.
+rcon.passwordThe remote console password.a strong random passwordAlways change it.
+rcon.webWebSocket RCON (1) instead of the deprecated Source RCON.1–
+app.portThe port for the Rust+ mobile app. TCP, must be at least 10000. +app.port 1- turns Rust+ off. If you don't set it, it's 67 higher than the higher of the game and RCON ports (with RCON on 28016, that's 28083), which is why we set it explicitly. The app.info command prints the port in use.28082When you don't want Rust+ or the port conflicts.
-logfileThe file the console output is written to."rust.log"–
+server.levelurlThe download URL of a custom map (instead of server.level, seed and worldsize).–See the Custom map section.

Replace <STRONG_PASSWORD> with your own password (without the angle brackets), ideally made only of letters and digits.

On a game host, ports are assigned by the provider. At StormHost, you'll see them in the customer area on the Network tab; with another host, in its server management. Set the other parameters in the server's startup settings.

server.cfg#

Create the server.cfg file in the server/<IDENTITY>/cfg/ folder (if it doesn't exist). The server reads it on startup.

server/<IDENTITY>/cfg/server.cfgcfg
server.hostname "[EU] My Rust server | Monthly | Vanilla"
server.description "An EU Rust server. Wipe on the first Thursday of every month. Discord: example.cz/discord"
server.url "https://example.cz"
server.headerimage "https://example.cz/rust/header.png"
server.logoimage "https://example.cz/rust/logo.png"
server.tags monthly,vanilla,EU
server.saveinterval 600
server.idlekick 30
decay.scale 1
SettingWhat it doesRecommended valueWhen to change it
server.hostnameThe server name in the server browser.Short and to the point, with the country and wipe scheduleAny time; takes effect after a restart.
server.descriptionThe description in the server details (rules, wipe, Discord link).A few sentencesAny time.
server.urlA link to the server's website in the details.your page, or emptyIf you don't have a website, leave the line out.
server.headerimageA direct link to the header image in the server details (PNG or JPG).An image that's publicly accessible without logging inThe image won't load if the link doesn't point directly to the file.
server.logoimageA direct link to the server logo (server browser and the Rust+ app).PNG or JPG, 256 × 256 pxThe logo is shown in a circle and the corners are cropped – keep the motif in the middle.
server.tagsComma-separated tags for filtering in the server browser.Wipe schedule + difficulty + region, e.g. monthly,vanilla,EUSee the Server in the server browser section.
server.maxplayersThe number of slots (if it isn't in your launch parameters).depending on performance–
server.saveintervalHow often the server automatically saves the world, in seconds.600 (default, 10 minutes)A shorter interval = less loss after a crash, but more frequent short load spikes while saving.
server.idlekickAfter how many minutes of inactivity the server disconnects a player; 0 turns it off.30 (default)Shorter on a full server, to free up slots.
server.pvePvE mode: players can't hurt each other. The server gets the PvE tag.false (default)For a pure PvE server.
decay.scaleBuilding decay multiplier. 1 = normal, 0 = no decay.1Lower on servers with few players; 0 lets abandoned buildings pile up and loads the server.
relationshipmanager.maxteamsizeThe maximum team size.the game's defaultFor “solo/duo/trio” servers, set 1, 2 or 3.
server.favoritesEndpointThe domain under which players save the server to their favorites.your domain (A record)Only if you have DNS records for the server (see below).

You can see the current value of any variable by typing just its name in the console (for example server.maxplayers). For variables whose name you don't remember, use the find command, for example find decay.

Header dimensions

For server.headerimage, the community usually uses a 512 × 256 px image.

Map size and seed#

  • Size range: Facepunch gives server.worldsize a range of 1000 to 6000. The game's default is 4500.
  • Memory: according to Facepunch, a server with a standard map needs about 12 GB of free RAM, and a 6000 map needs more. A bigger map = more memory, more disk space and longer generation at startup.
  • A rough guide (depends on your server's style):
Concurrent playersMap size
up to 502000–⁠3000
50–⁠1503000–⁠4000
150 and more4000–⁠4500
  • The seed is any number from 0 to 2147483647. The same seed with the same size always gives the same map, so you can bring back a map you liked. Community Rust map sites offer map previews by seed and size.
  • Some features need a bigger map – for example, according to the Facepunch wiki, the above-ground railway is only generated from size 4250 up.
  • A change of seed or size only takes effect on a new world. On a running world, a new map creates a mismatch, so only change them at a wipe (guide).

For advanced users: map generation can be tweaked with a settings file (+world.configfile), for example to turn off trails or certain monuments. The Facepunch wiki (opens in a new window) describes how.

Custom map#

Custom maps are made in editors (RustEdit is the most widely used) as a .map file.

  1. Upload the .map file to a website that serves it via a direct link and is available around the clock. Players download the map from this address, not from the server.

  2. Test the link: when you open it in a browser, the file should start downloading immediately, not show a page.

  3. Remove +server.seed, +server.worldsize and +server.level from the launch parameters.

  4. Add the parameter with the link:

    text
    +server.levelurl "https://example.cz/mapy/mojemapa-v1.map"
  5. If the map needs the RustEdit extension (custom electrical circuits, boat and tank routes, NPCs), install it as a framework extension following the map author's instructions (extensions and dependencies).

  6. Start the server.

Every map version needs a new file name

Players keep the downloaded map on their computer. If you upload a modified map under the same name, the game loads their old copy and the connection fails with a mismatch error. Rename the map with every change (for example mojemapa-v2.map).

Links that don't work: a link to a Discord message, shared folders that show a page, Dropbox without dl=1 at the end. A release on GitHub or your own web server works, for example.

Performance#

  • Map size and player count have the biggest impact on performance. Don't raise them beyond what the server can handle.
  • The number of buildings and items (entities) grows over time. Decay (decay.scale) helps clear out abandoned buildings.
  • Plugins: the oxide.plugins listing shows the total time each plugin has spent in hooks. A plugin with a much higher time than the others is a candidate for replacement. Carbon has a built-in profiler.
  • Current server performance: check it with the server.fps command (server frames per second). A significant, lasting drop means the server is overloaded.
  • Leave server.tickrate and similar variables at their defaults unless you know exactly why you'd change them.

Server in the server browser#

For the server to show up in the browser:

  1. Open the query port (server.queryport, UDP) in the firewall. Without it, the server won't appear in the browser, even though you can connect to it directly.
  2. Set tags in server.cfg, for example server.tags monthly,vanilla,EU. The browser shows at most four.
  3. Wait a few minutes after startup for the server to appear in the browser.

Tags according to the Facepunch wiki:

GroupTagsNote
Wipe schedulemonthly, biweekly, weeklyOnly one. Also drives the in-game wipe countdown, see Wipe.
Difficultyvanilla, hardcore, softcoreOnly one.
RegionEU, NA, SA, WA, EA, OC, AFFor the Czech Republic, EU.
Otherpve, roleplay, creative, minigame, training, battlefield, broyale, buildsDepending on the server type.

Don't combine tags from the same group (for example monthly and weekly): the browser shows only one, and the server then won't turn up when players filter. The framework adds the Modded, Oxide and Carbon tags itself. server.pve true also sets the PvE tag.

The server's country is determined from its IP address using MaxMind. If it's wrong in the browser, submit a correction through the MaxMind form (GeoIP Data Correction).

Connecting via a domain: Rust can find a server through DNS. You need an A record with the server's IP address and an SRV record for the _rust service and the _udp protocol with the game port. Then also set the domain in server.favoritesEndpoint. Record types are explained in DNS records explained.

Troubleshooting#

Changes in server.cfg don't take effect#

  • The file is in a different identity folder than the one the server uses. Check +server.identity in the launch parameters and the path server/<IDENTITY>/cfg/server.cfg.
  • The file is actually called server.cfg.txt (Windows hides extensions).
  • The same variable is also in your launch parameters. Keep it in one place only.
  • The server hasn't been restarted since the edit. server.cfg is read at startup; while the server is running, you can also enter the value in the console.

The server isn't visible in the server browser#

  • The query port isn't allowed in the firewall (UDP), or it's the same as the game port.
  • You're looking in the wrong tab: a server with a framework is under Modded.
  • Tags from the same group cancel each other out.
  • The server has only been running for a few minutes. Wait.

Players get Couldn't Download Level#

The game couldn't download the custom map. Check that server.levelurl is a direct link and that the website hosting the map is up. Facepunch advises players to open the “Download map file…” line in the F1 console and download the map manually into the game's maps folder.

World cache version mismatch or World File Outdated error#

The player has an older version of the map with the same name downloaded. Rename the map and change server.levelurl.

The server hangs while loading a custom map#

The map doesn't have enough ocean for the cargo ship's route. According to the Facepunch wiki, adding +cargoship.event_enabled false +baseboat.generate_paths false +ai.ocean_patrol_path_iterations 0 to the launch parameters helps (it turns off the cargo ship and the ocean patrol routes), or you can edit the map.

The header image or logo doesn't show#

The link doesn't point directly to the image file, the image isn't publicly accessible, or it's in an unsuitable format. Open the link in a private browser window: it should show nothing but the image itself.

Summary

  • Ports, RCON, identity and map belong in the launch parameters, everything else in server/<IDENTITY>/cfg/server.cfg.
  • Set each variable in one place only; don't edit serverauto.cfg.
  • Map size 1000–⁠6000; a bigger map needs more RAM. Only change seed and size at a wipe.
  • Custom map: a direct link in server.levelurl and a new file name for every version.
  • To appear in the server browser, you need an open query port (UDP) and tags without conflicts.

Search the guides