The short answer
Stop the old server, download server/<identity>/ and your oxide/ or
carbon/ folder over SFTP, install the same mod framework on the new server, set the same
seed and world size, upload the folders into place and start it. Watch the console load the
.sav and pass the Rust+ connectivity test, then point your players at the new address.
Key points
- Stop before you copy. A save written mid-transfer loads as a fresh map or not at all.
- The seed and world size must match, or the old save is ignored and a new world generates.
- Install Oxide or Carbon from the panel first, then upload the plugin folder over it.
- Do not copy port, IP or RCON lines from
server.cfg. The panel sets those. - Keep the old server running until the first start on the new one is clean.
What moves and what does not
Everything that makes your server yours lives in two places. The identity folder,
server/<identity>/, holds the world and the players. The mod framework folder,
oxide/ or carbon/ in the install root, holds the plugins, their configs and
their data. The game files themselves (the RustDedicated binary and everything SteamCMD
downloads) are identical on every host and the new panel installs them for you.
proceduralmap.*.savand.map- The world: every base, box, sleeper and dropped item, and the cached terrain it sits on. The file name carries the world size, seed and protocol version.
player.blueprints.*.db- What every player has learned, keyed to SteamID64. Leave it behind and you have done a blueprint wipe.
player.tokens.dbandcompanion.id- Rust+ pairings and the server's companion identity. Both are needed for the app to reconnect without re-pairing.
player.deaths.*.db,player.identities.*.db,sv.files.*.db- Death log, player names and server-side file storage (map markers, images). Small, and worth copying for completeness.
cfg/users.cfg(owners and moderators),bans.cfgandserver.cfg. Copy the first two whole; copyserver.cfgselectively, see below.oxide/orcarbon/- Plugins, configs, data and permissions. Carbon's folder is
carbon/; Oxide's isoxide/. Only one of them can run.
Moving the server
-
Stop the old server
In the old host's panel, click Stop and wait for the save to finish writing. Rust saves on shutdown; copying while that happens gives you a save that will not load.
-
Note the seed and world size
Find
server.seedandserver.worldsizein the old server's startup settings or command line and write them down. If you cannot find them, read the save file name:proceduralmap.4500.1234567.265.savis world size 4500, seed 1234567. -
Download the identity folder
Connect to the old host over SFTP with FileZilla or WinSCP and download
server/<identity>/in full. The identity is whatever the old host named it; on many panels it is the server's numeric id. Then downloadoxide/orcarbon/from the install root if you run plugins. -
Install the mod framework on the new server
In the EUGameHost control panel open Game Services, select your Rust service, open Mod Manager and install the same framework you ran before: Oxide/uMod or Carbon. The install creates the folder structure your plugins expect; uploading plugins before it exists leaves them unloaded.
-
Set the seed and world size
Open the new server's startup settings and enter the old seed and world size. Rust only loads a save on a map generated from the same pair; any other values and it quietly generates a new world.
-
Upload the files
Over SFTP or in the panel File Manager, open the new server's identity folder (
server/<identity>/, the identity the panel created) and upload the contents of the old one into it, overwriting what is there. Uploadoxide/orcarbon/into the install root the same way. Skipcfg/server.cfgfor now. -
Start the new server
Click Start and watch the console. You want to see the save being loaded (a line naming your
.savwith the entity count), your plugins loading, andRust+ companion server connectivity testpassing. The first start is slower because the terrain regenerates from the seed before the save is applied. -
Move your players
Start the old server one last time with its hostname and description changed to the new address, update your Discord, BattleMetrics listing and any connect domain, and leave it that way for a few days before you cancel it.
What not to copy from server.cfg
server.cfg is read every start and overrides the command line, which is why copying it
whole from another host breaks things. The panel sets your ports, IP, identity and RCON password on the
command line; a server.cfg that sets them again points the server at the old host's values.
- Copy
server.hostname,server.description,server.url,server.headerimage,server.tags,server.maxplayers(match your new plan), decay and gather convars, and anything else that is a gameplay choice.- Leave out
server.port,server.queryport,server.ip,server.identity,rcon.port,rcon.password,rcon.ip,app.port,app.listenipandapp.publicip. The panel owns these.
Change the RCON password as part of the move. Anyone who had it on the old host, including a previous co-admin or an RCON tool you forgot about, should not have it on the new one.
Moving your players
Players find servers by name, by history and by Rust+, and all three can carry them over. The hostname
and description are the first thing they read in the browser, so change the old server's to say where
you went. Rust+ reconnects on its own once player.tokens.db and companion.id
are in place. If you use a connect domain, update its record to the new IP and the old link keeps working.
A wipe day is the natural moment to move. Announce the new address with the wipe, move during the downtime, and nobody loses progress they cared about.
What to check if it did not work
- A fresh map generated
- Seed or world size differ from the old server, or the
.savis in the wrong folder. Stop, fix the values, delete the new.savand.map, re-upload and start. - Plugins did not load
- The framework is not installed, or the plugins are in
carbon/on an Oxide server (or the reverse). Check Mod Manager and the folder name, thenoxide.reload *in the console. - Blueprints are gone
player.blueprints.*.dbdid not come across. Upload it from your download and restart.- Rust+ will not pair
player.tokens.dborcompanion.idmissing, or the console shows the connectivity test failing. The app port is the game port + 67; the panel opens it, so a failure usually means a copiedapp.portline inserver.cfg.- Owners and moderators lost their rank
cfg/users.cfgwas not copied. Upload it, or re-add them withowneridandmoderatoridfollowed bywritecfg.- Server does not appear in the browser
- Normal for the first few minutes after a start. If it persists, it is a listing problem rather than a migration problem: see the guide linked below.