
How to Set Up a Rust Game Server with Oxide Mods in Minutes
Want to run your own Rust server with Oxide mods? This quick guide shows you how to set up a Rust dedicated server on your PC in minutes. We’ll cover the scripts you need, how to update your server fast, and tips for customizing your world.
Tristan Chin
Creating a Rust dedicated server with Oxide mods is not super hard, but it involves manual steps that can become time consuming. You need to download and run the SteamCMD CLI, download and extract Oxide in the right place and configure the run parameters. This tutorial will show you how to quickly and reliably install Oxide on a Rust dedicated server and get it operating locally in a matter of minutes.
To free up more time for playing and less time for tinkering with configurations, we'll use straightforward batch scripts to manage server launch, updates, and installation. This way, you never need to download SteamCMD or Oxide manually again.
Prerequisites
- This is for Windows only
Step 1: Prepare the Update Scripts
Create a folder where you want your server to live. Anywhere is fine, everything will be installed local to that folder, nothing will bleed outside! Once you've created the folder, copy these two files:
@echo off
if "%1" EQU "" (
set TAG=preview
) else (
set TAG=%1
)
if "%TAG%" EQU "production" (
set BUILD=Release
) else (
SET BUILD=Debug
)
if "%2" EQU "" (
set BRANCH=public
) else (
set BRANCH=%2
)
SET root=%cd%
SET server=%root%\server
SET steam=%root%\steam
SET steamCmd=https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip
echo Server directory: %server%
echo Steam directory: %steam%
echo Root directory: %root%
echo Branch: %BRANCH%
@REM Ensure folders are created
if not exist "%server%" mkdir "%server%"
@REM Download & extract Steam it in the steam folder
if not exist "%steam%" (
mkdir "%steam%"
cd "%steam%"
echo Downloading Steam
powershell -Command "(New-Object Net.WebClient).DownloadFile('%steamCmd%', '%root%\steam.zip')"
echo Extracting Steam
powershell -Command "Expand-Archive '%root%\steam.zip' -DestinationPath '%steam%'" -Force
del "%root%\steam.zip"
)
@REM Download the server
cd "%steam%"
echo Downloading Rust server on %BRANCH% branch...
steamcmd.exe +force_install_dir "%server%" ^
+login anonymous ^
+app_update 258550 ^
-beta %BRANCH% ^
validate ^
+quit ^
@REM Download latest development build of Oxide
echo Downloading Oxide
powershell -Command "(New-Object Net.WebClient).DownloadFile('https://github.com/OxideMod/Oxide.Rust/releases/latest/download/Oxide.Rust.zip', '%root%\oxide.zip')"
@REM Extract it in the server folder
echo Extracting Oxide
powershell -Command "Expand-Archive '%root%\oxide.zip' -DestinationPath '%root%\Oxide.Rust'" -Force
@REM Copy the files to the server folder, only overwriting files in recursive folders, not the folders themselves
echo Copying Oxide files
xcopy %root%\Oxide.Rust\* %root%\server /y /s /i
@REM Cleanup
echo Cleaning up
del %root%\oxide.zip
rmdir /s /q %root%\Oxide.Rust
The update_preview.bat
file takes care of:
- Downloading SteamCMD inside your folder
- Download the Rust Dedicated server files
- Download and extract the latest version of Oxide from GitHub
The update_production.bat
file just calls update_preview.bat
with certain parameters so that the production branch of Rust is installed. You can check out the additional branches you can use at the end of this post, if you wish.
Step 2: Add the Run Script
In the same folder, at the same level as your update scripts, add the following script.
@echo off
cls
SET root=%cd%
SET server=%root%\server
echo Starting server...
cd "%server%"
RustDedicated.exe -batchmode -nographics ^
+rcon.ip 0.0.0.0 ^
+rcon.port 28016 ^
+rcon.password "dk2lksk3" ^
+server.ip 0.0.0.0 ^
+server.port 28015 ^
+server.maxplayers 3 ^
+server.hostname "My Oxide Server" ^
+server.identity "my_server_identity" ^
+server.level "Procedural Map" ^
+server.seed 131302294 ^
+server.worldsize 1000 ^
+server.saveinterval 300 ^
+server.globalchat true ^
+server.description "Powered by Oxide" ^
+server.headerimage "http://i.imgur.com/xNyLhMt.jpg" ^
+server.url "https://oxidemod.org" ^
-logfile "%server%\logs\server_log.txt"
This is the script that will actually run your server. You can tweak the RustDedicated.exe
options to your liking.
Step 3: Update and Launch the Server
Now that you got all the files required to setup and run the server, go ahead and run the update_production.bat
file (by double-clicking it!). After that's done, you can run the run.bat
file to start your server. On the first run, this script will generate your world with the options set for RustDedicated.exe
from the run script.
And that's it! You now have a Rust game server running locally AND with Oxide installed and ready to go! That was pretty quick no?
Bonus: Other Rust Server Tips
The following are not required at all to run your server. You can go ahead and stop reading to enjoy your server! However, here's a couple more tips I left out if you want more.
Using Other Rust Branches
If you want to run the staging branch (or other branches) of Rust, you can add and run one of these files instead of update_production.bat
.
@echo off
update_preview.bat rustbeta_staging staging server
Version Control with Git
If like me you like to version control your game server as you make changes to it, go ahead and initialize a Git repository in at the root of your folder (assuming you have Git installed).
git init
Then, add the following .gitignore file to the root of your folder. Your server files will constantly change, even just by restarting it. This ignore file aims at only tracking your changes and not auto-generated files you shouldn't commit. Feel free to add or remove exclusions from it!
steam/
**/*.exe
**/*.dll
server/Bundles
server/cfg
server/MonoBleedingEdge
server/RustDedicated_Data
server/steamapps
server/HarmonyMods
server/server
server/config
server/appcache
server/logs
server/userdata
server/harmony_log.txt
server/oxide/logs
server/oxide/data/**/*.*
# !server/oxide/data/oxide.groups.data
bin
obj