How to host a custom Rust map on a server
Quick answer: upload your .map file somewhere that gives a direct https download link, put server.levelurl "<that link>" on your server’s startup line or in its server.cfg, take out server.seed and server.worldsize, and restart the server. The server and every player download the map from that link.
What you need
Section titled “What you need”- The custom map as a
.mapfile, from Crucible Heightmap, Creator or RustEdit. - Somewhere to put the file that gives a direct download link: opening the link in a browser starts the download straight away, with no page or button in between. It has to be an
httpslink. - A Rust server you can restart, with its startup line or its
server.cfgopen to edit.
1. Test the map on your own PC first
Section titled “1. Test the map on your own PC first”Walk the map before anyone else does. Crucible Local Server runs it on your own PC with no link at all: drag the .map onto its window, press Assign, start the server and press Join. Check that players spawn, that monuments sit on the ground and that nothing blocks the roads. The full walkthrough is test your map on a local Rust server.
Once the map is uploaded (step 2), test the link the same way. In the Map tab pick Hosted URL, paste the link into Level URL (direct-download .map) in the Config tab, and start the server. If it loads, the link works.
2. Upload the map to a direct download link
Section titled “2. Upload the map to a direct download link”- The download has to start at once. A file-sharing page with a Download button does not work: the server gets the page instead of the map.
- On Dropbox, a share link ends in
dl=0, which opens a page. Change it todl=1. - Keep the link up. Every new player downloads the map from it the first time they join, so a dead link keeps new players out for as long as the server runs that map.
- Check it: paste the link into a browser. It should download a file ending in
.map, the same size as yours.
3. Point the server at the link
Section titled “3. Point the server at the link”On the server’s startup line:
RustDedicated.exe -batchmode +server.identity "my_server" +server.port 28015 +server.levelurl "https://example.com/maps/mymap.map" +server.maxplayers 100 +rcon.port 28016 +rcon.password "your-own-password" +rcon.web 1Or as a line in server.cfg, in the server’s cfg folder (server/<identity>/cfg/, next to RustDedicated.exe):
server.levelurl "https://example.com/maps/mymap.map"- Take out
server.seedandserver.worldsize. Those two make a procedural map. With a level URL, the map file sets the world instead. - Put the link in quotes.
- If the startup line and
server.cfgboth set it, the startup line wins.
More on both places: the Rust server.cfg example and launch arguments.
4. Restart and check the console
Section titled “4. Restart and check the console”Rust reads the map once, when the server starts, so restart it. The console then shows:
Loading custom map from https://example.com/maps/mymap.mapand the server browser lists the map as Custom Map. If the download fails, the console shows Couldn't Download Level: with the map name and the reason, and the server shuts down. The Rust server messages in the error index say what each one means and what to change.
Update the map later
Section titled “Update the map later”The server and every player keep a copy of each map they download, filed under its link. Upload a changed map to the same link and they all go on loading the old one. Two ways round it:
- A new file name. Upload it as
mymap_v2.mapand pointserver.levelurlat the new link. Everyone downloads it fresh. Rust names a custom map’s world save after the map’s file name, so this also starts a new world. - The same file name with a new link. To keep the world after a small fix, keep the file name and change only the end of the link, for example
https://example.com/maps/mymap.map?v=2. Open the new link in a browser first to check your host still gives you the map with it.
Stop the server before you change the link. It only reads the map at startup.
Hosting for real players
Section titled “Hosting for real players”When you want the map on a server that stays up without your PC, Drizzza is partnered with Pine Hosting: pine.host/drizzza.
Get your Rust server up in minutes on Pine Hosting, with DDoS protection and a uMod plugin installer. 30% off with code DRIZZZA.
The steps on this page are the same on a hosted server: upload the map, set server.levelurl wherever the host lets you edit the startup line or server.cfg, and restart.
Maps with RustEdit or Creator extras
Section titled “Maps with RustEdit or Creator extras”A stock Rust server runs the terrain, the layers and the prefabs of any .map. Extras some editors save in the file need a server add-on to come alive: RustEdit’s puzzles and spawners need the RustEdit extension on a Carbon or Oxide server, and Creator’s wiring, volumes and loot profiles need Creator’s server extension. See custom data maps and RustEdit and what a stock server reads.
Related
Section titled “Related”- Test your map on a local Rust server
- Run a custom map on Crucible Local Server
- Export a Rust .map file
- Rust force wipe schedule, for getting a map ready for wipe day
- Error messages and what they mean
