Rust Dedicated Server: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
 
(69 intermediate revisions by 22 users not shown)
Line 1: Line 1:
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 [https://twitter.com/garrynewman/status/506083511502385152 this tweet from Garry ].
{{delete|Irrelevant information to Valve's games or engines.}}
{{lang|Rust Dedicated Server}}
 
The following installation instructions will only supply the experimental (public) branch's server files since legacy got removed December 2016. ([http://i.imgur.com/4QOaONA.png 8 December 2016])


== Dedicated server ==
== Dedicated server ==
=== System Requirements ===
* System based on Windows, Linux or OSX
* 8 GB free RAM (6k map will use more)
* 8 GB free disc space (SSD/NVMe highly preferred)
To estimate server RAM requirements you can use this server [https://pinehosting.com/tools/rust-ram-calculator RAM estimation tool] created by Pine Hosting.
=== Installation ===
=== Installation ===
*Install [[SteamCMD]]
*Install [[SteamCMD]]
*Start SteamCMD
*Start SteamCMD
**Log in with a Steam account or anonymously: <code>login anonymous or username</code>
**Log in with a Steam account or anonymously: <code>login anonymous or username</code>
**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 validate</code> to download the public branch of rust dedicated server
**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>./RustDedicated -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 24: Line 34:
| <code>+server.ip</code>
| <code>+server.ip</code>
| <code>0.0.0.0</code>
| <code>0.0.0.0</code>
| IP to listen to
| Sets the Server IP. Leave it to 0.0.0.0 unless you have multiple IPs.
|-
|-
| <code>+server.port</code>
| <code>+server.port</code>
| <code>28015</code>
| <code>28015</code>
| Port to listen to
| Sets the port the server will use. (default 28015 UDP)
|-
| <code>+rcon.ip</code>
| <code>0.0.0.0</code>
| Sets the RCON IP.
|-
| <code>+rcon.port</code>
| <code>28016</code>
| Port to listen to for RCON.
|-
| <code>+rcon.web</code>
| <code>1</code>
| If set to true, use websocket rcon. If set to false use legacy, source engine rcon.
|-
| <code>+rcon.password</code>
| <code>"YourRconPassword"</code>
| Sets the RCON password
|-
| <code>+rcon.ssl</code>
| <code>"/etc/ssl/websocket_cert.pfx"</code>
| (Required for secure websockets) Sets the path to the PKCS12 PFX container containing the certificate chain
|-
| <code>+rcon.sslpwd</code>
| <code>"YourPfxPassword"</code>
| (Required for secure websockets) The password needed to decrypt the private key within the PFX container
|-
|-
| <code>+server.tickrate</code>
| <code>+server.tickrate</code>
| <code>30</code>
| <code>10</code>
| Server refresh rate (min acceptable 15, max 100) - Increasing this value increase CPU usage
| Server refresh rate - Not recommended to go above 30.
|-
|-
| <code>+server.hostname</code>
| <code>+server.hostname</code>
| <code>"Your Server Name"</code>
| <code>"Your Server Name"</code>
| The displayed name of your server  
| The displayed name of your server.
|-
|-
| <code>+server.identity</code>
| <code>+server.identity</code>
| <code>"my_server_identity</code>
| <code>"my_server_identity"</code>
| Changes path to your server data rust/server/my_server_identity. Useful for running multiple instances.
| Changes path to your server data rust/server/my_server_identity. Useful for running multiple instances.
|-
|-
| <code>+server.maxplayers</code>
| <code>+server.maxplayers</code>
| <code>50</code>
| <code>50</code>
| Max amount of players your server can handle. Max : 500 or more
| Maximum amount of players allowed to connect to your server at a time.
|-
| <code>+server.worldsize</code>
| <code>3000</code>
| Defines the size of the map generated (min 1000, max 6000)
|-
|-
| <code>+server.wolrdsize</code>
| <code>+server.seed</code>
| <code>4000</code>
| <code>50000</code>
| Defines the size of the map generated (min 2000, max 8000)
| Is the map generation seed.
|-
|-
| <code>+server.saveinterval</code>
| <code>+server.saveinterval</code>
| <code>600</code>
| <code>600</code>
| Time in seconds for server save
| Time in seconds for server save.
|-
| <code>+rcon.ip</code>
| <code>0.0.0.0</code>
| IP to listen to for RCON
|-
| <code>+rcon.port</code>
| <code>28016</code>
| Port to listen to for RCON
|-
| <code>+rcon.password</code>
| <code>"YourPassword"</code>
| RCON Password. If you remove it after setting it up, your server won't start.
|-
|-
| <code>-logfile</code>
| <code>-logfile</code>
| <code>gamelog.txt</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.
| If you're using a script, you'd better put the current date as a filename, otherwise, it'll be erased on every start.
|-
| <code>-silent-crashes</code>
| <code> - </code>
| Won't display a crash dialog and will restart automatically if server is installed as service.
|}
|}


For example:
For example:
  <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>
  <code>-batchmode +server.ip 0.0.0.0 +server.port 28015 +server.tickrate 10 +server.hostname "Your Server Name" +server.identity "your_server_identity" +server.seed 793197 +server.maxplayers 50 +server.worldsize 3000 +server.saveinterval 600 +rcon.ip 0.0.0.0 +rcon.port 28016 +rcon.password "Your_Rcon_Password" -logfile "logfilename.log"</code>
 
==== RCON ====
To use RCON (Remote console) you can either type directly in the CMD, or join the server and press F1 to open the console. (requires authlevel 1 or 2)


==== Settings ====
To add yourself as admin (authlevel 2) type "<code>ownerid YourSteamId64</code>" in the Command Prompt and re-join the server, or add it to the users.cfg located in ../server/serveridentity/cfg.
Here is a RAW list of available settings. You can put them either in your server.cfg (then reboot the server), or input them using RCON, then save it using the command
<code>server.writecfg</code>


(If somebody's willing to add descriptions for everything, you're welcome mate !)
Otherwise, you can use [https://rustadmin.com/ RustAdmin], a nice remote RCON client (recommended).
 
When the server is up and running, you can issue the commands from the [https://developer.valvesoftware.com/wiki/Rust_Dedicated_Server#Server_Commands/ Server Commands] list below.
 
==== Server Commands ====
Here is a RAW list of available commands. You can put them either in your server.cfg (then reboot the server), or input them using RCON.
 
If you want the values to be permanent then save it using the command <code>server.writecfg</code>
 
Last update: 31 August 2017


<code>
<code>
> find .
> Commands
Variables:
bradley.enabled                      If set to false (0) it will disable the APC. Default is (1)
  ai.think                 no description (True)
  ai.think                             If set to False, bears and wolfs are only hostile on attack (True)
  ai.move                 no description (True)
  ai.move                             If set to False, animals will stop moving (recommended for performance boost) (True)
  ai.sensetime             no description (1)
  ai.sensetime                         It's no use to change this value (1)
  ai.frametime             no description (5)
  ai.frametime                         no description (5)
  ai.tickrate             no description (5)
  ai.tickrate                         Changes the tickrate of animals (5)
  antihack.enabled         is antihack enabled at all (True)
  antihack.enabled                     Enables / disables antihack (True)
  antihack.admincheat     are admins allowed to use their admin cheat (True)
  antihack.admincheat                 Are admins allowed to use their admin cheat (True)
  antihack.objectplacement use antihack to verify object placement by players (True)
  antihack.objectplacement             Use antihack to verify object placement by players (True)
  antihack.modelstate     use antihack to verify model state sent by players (True)
  antihack.modelstate                 Use antihack to verify model state sent by players (True)
  antihack.userlevel       0 == users, 1 == admins, 2 == developers (2)
  antihack.userlevel                   0 = users, 1 = admins, 2 = developers (2)
  antihack.enforcementlevel 0 == no enforcement, 1 == kick, 2 == ban (DISABLED) (1)
  antihack.enforcementlevel           What happens if player is above 'antihack.maxviolation' - 0 = no enforcement, 1 = kick, 2 = ban (1)
  antihack.maxdesync       max allowed client desync, lower value = more false positives (1)
  antihack.maxdesync                   Max allowed client desync, lower value = more false positives (1)
  antihack.relaxationrate the rate at which violation values go back down (0.1)
  antihack.relaxationrate             The rate at which violation values go back down (0.1)
  antihack.relaxationpause the time before violation values go back down (10)
  antihack.relaxationpause             The time before violation values go back down (10)
  antihack.maxviolation   violation value above this results in enforcement (100)
  antihack.maxviolation               Violation value above this results in enforcement (100)
  antihack.noclip_protection 0 == disabled, 1 == ray, 2 == sphere, 3 == curve (3)
  antihack.noclip_protection           0 = disabled, 1 = ray, 2 = sphere, 3 = curve (3)
  antihack.noclip_reject   whether or not to reject movement when noclip is detected (True)
  antihack.noclip_reject               Whether or not to reject movement when noclip is detected (True)
  antihack.noclip_penalty violation penalty to hand out when noclip is detected (0)
  antihack.noclip_penalty             Violation penalty to hand out when noclip is detected (0)
  antihack.noclip_stepsize movement curve step size, lower value = less false positives (0.1)
  antihack.noclip_stepsize             Movement curve step size, lower value = less false positives (0.1)
  antihack.noclip_maxsteps movement curve max steps, lower value = more false positives (5)
  antihack.noclip_maxsteps             Movement curve max steps, lower value = more false positives (5)
  antihack.speedhack_protection 0 == disabled, 1 == enabled (1)
  antihack.speedhack_protection       0 = disabled, 1 = enabled (1)
  antihack.speedhack_reject whether or not to reject movement when speedhack is detected (False)
  antihack.speedhack_reject           Whether or not to reject movement when speedhack is detected (False)
  antihack.speedhack_penalty violation penalty to hand out when speedhack is detected (50)
  antihack.speedhack_penalty           Violation penalty to hand out when speedhack is detected (50)
  antihack.speedhack_forgiveness speed threshold to assume speedhacking, lower value = more false positives (2)
  antihack.speedhack_forgiveness       Speed threshold to assume speedhacking, lower value = more false positives (2)
  antihack.speedhack_deltatime time interval to calculate speed in, lower value = more false positives (0.2)
  antihack.speedhack_deltatime         Time interval to calculate speed in, lower value = more false positives (0.2)
  antihack.speedhack_tickets required number of speeding tickets to trigger a violation (15)
  antihack.speedhack_tickets           Required number of speeding tickets to trigger a violation (15)
  antihack.speedhack_history speeding ticket history length (20)
  antihack.speedhack_history           Speeding ticket history length (20)
  antihack.flyhack_protection 0 == disabled, 1 == simple, 2 == advanced (2)
  antihack.flyhack_protection         0 = disabled, 1 = simple, 2 = advanced (2)
  antihack.flyhack_reject whether or not to reject movement when flyhack is detected (False)
  antihack.flyhack_reject             Whether or not to reject movement when flyhack is detected (False)
  antihack.flyhack_penalty violation penalty to hand out when flyhack is detected (50)
  antihack.flyhack_penalty             Violation penalty to hand out when flyhack is detected (50)
  antihack.flyhack_forgiveness distance threshold to assume flyhacking, lower value = more false positives (2)
  antihack.flyhack_forgiveness         Distance threshold to assume flyhacking, lower value = more false positives (2)
  antihack.projectile_protection 0 == disabled, 1 == speed, 2 == speed + entity, 3 == speed + entity + LOS (3)
  antihack.projectile_protection       0 = disabled, 1 = speed, 2 = speed + entity, 3 = speed + entity + LOS (3)
  antihack.projectile_penalty violation penalty to hand out when projectile hack is detected (0)
  antihack.projectile_penalty         Violation penalty to hand out when projectile hack is detected (0)
  antihack.projectile_forgiveness projectile speed forgiveness in percent, lower value = more false positives (0.5)
  antihack.projectile_forgiveness     Projectile speed forgiveness in percent, lower value = more false positives (0.5)
  antihack.projectile_padding projectile hit distance padding in meters, lower value = more false positives (5)
  antihack.projectile_padding         Projectile hit distance padding in meters, lower value = more false positives (5)
  antihack.projectile_serverframes projectile server frames to include in delay, lower value = more false positives (2)
  antihack.projectile_serverframes     Projectile server frames to include in delay, lower value = more false positives (2)
  antihack.projectile_clientframes projectile client frames to include in delay, lower value = more false positives (2)
  antihack.projectile_clientframes     Projectile client frames to include in delay, lower value = more false positives (2)
  antihack.projectile_tickets required number of projectile line of sight tickets to trigger a violation (10)
  antihack.projectile_tickets         Required number of projectile line of sight tickets to trigger a violation (10)
  antihack.melee_protection 0 == disabled, 1 == initiator, 2 == initiator + target, 3 == initiator + target + LOS (3)
  antihack.melee_protection           0 = disabled, 1 = initiator, 2 = initiator + target, 3 = initiator + target + LOS (3)
  antihack.melee_penalty   violation penalty to hand out when melee hack is detected (0)
  antihack.melee_penalty               Violation penalty to hand out when melee hack is detected (0)
  antihack.melee_forgiveness melee distance forgiveness in percent, lower value = more false positives (0.5)
  antihack.melee_forgiveness           Melee distance forgiveness in percent, lower value = more false positives (0.5)
  antihack.melee_padding   melee hit distance padding in meters, lower value = more false positives (2)
  antihack.melee_padding               Melee hit distance padding in meters, lower value = more false positives (2)
  antihack.melee_serverframes melee server frames to include in delay, lower value = more false positives (2)
  antihack.melee_serverframes         Melee server frames to include in delay, lower value = more false positives (2)
  antihack.melee_clientframes melee client frames to include in delay, lower value = more false positives (2)
  antihack.melee_clientframes         Melee client frames to include in delay, lower value = more false positives (2)
  antihack.melee_tickets   required number of melee line of sight tickets to trigger a violation (2)
  antihack.melee_tickets               Required number of melee line of sight tickets to trigger a violation (2)
  antihack.eye_protection 0 == disabled, 1 == distance, 2 == distance + LOS (2)
  antihack.eye_protection             0 = disabled, 1 = distance, 2 = distance + LOS (2)
  antihack.eye_penalty     violation penalty to hand out when eye hack is detected (0)
  antihack.eye_penalty                 violation penalty to hand out when eye hack is detected (0)
  antihack.debuglevel     0 == silent, 1 == print max violation, 2 == print every violation (1)
  antihack.debuglevel                 0 = silent, 1 = print max violation, 2 = print every violation (1)
  batching.colliders       no description (True)
  batching.colliders                   *EXPERIMENTAL* Rust batches colliders to get around the maximum collider limit. To improve server performance you can unbatch (batching.colliders 0) colliders until they reach 250k. (True)
  batching.collider_vertices no description (10000)
  batching.collider_vertices           no description (10000)
  batching.collider_submeshes no description (1)
  batching.collider_submeshes         no description (1)
  batching.verbose         no description (0)
  batching.verbose                     no description (0)
  chat.enabled             Enable or disable chat displaying (True)
  chat.enabled                         Enable or disable chat displaying (True)
  chat.serverlog           no description (True)
  chat.serverlog                       Enable or disable chat logging (True)
  construct.frameminutes   How many minutes before a placed frame gets destroyed (30)
  construct.frameminutes               How many minutes before a placed frame gets destroyed (30)
  craft.instant           no description (False)
  craft.instant                       Enable or disable instant crafting (False)
  debug.checktriggers     Debug triggers (False)
  debug.checktriggers                 Debug triggers (False)
  decay.tick               no description (600)
  decay.tick                           Larger amount increases the applied decay damage to entity. (600)
  decay.scale             no description (1)
  decay.scale                         1 = normal decay, 0,5 = 50%, 0 = turn decay off (1)
  decay.debug             no description (False)
  decay.debug                         Debugmode (False)
  env.time                 no description (10.78395)
  env.time                             Shows in-game time. If value declared, will change the server time (values: 0 - 24)
  env.day                 no description (20)
  env.day                             Displays the day of the month. Pointless to change this value (12)
  env.month               no description (6)
  env.month                           Displays the month. Pointless to change this value (6)
  env.year                 no description (2024)
  env.year                             Displays the year. Pointless to change this value (2024)
  fps.limit               The maximum number of frames to render per second (60)
  fps.limit                           The maximum number of frames to render per second (256)
  gc.interval             no description (-1)
  gc.interval                         Changes the interval between garbage collects. (-1)
  global.safemode          no description (False)
  heli.lifetimeminutes                The amount of time the helicopter is allowed to stay in minutes. (15)
  global.debugmode        no description (False)
  heli.guns                            Enables / disables the helicopters minigun. If set to 0, the helicopter will shoot rockets only. (1)
  global.maxthreads        no description (8)
  heli.bulletdamagescale              Changes the bullet damage of the helicopter. Higher value = more damage (1)
  global.perf              Show frames per second (fps) (0)
  heli.bulletaccuracy                  Changes the accuracy of the bullets. Higher value = less accuracy (2)
  global.timewarning      no description (False)
  net.visdebug                        Turns on debug display of network visibility (False)
  global.developer        no description (0)
  physics.droppedmode                  The physics mode that dropped items and corpses should use. good, tempgood or fast. fast + tempgood might cause objects to fall through other objects. (good)
heli.lifetimeminutes    no description (15)
  physics.sendeffects                  Send effects to clients when physics objects collide (True)
  heli.guns                no description (1)
  physics.bouncethreshold              no description (2)
  heli.bulletdamagescale  no description (1)
  physics.sleepthreshold              no description (0.005)
  heli.bulletaccuracy      no description (2)
  physics.solveriterationcount        The default solver iteration count permitted for any rigid bodies (default 7). Must be positive (3)
  net.visdebug            Turns on debug display of network visibility (False)
  physics.steps                        The amount of physics steps per second (16)
  physics.droppedmode      The physics mode that dropped items and corpses should use. good, tempgood or fast. fast + tempgood might cause objects to fall through other objects. (good)
pool.skins                          no description (False)
  physics.sendeffects      Send effects to clients when physics objects collide (True)
  sentry.targetall                    Target everyone regardless of authorization (False)
  physics.bouncethreshold  no description (2)
  sentry.hostileduration              How long until something is considered hostile after it attacked (120)
  physics.sleepthreshold  no description (0.005)
  server.ip                            Sets the IP of the server. Should be stated in the startup parameters
  physics.solveriterationcount The default solver iteration count permitted for any rigid bodies (default 7). Must be positive (3)
  server.port                          Sets the IP of the server. Should be stated in the startup parameters
  physics.steps            The amount of physics steps per second (16)
  server.maxplayers                    Changes the maximum amount of player slots.
  pool.skins              no description (False)
  server.hostname                      Sets the Servername. example: server.hostname "My Rust Server"
  pool.entities            no description (False)
  server.identity                      Changes path to your server data. (my_server_identity)
  sentry.targetall        target everyone regardless of authorization (False)
  server.level                        Sets the map of the server (Procedural Map) values: Barren, Craggy Island, Hapis, Savas Island
  sentry.hostileduration  how long until something is considered hostile after it attacked (120)
  server.seed                          Sets the the map generation seed.
  server.ip                no description (164.132.201.49)
server.salt                          Prints the server.salt
  server.port              no description (28015)
  server.worldsize                    Changes the map size (3000). values: 1000 - 6000. 3000 equals 9km². (3000m^2)
  server.maxplayers        no description (50)
  server.saveinterval                  Interval between the server saves the map. (300)
  server.hostname          no description (Server Name - Servername)
  server.secure                        Enables / disables Valve Anti Cheat security. (True)
  server.identity          no description (rust-server)
  server.tickrate                      Changes the server tickrate. Going higher than 30 is not recommended. (30)
  server.level            no description (Procedural Map)
  server.entityrate                    Tickrate. Recommended to leave it at 16. (16)
  server.seed              no description (0-2147483647)
  server.cycletime                    no description (500)
  server.salt              no description (731364870)
  server.official                      Only whitelisted server by Facepunch can use this command (False)
  server.worldsize        no description (3000-6000)
  server.globalchat                    If set to false, only people within voice range can read each others messages. (True)
  server.saveinterval      no description (300)
  server.stability                    If set to false, building blocks will have 100% stability no matter how high you build. (True)
  server.secure            no description (True)
  server.radiation                    Disables / enables server radioation (True)
  server.tickrate          no description (30)
  server.itemdespawn                  Time until an item despawn (180)
  server.entityrate        no description (16)
  server.pve                          Enables / disables PvE mode (False)
server.cycletime        no description (500)
  server.description                   Command used to write a server description. Make \n to make a new line
  server.official          no description (False)
  server.headerimage                  Sets the serverbanner - picture must be 500x256
  server.globalchat        no description (True)
  server.logoimage                    Sets the servers logo image - Image is shown in the server browser and rust+ app
server.stability        no description (True)
  server.url                          Sets the server 'Webpage'
  server.radiation        no description (False)
  server.branch                        no description ()
  server.itemdespawn      no description (180)
  server.eac                          Enables / disables Easy Anti Cheat (1)
  server.pve              no description (False)
  server.queriespersecond              no description (2000)
  server.description      no description (Server Description, make \nTo make a new line)
  server.ipqueriespermin              no description (30)
  server.headerimage      no description (http://i.imgur.com/7FwnOGD .jpg) - picture must be 500x256
  server.meleedamage                  Changes the melee damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
  server.url              no description (https://www.url.com/to/your/website)
  server.arrowdamage                  Changes the arrow damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
  server.branch            no description ()
  server.bulletdamage                  Changes the bullet damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
  server.eac              no description (1)
  server.bleedingdamage                Changes the bleeding damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.queriespersecond  no description (2000)
  server.meleearmor                    Changes the scale of protection against melee damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
  server.ipqueriespermin  no description (30)
  server.arrowarmor                    Changes the scale of protection against arrow damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.meleedamage      no description (1)
  server.bulletarmor                   Changes the scale of protection against bullet damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.arrowdamage      no description (1)
  server.bleedingarmor                Changes the scale of protection against bleeding damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
  server.bulletdamage      no description (1)
server.updatebatch                  How many entity updates should we send per loop. Setting this > 1000 might cause lag when a player first joins your server. (128)
server.bleedingdamage    no description (1)
  server.planttick                     Plants tick every x seconds. This is how many seconds between ticks. (60)
  server.meleearmor        no description (1)
  server.planttickscale               Setting this to 2 will make plants grow, fruit and die two times faster than normal. (1)
server.arrowarmor        no description (1)
  server.respawnresetrange             Distance from sleeping bag to reset other sleeping bags/beds. (50)
  server.bulletarmor       no description (1)
  server.maxunack                     Max amount of unacknowledged messages before we assume we're congested (4)
server.bleedingarmor    no description (1)
  server.maxflood                     Max amount of ticks to receive per second before we assume a client is flooding us (1000)
  server.updatebatch      How many entity updates should we send per loop. Setting this > 1000 might cause lag when a player first joins your server. (128)
  server.netcache                     Use network caching (True)
  server.planttick         Plants tick every x seconds. This is how many seconds between ticks. (60)
  server.netcachesize                 Informational, the size of the network cache (in bytes) (2214666)
  server.planttickscale   Setting this to 2 will make plants grow, fruit and die two times faster than normal. (1)
  server.savecachesize                 Informational, the size of the save cache (in bytes) (2264944)
  server.respawnresetrange Distance from sleeping bag to reset other sleeping bags/beds. (50)
  server.combatlogsize                 The size of the combat log (100)
  server.maxunack         Max amount of unacknowledged messages before we assume we're congested (4)
  server.idlekick                     Number of minutes until idle players are kicked (30)
  server.maxflood         Max amount of ticks to receive per second before we assume a client is flooding us (1000)
  server.idlekickmode                 0 = no idle kick, 1 = kick if server full, 2 = always kick (1)
  server.netcache         Use network caching (True)
  server.idlekickadmins               1 = admins can get idle kicked (0)
  server.netcachesize     Informational, the size of the network cache (in bytes) (2214666)
  server.maxreceivetime               no description (20)
  server.savecachesize     Informational, the size of the save cache (in bytes) (2264944)
  server.compression                   no description (False)
  server.combatlogsize     The size of the combat log (100)
  server.netlog                       no description (False)
  server.idlekick         Number of minutes until idle players are kicked (30)
  spawn.min_rate                       no description (0,2)
  server.idlekickmode     0 = no idle kick, 1 = kick if server full, 2 = always kick (1)
  spawn.max_rate                       no description (2)
  server.idlekickadmins   1 = admins can get idle kicked (0)
  spawn.min_density                   no description (0,2)
  server.maxreceivetime   no description (20)
  spawn.max_density                   no description (2)
  server.compression       no description (False)
  stability.verbose                   no description (0)
  server.netlog           no description (False)
  stability.strikes                   no description (10)
  spawn.min_rate           no description (0.2)
  stability.collapse                   no description (0.05)
  spawn.max_rate           no description (2)
  stability.accuracy                   no description (0.001)
  spawn.min_density       no description (0.2)
  time.fixeddelta                     Fixed delta time in seconds (0.0625)
  spawn.max_density       no description (2)
  time.maxdelta                       The minimum amount of times to tick per frame (0.33)
  stability.verbose       no description (0)
  vis.damage                           Turns on debug display of damages (False)
  stability.strikes       no description (10)
  vis.attack                           Turns on debug display of attacks (False)
  stability.collapse       no description (0.05)
  vis.protection                       Turns on debug display of protection (False)
  stability.accuracy       no description (0.001)
  vis.weakspots                       Turns on debug display of weakspots (False)
  time.fixeddelta         Fixed delta time in seconds (0.0625)
  vis.triggers                         Show trigger entries (False)
  time.maxdelta           The minimum amount of times to tick per frame (0.33)
  vis.hitboxes                         Turns on debug display of hitboxes (False)
  vis.damage               Turns on debug display of damages (False)
  vis.lineofsight                     Turns on debug display of line of sight checks (False)
  vis.attack               Turns on debug display of attacks (False)
  xmas.enabled                         no description (True)
  vis.protection           Turns on debug display of protection (False)
  xmas.spawnrange                     no description (50)
  vis.weakspots           Turns on debug display of weakspots (False)
  xmas.giftsperplayer                 no description (2)
  vis.triggers             Show trigger entries (False)
  rcon.print                          If true, rcon commands etc will be printed in the console (False)
  vis.hitboxes             Turns on debug display of hitboxes (False)
  find                                Search for a command
  vis.lineofsight         Turns on debug display of line of sight checks (False)
  status                              Print out currently connected clients
  xmas.enabled             no description (True)
  stats                                Print out stats of currently connected clients
  xmas.spawnrange         no description (50)
kick                                Kicks a player from the server. usage: kick {playername} {reason} example: kick Frank "stop crying"
  xmas.giftsperplayer     no description (2)
  kickall                              Kicks everyone from the server.
  rcon.port                no description (28016)
  ban                                  Permanently bans a player from the server. usage: ban {playername} {reason} example: ban Frank "stop crying"
  rcon.ip                  no description (0.0.0.0)
moderatorid                          ( void ) no description
  rcon.web                If set to true, use websocket rcon. If set to false use legacy, source engine rcon. (False)
  ownerid                              ( void ) no description
  rcon.print              If true, rcon commands etc will be printed in the console (False)
  removemoderator                      ( void ) no description
  global.find( string Name ) Search for a command
  removeowner                          ( void ) no description
  global.echo( string output ) Prints something to the debug output
  banid                                ( void ) no description
  global.status( ) Print out currently connected clients
  unban                                ( void ) no description
  global.stats(  ) Print out stats of currently connected clients
  players                              Print out currently connected clients etc
global.kick( void ) no description
say                                  Sends a message in chat
  global.kickall( void ) no description
  users                                Show user info for players on server.
  global.ban( void ) no description
  banlist                              List of banned users (sourceds compat)
  global.moderatorid( void ) no description
  banlistex                            List of banned users - shows reasons and usernames
  global.ownerid( void ) no description
listid                              List of banned users, by ID (sourceds compat)
  global.removemoderator( void ) no description
mutevoice                            no description
  global.removeowner( void ) no description
  unmutevoice                          no description
  global.banid( void ) no description
  mutechat                            no description
  global.unban( void ) no description
  unmutechat                          no description
  global.players( ) Print out currently connected clients etc
  playerlist                          Get a list of players
  global.say(  ) Sends a message in chat
  bans                                List of banned users
  global.users( ) Show user info for players on server.
  serverinfo                          Get a list of information about the server
  global.banlist(  ) List of banned users (sourceds compat)
  batching.refresh_colliders          no description
  global.banlistex( ) List of banned users - shows reasons and usernames
  batching.status                      no description
  global.listid(  ) List of banned users, by ID (sourceds compat)
  chat.tail                            Return the last x lines of the console. Default is 200
  global.mutevoice( void ) no description
  chat.search                          Search the console for a particular string
  global.unmutevoice( void ) no description
  console.tail                        Return the last x lines of the console. Default is 200
  global.mutechat( void ) no description
  console.search                      Search the console for a particular string
  global.unmutechat( void ) no description
  data.export                          no description
global.clientperf( void ) no description
  flushgroup                          Takes you in and out of your current network group, causing you to delete and then download all entities in your PVS again
  global.entid( void ) no description
  breakheld                            Break the current held object
  global.playerlist( ) Get a list of players
  breakitem                            Break all the items in your inventory whose name match the passed string
  global.bans(  ) List of banned users
  hurt                                Damage yourself
  global.serverinfo( ) Get a list of information about the server
  entity.debug_toggle                  no description
  batching.refresh_colliders( void ) no description
  entity.nudge                        no description
  batching.status( void ) no description
  entity.create                        Create entities, you must be playing in the server, use F1 to open console. Example entity list: http://text-share.com/view/43244684
  chat.tail(  ) Return the last x lines of the console. Default is 200
  env.addtime                          Add (in hours) time to spawn choppers / airdrops without changing the server in-game time
chat.search( ) Search the console for a particular string
gc.collect                          no description
  console.tail(  ) Return the last x lines of the console. Default is 200
  gc.unload                            no description
  console.search(  ) Search the console for a particular string
  global.restart                      Restart the server - with x seconds warning. If no seconds given, server restarts after 5 minutes. (300 seconds)
  data.export( void ) no description
  global.quit                          Stops the server and closes the command prompt.
  debug.flushgroup( ) Takes you in and out of your current network group, causing you to delete and then download all entities in your PVS again
  global.report                        no description
  debug.breakheld(  ) Break the current held object
  global.objects                      no description
  debug.breakitem(  ) Break all the items in your inventory whose name match the passed string
  global.textures                      no description
debug.hurt( void ) no description
  global.colliders                    no description
  entity.debug_toggle( void ) no description
  global.error                        no description
  entity.nudge( void ) no description
  global.queue                        no description
  entity.create( void ) no description
  global.sleep                        no description
  env.addtime( void ) no description
  global.injure                        no description
  gc.collect( void ) no description
  global.spectate                      no description
  gc.unload( void ) no description
  global.teleport                      no description
  global.restart(  ) Restart the server - with x seconds warning
  global.teleport2me                  no description
  global.quit(  ) Leave the game
  global.teleportany                  no description
  global.report( void ) no description
  global.teleportpos                  no description
  global.objects( void ) no description
  global.cleanup                      no description
  global.textures( void ) no description
  global.version                      no description
  global.colliders( void ) no description
  global.sysinfo                      no description
  global.error( void ) no description
  global.breakitem                    no description
  global.queue( void ) no description
  heli.drop                            Spawns a helicopter at a specific players posititon (heli.drop <steamid 64 bit, steam name>)
  global.sleep( void ) no description
  heli.calltome                        Forces a helicopter to spawn off map and fly to your position
  global.injure( void ) no description
  heli.call                            Calls in a helicopter to roam the map like normal
  global.spectate( void ) no description
heli.strafe                          Forces helicopter to target a specific player (heli.strafe <steamid 64 bit, steam name>)
  global.teleport( void ) no description
  hierarchy.ls                        no description
  global.teleport2me( void ) no description
  hierarchy.cd                        no description
  global.teleportany( void ) no description
  hierarchy.del                        no description
  global.teleportpos( void ) no description
  inventory.give                      no description
  global.cleanup( void ) no description
  inventory.giveall                    no description
  global.version( void ) no description
  inventory.giveto                    no description
  global.sysinfo( void ) no description
  inventory.giveid                    no description
  global.breakitem( void ) no description
  inventory.givearm                    no description
  global.givebp( void ) no description
  pool.print_memory                    no description
  heli.drop( void ) no description
  pool.print_prefabs                  no description
  heli.calltome( void ) no description
  pool.print_assets                    no description
  heli.call( void ) no description
  pool.clear_memory                    no description
  heli.strafe( void ) no description
  pool.clear_prefabs                  no description
  hierarchy.ls( void ) no description
  pool.clear_assets                    no description
  hierarchy.cd( void ) no description
  server.stop                          Stops the server
  hierarchy.del( void ) no description
  server.backup                        Backup server folder
  inventory.give( void ) no description
  server.writecfg                      Writes config files
  inventory.resetbp( void ) no description
  server.fps                          Prints current server fps
  inventory.giveall( void ) no description
  server.save                          Force save the current game
  inventory.givebpall( void ) no description
  server.readcfg                      no description
  inventory.giveto( void ) no description
  spawn.fill_populations              no description
  inventory.giveid( void ) no description
  spawn.fill_groups                    no description
inventory.givearm( void ) no description
  spawn.report                        Prints some information about entities already spawned on the server
inventory.givebp( void ) no description
weather.clouds                      no description
pool.print_memory( void ) no description
  weather.fog                          no description
pool.print_prefabs( void ) no description
  weather.wind                        no description
pool.print_assets( void ) no description
  weather.rain                        Modify rain intensity, values between 0-100 (auto)
pool.clear_memory( void ) no description
  xmas.refill                          no description
pool.clear_prefabs( void ) no description
  global.dump                         no description
pool.clear_assets( void ) no description
server.stop( string DisconnectMessage ) Stops a server
server.backup(  ) Backup server folder
server.writecfg(  ) Writes config files
server.fps( void ) no description
server.save(  ) Force save the current game
server.readcfg( void ) no description
spawn.fill_populations( void ) no description
spawn.fill_groups( void ) no description
spawn.report( void ) no description
weather.clouds( void ) no description
weather.fog( void ) no description
weather.wind( void ) no description
weather.rain( void ) no description
xmas.refill( void ) no description
  xp.reroll(  ) Refund all spent xp and relock all blueprints, must type 'confirm' after command - no going back!
xp.randomowner( void ) no description
  xp.randomowners( void ) no description
xp.add( void ) no description
xp.reset( void ) no description
xp.setlevel( void ) no description
xp.addlevel( void ) no description
xp.history( void ) no description
  global.dump( void ) no description
</code>
</code>


==== RCON ====
==== Ban list ====
To use RCON (Remote CONsole), join the server and press F1 to open the console. Then type:
Banned users will be stored in <code>cfg/bans.cfg</code>.
rcon.login <password>
 
== Cross Platform Resources ==
===AMP [Commercial Software]===
[https://cubecoders.com/AMP/Rust?utm_source=valvewiki AMP (Application Management Panel)] is a simple to use and easy to install control panel and management system for hosting game servers. It runs on '''both Windows and Linux''' and requires '''no command line knowledge''' to get started. Everything is managed via its web interface. Most of Rust's settings are accessible via AMPs friendly web interface so you don't have to mess around with configuration files or command line flags (Unless you want to, it won't stop you if you need to do anything custom!)
 
[[File:RST.png|370px|thumb|right|Setting up Rust via AMP]]
 
====Features====
 
* Simple, automated installer that requires very little admin knowledge.
* Responsive interface to access your servers from your mobile device.
* Friendly, straightforward web interface with a built in tutorial to help you get started.
* Live console and player lists to interact with your server and players.
* Advanced scheduler to automate tasks such as backups, broadcast messages, restarts or wipes.
* S3 Support for offloading backups and cloud storage.
* Event-driven scheduler which can respond to in-game events. For example, sending a discord message when someone joins the server.
* Automated installation and updates with the click of a button.
* High level of security, supporting Authenticator apps, as well as fingerprint scanners and other security devices.
* Built in SFTP server and web-based file manager to easily manage files and configurations.
* CPU and RAM resource limit controls via Docker (optional)
* Automatic firewall management (optional)
 
====OS Support====
 
* Windows 10/Server 2016 or Newer (64-bit only)
* Debian 10/CentOS 8/Rocky 8 or Newer (64-bit only)
* Most other modern Debian/RHEL/Arch Linux distributions
 
====Links====
 
Main Site: [https://cubecoders.com/AMP/Rust?utm_source=valvewiki https://cubecoders.com/AMP]
Support: [https://support.cubecoders.com/?utm_source=valvewiki&utm_term=rust https://support.cubecoders.com/]
 
=== GameAP ===
 
[https://gameap.com GameAP] is open-source game servers management panel. Easy to install and use.
The panel offers comprehensive support for servers running the Rust game, encompassing management of players.
 
[[File:Gameap_rust.png|370px|thumb|right|Setting up Rust via GameAP]]
 
====Features====


Otherwise, you can use [http://oxidemod.org/resources/rusty-server-rcon-administration-tool.53/ Rusty], a nice remote RCON client (very advised).
* Start/Stop/Restart server
* Install, Update game server (SteamCMD and repositories)
* Console, Player management (kick, ban, messages)
* File management
* Tasks scheduler


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


{|
* Windows 10/Server 2016 or Newer (x86, AMD64, ARM)
|-
* Debian 10/Ubuntu 18/CentOS 8/Rocky 8 or Newer
! command
* Most other modern Debian/RHEL/Arch Linux distributions
! description
|-
| <code>status</code>
| Outputs the general status of the server. Connected players etc.
|-
| <code>say <stuff></code>
| Will speak something into everyone's console.
|-
| <code>find *</code>
| List all console commands
|-
| <code>rcon.password</code>
| Set the rcon password for clients to use (using rcon.login <password>)
|-
| <code>kick <username></code>
| Kicks a user. Username can be the first few letters of a username, or a steamid.
|-
| <code>ban <username></code>
| As above - but just bans the user from the server (doesn’t kick)
|-
| <code>banid <steamid></code>
| Bans a userid from the server
|-
| <code>unbanall</code>
| Unbans everyone from the server
|-
| <code>server.hostname <hostname></code>
| Sets the hostname
|-
| <code>server.clienttimeout <int></code>
| How long until an unresponsive client times out (default 2 mins)
|-
| <code>server.pvp <bool></code>
| Enable/Disable pvp mode (default true)
|-
| <code>sleepers.on <bool></code>
| Enable/Disable sleepers (default true)
|-
| <code>quit</code>
| Quits the server nicely (saving the level and all avatars before leaving)
|-
|}


====Links====


==== Ban list ====
Main Site: [https://gameap.com https://gameap.com]
Banned users will be stored in <code>cfg/bans.cfg</code>.
[[Category:Dedicated Server]]


== Linux Scripts Resources ==
Documentation: [https://docs.gameap.com/en/tutorials/rust.html https://docs.gameap.com/en/tutorials/rust.html]


=== LGSM rustserver ===
GitHub: https://github.com/gameap


[[Image:lgsm.png‎|right|thumb|170px|Linux Game Server Manager]]
== Linux Scripts Resources ==
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.
===LinuxGSM Rust Server===
[[File:LinuxGSM_Logo_White.png‎|right|thumb|370px|Linux Game Server Managers]]
LinuxGSM is the command line tool for quick, simple deployment and management of dedicated game server, using SteamCMD.


====Features====
* Backup
* Console
* Details
* Installer (SteamCMD)
* Monitor
* Alerts (Email, Pushbullet)
* Update (SteamCMD)
* Start/Stop/Restart server


'''Main Features'''
====Supported Servers====
* Server installer (SteamCMD).
There are now 70+ different game servers supported and rising. For a full list visit the website.
* Loads of default start parameters
* Start/Stop/Restart server.
* Server console.
* Server monitoring (including email notification).
* Server update (SteamCMD).
* Server backup.
* Logs management.


====Links====
Website: https://linuxgsm.com/lgsm/rustserver/


'''Compatibility'''
GitHub Repo:  https://github.com/GameServerManagers/LinuxGSM


The Linux Game Server Manager is tested to work on the following Linux distributions :
== Windows Resources ==
* Debian based distros (Ubuntu, Mint etc.).
=== Rust Server Manager [PAID] ===
* Redhat based distros (CentOS, Fedora etc.).
[[File:Rsmfmx.png|900px|frameless|right]]
Rust Server Manager is a premium tool to help you create and manage your dedicated Rust Servers. It provides you with all the tools that you need to set up and manage your rust server.


'''Features'''
* Graphical Config Editor with more server options.
* Server Installer (Multi Branch support).
* Server Updater (Update your server manually or automatically).
* Server Verify (Verify your server files if you think something is missing).
* Wipe Manager (Wipe your server along with the chosen data to wipe).
* uMod / Oxide support.
* Full uMod / Oxide Control (Config editor, plugin editor, plugin config editor).
* Plugin Updater.
* Joining List - Get and manage a list of player joining your server.
* Queued List - Get and manage players in queue to join your server.
* Player Manager - Manage online and offline players
* The list of features are too long to add here but there is a (probably outdated) list on the website: https://rustservermanager.com/


Get the script at [http://gameservermanagers.com/lgsm/rustserver/ gameservermanagers.com].
'''Compatible With:'''
* Windows 10, 8.1, 8 and 7.
* Windows Server 2016, 2012 and 2008. (2008 untested)


Get more info : [https://github.com/dgibbs64/linuxgsm/wiki Github Wiki].
Buy Here: https://rustservermanager.com/


Get help : [https://steamcommunity.com/groups/linuxgsm/discussions LGSM Steam group].
=== Other ===
Facepunch's online rcon client
* https://facepunch.github.io/webrcon/#/home


== Windows scripting ==
[[Category:Dedicated Server]]
[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)]

Latest revision as of 13:07, 27 July 2024

Warning icon.png
This article has been marked as a candidate for speedy deletion for the following reason:
Irrelevant information to Valve's games or engines.
If you object to this decision, then please discuss why here. If this page doesn't meet the criteria for speedy deletion, then please remove this notice, but do not remove it from pages that you have created yourself
Administrators / Moderators - Remember to check if anything links here and the page history before deleting.
English (en)中文 (zh)Translate (Translate)

The following installation instructions will only supply the experimental (public) branch's server files since legacy got removed December 2016. (8 December 2016)

Dedicated server

System Requirements

  • System based on Windows, Linux or OSX
  • 8 GB free RAM (6k map will use more)
  • 8 GB free disc space (SSD/NVMe highly preferred)

To estimate server RAM requirements you can use this server RAM estimation tool created by Pine Hosting.

Installation

  • Install SteamCMD
  • 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 validate to download the public branch of rust dedicated server

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 Sets the Server IP. Leave it to 0.0.0.0 unless you have multiple IPs.
+server.port 28015 Sets the port the server will use. (default 28015 UDP)
+rcon.ip 0.0.0.0 Sets the RCON IP.
+rcon.port 28016 Port to listen to for RCON.
+rcon.web 1 If set to true, use websocket rcon. If set to false use legacy, source engine rcon.
+rcon.password "YourRconPassword" Sets the RCON password
+rcon.ssl "/etc/ssl/websocket_cert.pfx" (Required for secure websockets) Sets the path to the PKCS12 PFX container containing the certificate chain
+rcon.sslpwd "YourPfxPassword" (Required for secure websockets) The password needed to decrypt the private key within the PFX container
+server.tickrate 10 Server refresh rate - Not recommended to go above 30.
+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 Maximum amount of players allowed to connect to your server at a time.
+server.worldsize 3000 Defines the size of the map generated (min 1000, max 6000)
+server.seed 50000 Is the map generation seed.
+server.saveinterval 600 Time in seconds for server save.
-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.
-silent-crashes - Won't display a crash dialog and will restart automatically if server is installed as service.

For example:

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

RCON

To use RCON (Remote console) you can either type directly in the CMD, or join the server and press F1 to open the console. (requires authlevel 1 or 2)

To add yourself as admin (authlevel 2) type "ownerid YourSteamId64" in the Command Prompt and re-join the server, or add it to the users.cfg located in ../server/serveridentity/cfg.

Otherwise, you can use RustAdmin, a nice remote RCON client (recommended).

When the server is up and running, you can issue the commands from the Server Commands list below.

Server Commands

Here is a RAW list of available commands. You can put them either in your server.cfg (then reboot the server), or input them using RCON.

If you want the values to be permanent then save it using the command server.writecfg

Last update: 31 August 2017

> Commands

bradley.enabled                      If set to false (0) it will disable the APC. Default is (1)
ai.think                             If set to False, bears and wolfs are only hostile on attack (True)
ai.move                              If set to False, animals will stop moving (recommended for performance boost) (True)
ai.sensetime                         It's no use to change this value (1)
ai.frametime                         no description (5)
ai.tickrate                          Changes the tickrate of animals (5)
antihack.enabled                     Enables / disables antihack (True)
antihack.admincheat                  Are admins allowed to use their admin cheat (True)
antihack.objectplacement             Use antihack to verify object placement by players (True)
antihack.modelstate                  Use antihack to verify model state sent by players (True)
antihack.userlevel                   0 = users, 1 = admins, 2 = developers (2)
antihack.enforcementlevel            What happens if player is above 'antihack.maxviolation' - 0 = no enforcement, 1 = kick, 2 = ban (1)
antihack.maxdesync                   Max allowed client desync, lower value = more false positives (1)
antihack.relaxationrate              The rate at which violation values go back down (0.1)
antihack.relaxationpause             The time before violation values go back down (10)
antihack.maxviolation                Violation value above this results in enforcement (100)
antihack.noclip_protection           0 = disabled, 1 = ray, 2 = sphere, 3 = curve (3)
antihack.noclip_reject               Whether or not to reject movement when noclip is detected (True)
antihack.noclip_penalty              Violation penalty to hand out when noclip is detected (0)
antihack.noclip_stepsize             Movement curve step size, lower value = less false positives (0.1)
antihack.noclip_maxsteps             Movement curve max steps, lower value = more false positives (5)
antihack.speedhack_protection        0 = disabled, 1 = enabled (1)
antihack.speedhack_reject            Whether or not to reject movement when speedhack is detected (False)
antihack.speedhack_penalty           Violation penalty to hand out when speedhack is detected (50)
antihack.speedhack_forgiveness       Speed threshold to assume speedhacking, lower value = more false positives (2)
antihack.speedhack_deltatime         Time interval to calculate speed in, lower value = more false positives (0.2)
antihack.speedhack_tickets           Required number of speeding tickets to trigger a violation (15)
antihack.speedhack_history           Speeding ticket history length (20)
antihack.flyhack_protection          0 = disabled, 1 = simple, 2 = advanced (2)
antihack.flyhack_reject              Whether or not to reject movement when flyhack is detected (False)
antihack.flyhack_penalty             Violation penalty to hand out when flyhack is detected (50)
antihack.flyhack_forgiveness         Distance threshold to assume flyhacking, lower value = more false positives (2)
antihack.projectile_protection       0 = disabled, 1 = speed, 2 = speed + entity, 3 = speed + entity + LOS (3)
antihack.projectile_penalty          Violation penalty to hand out when projectile hack is detected (0)
antihack.projectile_forgiveness      Projectile speed forgiveness in percent, lower value = more false positives (0.5)
antihack.projectile_padding          Projectile hit distance padding in meters, lower value = more false positives (5)
antihack.projectile_serverframes     Projectile server frames to include in delay, lower value = more false positives (2)
antihack.projectile_clientframes     Projectile client frames to include in delay, lower value = more false positives (2)
antihack.projectile_tickets          Required number of projectile line of sight tickets to trigger a violation (10)
antihack.melee_protection            0 = disabled, 1 = initiator, 2 = initiator + target, 3 = initiator + target + LOS (3)
antihack.melee_penalty               Violation penalty to hand out when melee hack is detected (0)
antihack.melee_forgiveness           Melee distance forgiveness in percent, lower value = more false positives (0.5)
antihack.melee_padding               Melee hit distance padding in meters, lower value = more false positives (2)
antihack.melee_serverframes          Melee server frames to include in delay, lower value = more false positives (2)
antihack.melee_clientframes          Melee client frames to include in delay, lower value = more false positives (2)
antihack.melee_tickets               Required number of melee line of sight tickets to trigger a violation (2)
antihack.eye_protection              0 = disabled, 1 = distance, 2 = distance + LOS (2)
antihack.eye_penalty                 violation penalty to hand out when eye hack is detected (0)
antihack.debuglevel                  0 = silent, 1 = print max violation, 2 = print every violation (1)
batching.colliders                   *EXPERIMENTAL* Rust batches colliders to get around the maximum collider limit. To improve server performance you can unbatch (batching.colliders 0) colliders until they reach 250k. (True)
batching.collider_vertices           no description (10000)
batching.collider_submeshes          no description (1)
batching.verbose                     no description (0)
chat.enabled                         Enable or disable chat displaying (True)
chat.serverlog                       Enable or disable chat logging (True)
construct.frameminutes               How many minutes before a placed frame gets destroyed (30)
craft.instant                        Enable or disable instant crafting (False)
debug.checktriggers                  Debug triggers (False)
decay.tick                           Larger amount increases the applied decay damage to entity. (600)
decay.scale                          1 = normal decay, 0,5 = 50%, 0 = turn decay off (1)
decay.debug                          Debugmode (False)
env.time                             Shows in-game time. If value declared, will change the server time (values: 0 - 24)
env.day                              Displays the day of the month. Pointless to change this value (12)
env.month                            Displays the month. Pointless to change this value (6)
env.year                             Displays the year. Pointless to change this value (2024)
fps.limit                            The maximum number of frames to render per second (256)
gc.interval                          Changes the interval between garbage collects. (-1)
heli.lifetimeminutes                 The amount of time the helicopter is allowed to stay in minutes. (15)
heli.guns                            Enables / disables the helicopters minigun. If set to 0, the helicopter will shoot rockets only. (1)
heli.bulletdamagescale               Changes the bullet damage of the helicopter. Higher value = more damage (1)
heli.bulletaccuracy                  Changes the accuracy of the bullets. Higher value = less accuracy (2)
net.visdebug                         Turns on debug display of network visibility (False)
physics.droppedmode                  The physics mode that dropped items and corpses should use. good, tempgood or fast. fast + tempgood might cause objects to fall through other objects. (good)
physics.sendeffects                  Send effects to clients when physics objects collide (True)
physics.bouncethreshold              no description (2)
physics.sleepthreshold               no description (0.005)
physics.solveriterationcount         The default solver iteration count permitted for any rigid bodies (default 7). Must be positive (3)
physics.steps                        The amount of physics steps per second (16)
pool.skins                           no description (False)
sentry.targetall                     Target everyone regardless of authorization (False)
sentry.hostileduration               How long until something is considered hostile after it attacked (120)
server.ip                            Sets the IP of the server. Should be stated in the startup parameters
server.port                          Sets the IP of the server. Should be stated in the startup parameters
server.maxplayers                    Changes the maximum amount of player slots.
server.hostname                      Sets the Servername. example: server.hostname "My Rust Server"
server.identity                      Changes path to your server data. (my_server_identity)
server.level                         Sets the map of the server (Procedural Map) values: Barren, Craggy Island, Hapis, Savas Island
server.seed                          Sets the the map generation seed.
server.salt                          Prints the server.salt
server.worldsize                     Changes the map size (3000). values: 1000 - 6000. 3000 equals 9km². (3000m^2)
server.saveinterval                  Interval between the server saves the map. (300)
server.secure                        Enables / disables Valve Anti Cheat security. (True)
server.tickrate                      Changes the server tickrate. Going higher than 30 is not recommended. (30)
server.entityrate                    Tickrate. Recommended to leave it at 16. (16)
server.cycletime                     no description (500)
server.official                      Only whitelisted server by Facepunch can use this command (False)
server.globalchat                    If set to false, only people within voice range can read each others messages. (True)
server.stability                     If set to false, building blocks will have 100% stability no matter how high you build. (True)
server.radiation                     Disables / enables server radioation (True)
server.itemdespawn                   Time until an item despawn (180)
server.pve                           Enables / disables PvE mode (False)
server.description                   Command used to write a server description. Make \n to make a new line
server.headerimage                   Sets the serverbanner - picture must be 500x256
server.logoimage                     Sets the servers logo image - Image is shown in the server browser and rust+ app
server.url                           Sets the server 'Webpage'
server.branch                        no description ()
server.eac                           Enables / disables Easy Anti Cheat (1)
server.queriespersecond              no description (2000)
server.ipqueriespermin               no description (30)
server.meleedamage                   Changes the melee damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.arrowdamage                   Changes the arrow damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.bulletdamage                  Changes the bullet damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.bleedingdamage                Changes the bleeding damage in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.meleearmor                    Changes the scale of protection against melee damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.arrowarmor                    Changes the scale of protection against arrow damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.bulletarmor                   Changes the scale of protection against bullet damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.bleedingarmor                 Changes the scale of protection against bleeding damage from clothing and armor in percent - 1 = 100, 0.5 = 50%, 0 = 0% (1)
server.updatebatch                   How many entity updates should we send per loop. Setting this > 1000 might cause lag when a player first joins your server. (128)
server.planttick                     Plants tick every x seconds. This is how many seconds between ticks. (60)
server.planttickscale                Setting this to 2 will make plants grow, fruit and die two times faster than normal. (1)
server.respawnresetrange             Distance from sleeping bag to reset other sleeping bags/beds. (50)
server.maxunack                      Max amount of unacknowledged messages before we assume we're congested (4)
server.maxflood                      Max amount of ticks to receive per second before we assume a client is flooding us (1000)
server.netcache                      Use network caching (True)
server.netcachesize                  Informational, the size of the network cache (in bytes) (2214666)
server.savecachesize                 Informational, the size of the save cache (in bytes) (2264944)
server.combatlogsize                 The size of the combat log (100)
server.idlekick                      Number of minutes until idle players are kicked (30)
server.idlekickmode                  0 = no idle kick, 1 = kick if server full, 2 = always kick (1)
server.idlekickadmins                1 = admins can get idle kicked (0)
server.maxreceivetime                no description (20)
server.compression                   no description (False)
server.netlog                        no description (False)
spawn.min_rate                       no description (0,2)
spawn.max_rate                       no description (2)
spawn.min_density                    no description (0,2)
spawn.max_density                    no description (2)
stability.verbose                    no description (0)
stability.strikes                    no description (10)
stability.collapse                   no description (0.05)
stability.accuracy                   no description (0.001)
time.fixeddelta                      Fixed delta time in seconds (0.0625)
time.maxdelta                        The minimum amount of times to tick per frame (0.33)
vis.damage                           Turns on debug display of damages (False)
vis.attack                           Turns on debug display of attacks (False)
vis.protection                       Turns on debug display of protection (False)
vis.weakspots                        Turns on debug display of weakspots (False)
vis.triggers                         Show trigger entries (False)
vis.hitboxes                         Turns on debug display of hitboxes (False)
vis.lineofsight                      Turns on debug display of line of sight checks (False)
xmas.enabled                         no description (True)
xmas.spawnrange                      no description (50)
xmas.giftsperplayer                  no description (2)
rcon.print                           If true, rcon commands etc will be printed in the console (False)
find                                 Search for a command
status                               Print out currently connected clients
stats                                Print out stats of currently connected clients
kick                                 Kicks a player from the server. usage: kick {playername} {reason} example: kick Frank "stop crying"
kickall                              Kicks everyone from the server.
ban                                  Permanently bans a player from the server. usage: ban {playername} {reason} example: ban Frank "stop crying"
moderatorid                          ( void ) no description
ownerid                              ( void ) no description
removemoderator                      ( void ) no description
removeowner                          ( void ) no description
banid                                ( void ) no description
unban                                ( void ) no description
players                              Print out currently connected clients etc
say                                  Sends a message in chat
users                                Show user info for players on server.
banlist                              List of banned users (sourceds compat)
banlistex                            List of banned users - shows reasons and usernames
listid                               List of banned users, by ID (sourceds compat)
mutevoice                            no description
unmutevoice                          no description
mutechat                             no description
unmutechat                           no description
playerlist                           Get a list of players
bans                                 List of banned users
serverinfo                           Get a list of information about the server
batching.refresh_colliders           no description
batching.status                      no description
chat.tail                            Return the last x lines of the console. Default is 200
chat.search                          Search the console for a particular string
console.tail                         Return the last x lines of the console. Default is 200
console.search                       Search the console for a particular string
data.export                          no description
flushgroup                           Takes you in and out of your current network group, causing you to delete and then download all entities in your PVS again
breakheld                            Break the current held object
breakitem                            Break all the items in your inventory whose name match the passed string
hurt                                 Damage yourself
entity.debug_toggle                  no description
entity.nudge                         no description
entity.create                        Create entities, you must be playing in the server, use F1 to open console. Example entity list: http://text-share.com/view/43244684
env.addtime                          Add (in hours) time to spawn choppers / airdrops without changing the server in-game time
gc.collect                           no description
gc.unload                            no description
global.restart                       Restart the server - with x seconds warning. If no seconds given, server restarts after 5 minutes. (300 seconds)
global.quit                          Stops the server and closes the command prompt.
global.report                        no description
global.objects                       no description
global.textures                      no description
global.colliders                     no description
global.error                         no description
global.queue                         no description
global.sleep                         no description
global.injure                        no description
global.spectate                      no description
global.teleport                      no description
global.teleport2me                   no description
global.teleportany                   no description
global.teleportpos                   no description
global.cleanup                       no description
global.version                       no description
global.sysinfo                       no description
global.breakitem                     no description
heli.drop                            Spawns a helicopter at a specific players posititon (heli.drop <steamid 64 bit, steam name>)
heli.calltome                        Forces a helicopter to spawn off map and fly to your position
heli.call                            Calls in a helicopter to roam the map like normal
heli.strafe                          Forces helicopter to target a specific player (heli.strafe <steamid 64 bit, steam name>)
hierarchy.ls                         no description
hierarchy.cd                         no description
hierarchy.del                        no description
inventory.give                       no description
inventory.giveall                    no description
inventory.giveto                     no description
inventory.giveid                     no description
inventory.givearm                    no description
pool.print_memory                    no description
pool.print_prefabs                   no description
pool.print_assets                    no description
pool.clear_memory                    no description
pool.clear_prefabs                   no description
pool.clear_assets                    no description
server.stop                          Stops the server
server.backup                        Backup server folder
server.writecfg                      Writes config files
server.fps                           Prints current server fps
server.save                          Force save the current game
server.readcfg                       no description
spawn.fill_populations               no description
spawn.fill_groups                    no description
spawn.report                         Prints some information about entities already spawned on the server
weather.clouds                       no description
weather.fog                          no description
weather.wind                         no description
weather.rain                         Modify rain intensity, values between 0-100 (auto)
xmas.refill                          no description
global.dump                          no description

Ban list

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

Cross Platform Resources

AMP [Commercial Software]

AMP (Application Management Panel) is a simple to use and easy to install control panel and management system for hosting game servers. It runs on both Windows and Linux and requires no command line knowledge to get started. Everything is managed via its web interface. Most of Rust's settings are accessible via AMPs friendly web interface so you don't have to mess around with configuration files or command line flags (Unless you want to, it won't stop you if you need to do anything custom!)

Setting up Rust via AMP

Features

  • Simple, automated installer that requires very little admin knowledge.
  • Responsive interface to access your servers from your mobile device.
  • Friendly, straightforward web interface with a built in tutorial to help you get started.
  • Live console and player lists to interact with your server and players.
  • Advanced scheduler to automate tasks such as backups, broadcast messages, restarts or wipes.
  • S3 Support for offloading backups and cloud storage.
  • Event-driven scheduler which can respond to in-game events. For example, sending a discord message when someone joins the server.
  • Automated installation and updates with the click of a button.
  • High level of security, supporting Authenticator apps, as well as fingerprint scanners and other security devices.
  • Built in SFTP server and web-based file manager to easily manage files and configurations.
  • CPU and RAM resource limit controls via Docker (optional)
  • Automatic firewall management (optional)

OS Support

  • Windows 10/Server 2016 or Newer (64-bit only)
  • Debian 10/CentOS 8/Rocky 8 or Newer (64-bit only)
  • Most other modern Debian/RHEL/Arch Linux distributions

Links

Main Site: https://cubecoders.com/AMP Support: https://support.cubecoders.com/

GameAP

GameAP is open-source game servers management panel. Easy to install and use. The panel offers comprehensive support for servers running the Rust game, encompassing management of players.

Setting up Rust via GameAP

Features

  • Start/Stop/Restart server
  • Install, Update game server (SteamCMD and repositories)
  • Console, Player management (kick, ban, messages)
  • File management
  • Tasks scheduler

OS Support

  • Windows 10/Server 2016 or Newer (x86, AMD64, ARM)
  • Debian 10/Ubuntu 18/CentOS 8/Rocky 8 or Newer
  • Most other modern Debian/RHEL/Arch Linux distributions

Links

Main Site: https://gameap.com

Documentation: https://docs.gameap.com/en/tutorials/rust.html

GitHub: https://github.com/gameap

Linux Scripts Resources

LinuxGSM Rust Server

Linux Game Server Managers

LinuxGSM is the command line tool for quick, simple deployment and management of dedicated game server, using SteamCMD.

Features

  • Backup
  • Console
  • Details
  • Installer (SteamCMD)
  • Monitor
  • Alerts (Email, Pushbullet)
  • Update (SteamCMD)
  • Start/Stop/Restart server

Supported Servers

There are now 70+ different game servers supported and rising. For a full list visit the website.

Links

Website: https://linuxgsm.com/lgsm/rustserver/

GitHub Repo: https://github.com/GameServerManagers/LinuxGSM

Windows Resources

Rust Server Manager [PAID]

Rsmfmx.png

Rust Server Manager is a premium tool to help you create and manage your dedicated Rust Servers. It provides you with all the tools that you need to set up and manage your rust server.

Features

  • Graphical Config Editor with more server options.
  • Server Installer (Multi Branch support).
  • Server Updater (Update your server manually or automatically).
  • Server Verify (Verify your server files if you think something is missing).
  • Wipe Manager (Wipe your server along with the chosen data to wipe).
  • uMod / Oxide support.
  • Full uMod / Oxide Control (Config editor, plugin editor, plugin config editor).
  • Plugin Updater.
  • Joining List - Get and manage a list of player joining your server.
  • Queued List - Get and manage players in queue to join your server.
  • Player Manager - Manage online and offline players
  • The list of features are too long to add here but there is a (probably outdated) list on the website: https://rustservermanager.com/

Compatible With:

  • Windows 10, 8.1, 8 and 7.
  • Windows Server 2016, 2012 and 2008. (2008 untested)

Buy Here: https://rustservermanager.com/

Other

Facepunch's online rcon client