Rust Dedicated Server: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Major update, start parameters, and providing linux script)
Line 12: Line 12:
**Select install folder: <code>force_install_dir PATH:\SteamCMD\rust_server\</code>
**Select install folder: <code>force_install_dir PATH:\SteamCMD\rust_server\</code>
**Run: <code>app_update 258550 -beta legacy validate</code> to download the old legacy Rust Dedicated Server (rust.legacy)
**Run: <code>app_update 258550 -beta legacy validate</code> to download the old legacy Rust Dedicated Server (rust.legacy)
**Or Run: <code>app_update 258550 -beta experimental validate</code> to download the new experimental dedicated server (rust.alpha)
**Or Run: <code>app_update 258550 validate</code> to download the new alpha version dedicated server (rust.alpha)


=== Configuration & running ===
=== Configuration & running ===
You can run the Rust DS with <code>./rust_server -batchmode</code> (Linux) or <code>rust_server.exe -batchmode</code> (Windows).  
You can run the Rust DS with <code>./RustDedicated -batchmode</code> (Linux) or <code>rust_server.exe -batchmode</code> (Windows).  


==== Command line parameters ====
==== Command line parameters ====
Line 21: Line 21:


{|
{|
|-
! parameter
! switch
! default
! default
! description
! description
|-
|-
| <code>-datadir</code>
| <code>+server.ip</code>
| <code>Save/undefined/</code>
| <code>0.0.0.0</code>
| The folder in which to save data
| IP to listen to
|-
| <code>+server.port</code>
| <code>28015</code>
| Port to listen to
|-
| <code>+server.tickrate</code>
| <code>30</code>
| Server refresh rate (min acceptable 15, max 100) - Increasing this value increase CPU usage
|-
| <code>+server.hostname</code>
| <code>"Your Server Name"</code>
| The displayed name of your server
|-
| <code>+server.identity</code>
| <code>"my_server_identity</code>
| Changes path to your server data rust/server/my_server_identity. Useful for running multiple instances.
|-
|-
| <code>-hostname</code>
| <code>+server.maxplayers</code>
| <code>Untitled Rust Server</code>
| <code>50</code>
| The name of the server
| Max amount of players your server can handle. Max : 500 or more
|-
|-
| <code>-maxplayers</code>
| <code>+server.wolrdsize</code>
| <code>500</code>
| <code>4000</code>
| The maximum amount of players allowed
| Defines the size of the map generated (min 2000, max 8000)
|-
|-
| <code>-port</code>
| <code>+server.saveinterval</code>
| <code>28015</code>
| <code>600</code>
| The port to connect to
| Time in seconds for server save
|-
|-
| <code>-map</code>
| <code>+rcon.ip</code>
| <code>rust_island_2013</code>
| <code>0.0.0.0</code>
| The map to load
| IP to listen to for RCON
|-
|-
| <code>-cfg</code>
| <code>+rcon.port</code>
|  
| <code>28016</code>
| A config file to load (e.g. <code>cfg/myserverconfig.cfg</code>)
| Port to listen to for RCON
|-
|-
| <code>-ip</code>
| <code>+rcon.password</code>
|  
| <code>"YourPassword"</code>
| IP address to bind to (doesn't work well yet)
| RCON Password. If you remove it after setting it up, your server won't start.
|-
|-
| <code>-logfile</code>
| <code>gamelog.txt</code>
| If you're using a script, you'd better put the current date as a filename, otherwise, it'll be erased on every start.
|}
|}


For example:
For example:
  ./rust_server -batchmode -hostname "My Server" -port 28015 -datadir "serverdata/"
  <code>-batchmode +server.ip 0.0.0.0 +server.port 28015 +server.tickrate 30 +server.hostname "Your Server Name" +server.identity "your_server_identity" +server.maxplayers 50 +server.worldsize 4000 +server.saveinterval 600 +rcon.ip 0.0.0.0 +rcon.port 28016 +rcon.password "Your_Rcon_Password" -logfile logfilename.log"</code>


==== Console parameters ====
==== RCON Console parameters ====
When the server is up and running, you can issue the following commands:
When the server is up and running, you can issue the following commands:


Line 118: Line 136:
[[Category:Dedicated Server]]
[[Category:Dedicated Server]]


== External links ==
== Linux Scripts Resources ==
 
=== LGSM rustserver ===
 
[[Image:lgsm.png‎|right|thumb|170px|Linux Game Server Manager]]
Part of [http://gameservermanagers.com/ Linux Game Server Managers] scripts, [http://gameservermanagers.com/lgsm/rustserver/ rustserver] is a command line tool for quick, simple deployment and management of a Rust Linux dedicated server.
 
 
'''Main Features'''
* Server installer (SteamCMD).
* Loads of default start parameters
* Start/Stop/Restart server.
* Server console.
* Server monitoring (including email notification).
* Server update (SteamCMD).
* Server backup.
* Logs management.
 
 
'''Compatibility'''
 
The Linux Game Server Manager is tested to work on the following Linux distributions :
* Debian based distros (Ubuntu, Mint etc.).
* Redhat based distros (CentOS, Fedora etc.).
 
 
Get the script at [http://gameservermanagers.com/lgsm/csgoserver/ gameservermanagers.com].
 
Get more info : [https://github.com/dgibbs64/linuxgsm/wiki Github Wiki].
 
Get help : [https://steamcommunity.com/groups/linuxgsm/discussions LGSM Steam group].
 
== Windows scripting ==
[This solution requires payment to a 3rd party]
[This solution requires payment to a 3rd party]
* [http://forums.firedaemon.com/howtos/rust-dedicated-server-as-a-windows-service.165/ Comprehensive Rust Server HOWTO (includes everything you need to know)]
* [http://forums.firedaemon.com/howtos/rust-dedicated-server-as-a-windows-service.165/ Comprehensive Rust Server HOWTO (includes everything you need to know)]

Revision as of 03:56, 23 February 2016

Attention! The following installation instructions will supply legacy (the main version) as well as the experimental branch's server files when downloading on Windows. Since the legacy server software is Windows only, it will not be included when downloading on Linux, leaving only the experimental server software. More information on this tweet from Garry .

Please note that at this current time, the Rust dedicated server is not being built for linux as part of the regular Rust build process and therefore is unavailable. Please see the issue ticket on Facepunch support.


Dedicated server

Installation

  • Start SteamCMD
    • Log in with a Steam account or anonymously: login anonymous or username
    • Select install folder: force_install_dir PATH:\SteamCMD\rust_server\
    • Run: app_update 258550 -beta legacy validate to download the old legacy Rust Dedicated Server (rust.legacy)
    • Or Run: app_update 258550 validate to download the new alpha version dedicated server (rust.alpha)

Configuration & running

You can run the Rust DS with ./RustDedicated -batchmode (Linux) or rust_server.exe -batchmode (Windows).

Command line parameters

The startup command can be appended with the following startup parameters:

parameter default description
+server.ip 0.0.0.0 IP to listen to
+server.port 28015 Port to listen to
+server.tickrate 30 Server refresh rate (min acceptable 15, max 100) - Increasing this value increase CPU usage
+server.hostname "Your Server Name" The displayed name of your server
+server.identity "my_server_identity Changes path to your server data rust/server/my_server_identity. Useful for running multiple instances.
+server.maxplayers 50 Max amount of players your server can handle. Max : 500 or more
+server.wolrdsize 4000 Defines the size of the map generated (min 2000, max 8000)
+server.saveinterval 600 Time in seconds for server save
+rcon.ip 0.0.0.0 IP to listen to for RCON
+rcon.port 28016 Port to listen to for RCON
+rcon.password "YourPassword" RCON Password. If you remove it after setting it up, your server won't start.
-logfile gamelog.txt If you're using a script, you'd better put the current date as a filename, otherwise, it'll be erased on every start.

For example:

-batchmode +server.ip 0.0.0.0 +server.port 28015 +server.tickrate 30 +server.hostname "Your Server Name" +server.identity "your_server_identity" +server.maxplayers 50 +server.worldsize 4000 +server.saveinterval 600 +rcon.ip 0.0.0.0 +rcon.port 28016 +rcon.password "Your_Rcon_Password" -logfile logfilename.log"

RCON Console parameters

When the server is up and running, you can issue the following commands:

command description
status Outputs the general status of the server. Connected players etc.
say <stuff> Will speak something into everyone's console.
find * List all console commands
rcon.password Set the rcon password for clients to use (using rcon.login <password>)
kick <username> Kicks a user. Username can be the first few letters of a username, or a steamid.
ban <username> As above - but just bans the user from the server (doesn’t kick)
banid <steamid> Bans a userid from the server
unbanall Unbans everyone from the server
server.hostname <hostname> Sets the hostname
server.clienttimeout <int> How long until an unresponsive client times out (default 2 mins)
server.pvp <bool> Enable/Disable pvp mode (default true)
sleepers.on <bool> Enable/Disable sleepers (default true)
quit Quits the server nicely (saving the level and all avatars before leaving)

RCON

To use RCON (Remote CONsole), join the server and press F1 to open the console. Then type:

rcon.login <password>

You can now any command as in #Console parameters.

Ban list

Banned users will be stored in cfg/bans.cfg.

Linux Scripts Resources

LGSM rustserver

Linux Game Server Manager

Part of Linux Game Server Managers scripts, rustserver is a command line tool for quick, simple deployment and management of a Rust Linux dedicated server.


Main Features

  • Server installer (SteamCMD).
  • Loads of default start parameters
  • Start/Stop/Restart server.
  • Server console.
  • Server monitoring (including email notification).
  • Server update (SteamCMD).
  • Server backup.
  • Logs management.


Compatibility

The Linux Game Server Manager is tested to work on the following Linux distributions :

  • Debian based distros (Ubuntu, Mint etc.).
  • Redhat based distros (CentOS, Fedora etc.).


Get the script at gameservermanagers.com.

Get more info : Github Wiki.

Get help : LGSM Steam group.

Windows scripting

[This solution requires payment to a 3rd party]