<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://legacy.stationeers-wiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=JacksonTheMaster</id>
		<title>Unofficial Stationeers Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://legacy.stationeers-wiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=JacksonTheMaster"/>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/Special:Contributions/JacksonTheMaster"/>
		<updated>2026-04-27T22:28:39Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25876</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25876"/>
				<updated>2026-03-13T01:14:26Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: #ffcccc; border: 3px solid #cc0000; color: #000000; padding: 15px; margin: 10px 0; text-align: center; font-weight: bold; font-size: 120%;&amp;quot;&amp;gt;&lt;br /&gt;
=='''The wiki has moved!'''==&lt;br /&gt;
&lt;br /&gt;
===  &amp;lt;big&amp;gt;'''Visit the new wiki at stationeers-wiki.com The old wiki here at legacy.stationeers-wiki.com will sunset eventually. '''&amp;lt;/big&amp;gt;=== &lt;br /&gt;
&lt;br /&gt;
'''Edits made after the 7th of March 6PM EST were NOT carried over to the new server as previously announced right here in this box.''' &lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25875</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25875"/>
				<updated>2026-03-13T01:13:45Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: #ffcccc; border: 3px solid #cc0000; color: #000000; padding: 15px; margin: 10px 0; text-align: center; font-weight: bold; font-size: 120%;&amp;quot;&amp;gt;&lt;br /&gt;
'''The wiki has moved!'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Visit the new wiki at stationeers-wiki.com The old wiki here at legacy.stationeers-wiki.com will sunset eventually. '''&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== '''Edits made after the 7th of March 6PM EST were NOT carried over to the new server as previously announced right here in this box.''' ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25874</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25874"/>
				<updated>2026-03-12T19:54:19Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: #ffcccc; border: 3px solid #cc0000; color: #000000; padding: 15px; margin: 10px 0; text-align: center; font-weight: bold; font-size: 120%;&amp;quot;&amp;gt;&lt;br /&gt;
'''The wiki is moving!'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Your requests are temporarily routed through the new infrastructure but hit the old wiki on legacy.stationeers-wiki.com. '''&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Turns out the bots really love Stationeers data - my infra is getting hammered, so I'm fighting them off while finishing the move. &amp;lt;big&amp;gt;&amp;lt;b&amp;gt; New improved wiki coming to stationeers-wiki.com within the next 6 hours.&amp;lt;/b&amp;gt;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== '''Edits made after the 7th of March 6PM EST were NOT carried over to the new server as previously announced right here in this box.''' ===&lt;br /&gt;
Sorry for the delay, Hang tight! - ''Jackson''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25873</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25873"/>
				<updated>2026-03-12T14:51:55Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: #ffcccc; border: 3px solid #cc0000; color: #000000; padding: 15px; margin: 10px 0; text-align: center; font-weight: bold; font-size: 120%;&amp;quot;&amp;gt;&lt;br /&gt;
'''The wiki is moving!'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''The migration is happening RIGHT NOW'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Your requests are temporarily routed through the new infrastructure but hit the old wiki on legacy.stationeers-wiki.com. The new wiki will be live in approximately 1 hour.'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Edits made after the 7th of March 6PM EST (from now onwards) will '''not''' be carried over to the new server - the move is happening right now.&lt;br /&gt;
The new (and improved!) wiki will be live soon™ right here on stationeers-wiki.com.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25862</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25862"/>
				<updated>2026-03-07T23:34:37Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: #ffcccc; border: 3px solid #cc0000; color: #000000; padding: 15px; margin: 10px 0; text-align: center; font-weight: bold; font-size: 120%;&amp;quot;&amp;gt;&lt;br /&gt;
'''The wiki is moving!'''&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Edits made after the 7th of March 6PM EST (from now onwards) will '''not''' be carried over to the new server - the move is happening right now.&lt;br /&gt;
The new (and improved!) wiki will be live soon™ right here on stationeers-wiki.com.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25861</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=MediaWiki:Sitenotice&amp;diff=25861"/>
				<updated>2026-03-07T23:33:17Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Created page with &amp;quot;&amp;lt;div style=&amp;quot;background-color: #ffcccc; border: 3px solid #cc0000; color: #000000; padding: 15px; margin: 10px 0; text-align: center; font-weight: bold; font-size: 120%;&amp;quot;&amp;gt; '''T...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: #ffcccc; border: 3px solid #cc0000; color: #000000; padding: 15px; margin: 10px 0; text-align: center; font-weight: bold; font-size: 120%;&amp;quot;&amp;gt;&lt;br /&gt;
'''The wiki is moving!'''&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Edits made after the 7th of March 6PM EST (from now onwards) will '''not''' be carried over to the new server - the move is happening right now.&lt;br /&gt;
The new (and improved!) wiki will be live soon™ right here on stationeers-wiki.com.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
''JacksonTheMaster''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25798</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25798"/>
				<updated>2026-02-28T12:19:57Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* ''Hosting the server on your PC while playing at the same time might lead to issues with NAT-loopback''&lt;br /&gt;
** For ''some'' reason, it was previously not recommended running a Stationeers client &amp;amp; server on the same machine. During the last 2 years, the author of this page has not seen any issues with that. In reality, it ''should be fine™''. &lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
* 6-8 CPU cores. The server will run with less, but it is strongly recommended to give it at least 6 cores due to the load caused by atmospheric calculations.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI/wiki/Installation Getting started with StationeersServerUI]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Pterodactyl egg] by [https://github.com/BadDucky52 BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers--bep-in-ex.json Pterodactyl egg with bepinex] by [https://github.com/BadDucky52 BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-Stationeers-ServerUI.json Pterodactyl egg (some issues reported, inop currently) ] with [https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] by [https://github.com/BadDucky52 BadDucky52] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
&lt;br /&gt;
==== Windows ====&lt;br /&gt;
&amp;lt;big&amp;gt;You '''must''' install the Microsoft Visual C++ runtime listed below to run the Server successfully. &amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
&amp;lt;big&amp;gt;Attention: The current Build requires a '''very recent Linux OS''' (if using Linux) due to the Glibc dependency listed below.&amp;lt;/big&amp;gt;&lt;br /&gt;
* '''Glibc 2.40 or above''': Debian '''Trixie''' (13) ''recommended'', (Ubuntu '''25'''.04, 25.10 (and above), anything with Glibc 2.40 and above (check with &amp;lt;code&amp;gt;ldd --version&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
'''Stationeers now (Jan 2026) now uses an optimized new version of RakNet (Networking protocol) to manage network connections and connectivity. You require an up-to-date, recent OS to run the Server successfully.'''&lt;br /&gt;
&lt;br /&gt;
===== Unsupported (non-functional) Linux Versions due to outdated glibc: =====&lt;br /&gt;
&lt;br /&gt;
* Debian 12 (Bookworm, stable): glibc 2.36&lt;br /&gt;
* Debian 11 (Bullseye, oldstable/previous stable) and below: glibc 2.31 (Debian 11) or even older (e.g., 2.28 in Debian 10)&lt;br /&gt;
* Ubuntu 22.04 LTS (Jammy Jellyfish) and below: glibc 2.35 (22.04) or older (e.g., 2.31 in 20.04)&lt;br /&gt;
* RHEL 9 clones (Rocky Linux 9, AlmaLinux 9, CentOS 9: All current stable releases use: glibc 2.34&lt;br /&gt;
&lt;br /&gt;
==== Might work, uncertain status (broken for some, working for some players) =====&lt;br /&gt;
• **Ubuntu 24.04 LTS** Noble Numbat → glibc 2.39  &lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (verified January 2026) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code&amp;gt;fg&amp;lt;/code&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25653</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25653"/>
				<updated>2026-01-29T23:34:29Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* ''Hosting the server on your PC while playing at the same time might lead to issues with NAT-loopback''&lt;br /&gt;
** For ''some'' reason, it was previously not recommended running a Stationeers client &amp;amp; server on the same machine. During the last 2 years, the author of this page has not seen any issues with that. In reality, it ''should be fine™''. &lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
* 6-8 CPU cores. The server will run with less, but it is strongly recommended to give it at least 6 cores due to the load caused by atmospheric calculations.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI/wiki/Installation Getting started with StationeersServerUI]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additional-settings-without-user-pass.json Pterodactyl egg] by [https://github.com/BadDucky52 BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-Stationeers-ServerUI.json Pterodactyl egg ] with [https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] by [https://github.com/BadDucky52 BadDucky52] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
&lt;br /&gt;
==== Windows ====&lt;br /&gt;
&amp;lt;big&amp;gt;You '''must''' install the Microsoft Visual C++ runtime listed below to run the Server successfully. &amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
&amp;lt;big&amp;gt;Attention: The current Build requires a '''very recent Linux OS''' (if using Linux) due to the Glibc dependency listed below.&amp;lt;/big&amp;gt;&lt;br /&gt;
* '''Glibc 2.40 or above''': Debian '''Trixie''' (13) ''recommended'', (Ubuntu '''25'''.04, 25.10 (and above), anything with Glibc 2.40 and above (check with &amp;lt;code&amp;gt;ldd --version&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
'''Stationeers now (Jan 2026) now uses an optimized new version of RakNet (Networking protocol) to manage network connections and connectivity. You require an up-to-date, recent OS to run the Server successfully.'''&lt;br /&gt;
&lt;br /&gt;
===== Unsupported (non-functional) Linux Versions due to outdated glibc: =====&lt;br /&gt;
&lt;br /&gt;
* Debian 12 (Bookworm, stable): glibc 2.36&lt;br /&gt;
* Debian 11 (Bullseye, oldstable/previous stable) and below: glibc 2.31 (Debian 11) or even older (e.g., 2.28 in Debian 10)&lt;br /&gt;
* Ubuntu 22.04 LTS (Jammy Jellyfish) and below: glibc 2.35 (22.04) or older (e.g., 2.31 in 20.04)&lt;br /&gt;
* RHEL 9 clones (Rocky Linux 9, AlmaLinux 9, CentOS 9: All current stable releases use: glibc 2.34&lt;br /&gt;
&lt;br /&gt;
==== Might work, uncertain status (broken for some, working for some players) =====&lt;br /&gt;
• **Ubuntu 24.04 LTS** Noble Numbat → glibc 2.39  &lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (verified January 2026) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25652</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25652"/>
				<updated>2026-01-29T22:25:34Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Updated glibc dependency on linux due to RakNet update, updated World types list verified status to jan2026&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* ''Hosting the server on your PC while playing at the same time might lead to issues with NAT-loopback''&lt;br /&gt;
** For ''some'' reason, it was previously not recommended running a Stationeers client &amp;amp; server on the same machine. During the last 2 years, the author of this page has not seen any issues with that. In reality, it ''should be fine™''. &lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
* 6-8 CPU cores. The server will run with less, but it is strongly recommended to give it at least 6 cores due to the load caused by atmospheric calculations.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI/wiki/Installation Getting started with StationeersServerUI]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additional-settings-without-user-pass.json Pterodactyl egg] by [https://github.com/BadDucky52 BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-Stationeers-ServerUI.json Pterodactyl egg ] with [https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] by [https://github.com/BadDucky52 BadDucky52] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
&lt;br /&gt;
==== Windows ====&lt;br /&gt;
&amp;lt;big&amp;gt;You '''must''' install the Microsoft Visual C++ runtime listed below to run the Server successfully. &amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
&amp;lt;big&amp;gt;Attention: The current Build requires a '''very recent Linux OS''' (if using Linux) due to the Glibc dependency listed below.&amp;lt;/big&amp;gt;&lt;br /&gt;
* '''Glibc 2.41 or above''': Debian '''Trixie''' (13) ''recommended'', (Ubuntu '''25'''.04, 25.10 (and above), anything with Glibc 2.41 and above (check with &amp;lt;code&amp;gt;ldd --version&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
'''Stationeers now (Jan 2026) now uses an optimized new version of RakNet (Networking protocol) to manage network connections and connectivity. You require an up-to-date, recent OS to run the Server successfully.'''&lt;br /&gt;
&lt;br /&gt;
===== Unsupported (non-functional) Linux Versions due to outdated glibc: =====&lt;br /&gt;
&lt;br /&gt;
* Debian 12 (Bookworm, stable): glibc 2.36&lt;br /&gt;
* Debian 11 (Bullseye, oldstable/previous stable) and below: glibc 2.31 (Debian 11) or even older (e.g., 2.28 in Debian 10)&lt;br /&gt;
* Ubuntu 24.04 LTS (Noble Numbat): glibc 2.39&lt;br /&gt;
* Ubuntu 22.04 LTS (Jammy Jellyfish) and below: glibc 2.35 (22.04) or older (e.g., 2.31 in 20.04)&lt;br /&gt;
* Fedora 41 and below: glibc 2.40 / 2.39&lt;br /&gt;
* RHEL 9 clones (Rocky Linux 9, AlmaLinux 9, CentOS 9: All current stable releases use: glibc 2.34&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (verified January 2026) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25530</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25530"/>
				<updated>2026-01-16T00:39:43Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* ''Hosting the server on your PC while playing at the same time might lead to issues with NAT-loopback''&lt;br /&gt;
** For ''some'' reason, it was previously not recommended running a Stationeers client &amp;amp; server on the same machine. During the last 2 years, the author of this page has not seen any issues with that. In reality, it ''should be fine™''. &lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
* 6-8 CPU cores. The server will run with less, but it is strongly recommended to give it at least 6 cores due to the load caused by atmospheric calculations.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI/wiki/Installation Getting started with StationeersServerUI]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additional-settings-without-user-pass.json Pterodactyl egg] by [https://github.com/BadDucky52 BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-Stationeers-ServerUI.json Pterodactyl egg ] with [https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] by [https://github.com/BadDucky52 BadDucky52] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (October 2025) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25529</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25529"/>
				<updated>2026-01-16T00:35:52Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* ''Hosting the server on your PC while playing at the same time might lead to issues with NAT-loopback''&lt;br /&gt;
** For ''some'' reason, it was previously not recommended running a Stationeers client &amp;amp; server on the same machine. During the last 2 years, the author of this page has not seen any issues with that. In reality, it ''should be fine™''. &lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
* 6-8 CPU cores. The server will run with less, but it is strongly recommended to give it at least 6 cores due to the load caused by atmospheric calculations.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additional-settings-without-user-pass.json Pterodactyl egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (October 2025) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25528</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25528"/>
				<updated>2026-01-15T21:06:42Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* ''Hosting the server on your PC while playing at the same time might lead to issues with NAT-loopback''&lt;br /&gt;
** For ''some'' reason, it was previously not recommended running a Stationeers client &amp;amp; server on the same machine. During the last 2 years, the author of this page has not seen any issues with that. In reality, it ''should be fine™''. &lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
* 6-8 CPU cores. The server will run with less, but it is strongly recommended to give it at least 6 cores due to the load caused by atmospheric calculations.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Recommended&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additional-settings-without-user-pass.json Recommended Pterodactyl egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
The above egg allows pterodactyls &amp;quot;authorized managers&amp;quot; change the Server password. If unsure, use '''this''' egg.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additonal-settings-with-user-pass.json Current Pterodactyl Alternative egg by BadDucky52]&amp;lt;br&amp;gt;&lt;br /&gt;
The above egg only allows pterodactyl &amp;quot;admins&amp;quot; to change the Server password. If unsure, use the '''upper''' egg.&amp;lt;br&amp;gt;&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (October 2025) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25527</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=25527"/>
				<updated>2026-01-15T20:57:48Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Updated ptero egg links, updated Nat loopback warning line&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* ''Hosting the server on your PC while playing at the same time might lead to issues with NAT-loopback''&lt;br /&gt;
** For ''some'' reason, it was previously not recommended running a Stationeers client &amp;amp; server on the same machine. During the last 2 years, the author of this page has not seen any issues with that. In reality, it ''should be fine™''. &lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additional-settings-without-user-pass.json Current Pterodactyl Egg '''without''' connection password by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers-additonal-settings-with-user-pass.json Current Pterodactyl Egg '''with''' connection password by BadDucky52]&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (October 2025) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23846</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23846"/>
				<updated>2025-10-31T03:04:44Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Fix example command explanation texts&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (Oktober 2025) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connect via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23845</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23845"/>
				<updated>2025-10-31T03:00:03Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Added examples to start file start with Difficulty Easy, Startcondition DefaultStart and StartLocation LunarSpawnCraterVesper,&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (Oktober 2025) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt;DefaultStart&amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt;LunarSpawnCraterVesper&amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; with Difficulty &amp;lt;code&amp;gt;Easy&amp;lt;/code&amp;gt;, Startcondition &amp;lt;code&amp;gt; DefaultStart &amp;lt;/code&amp;gt; and StartLocation &amp;lt;code&amp;gt; LunarSpawnCraterVesper &amp;lt;/code&amp;gt;, saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar Easy DefaultStart LunarSpawnCraterVesper -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23803</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23803"/>
				<updated>2025-10-23T16:34:21Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Changed naming convention for Random start location + Added Default Community Starts. Each player will spawn with a lander.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (Oktober 2025) ===&lt;br /&gt;
''Note:'' RoundRobin StartLocations and Community StartConditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, DefaultStartCommunity, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaDefaultCommunity, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasDefaultCommunity, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VenusDefaultCommunity, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRoundRobin&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information here - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23790</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23790"/>
				<updated>2025-10-21T21:52:58Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (Oktober 2025) ===&lt;br /&gt;
''Note:'' Random StartLocations and Brutal Community startconditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarSpawnRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsSpawnRandom &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaSpawnRandom &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasSpawnRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanSpawnRandom &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusSpawnRandom &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23789</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23789"/>
				<updated>2025-10-21T19:35:42Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Adjusted conditions to corrected names in new build&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (Oktober 2025) ===&lt;br /&gt;
''Note:'' Random StartLocations and Brutal Community startconditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, MarsRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, EuropaRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasHerschelRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, VulcanRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23784</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23784"/>
				<updated>2025-10-21T13:02:11Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: added Random StartLocations and Brutal Community startconditions (BETA)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (Oktober 2025) ===&lt;br /&gt;
''Note:'' Random StartLocations and Brutal Community startconditions are only available on BETA at the moment.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus, LunarRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal, BrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats, Mars2Random&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal, EuropaBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley, Europa3Random&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal, MimasBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl, MimasHerschelRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach, Vulcan2Random&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal, VulcanBrutalCommunity&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal &amp;amp; '''Vulcan'''BrutalCommunity&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley, VenusRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
When selecting a start location you can pick ''&amp;lt;WorldID&amp;gt;Random'' to have each new player spawn in a randomly selected location on the map. This is designed to be used with the &amp;lt;WorldID&amp;gt;BrutalCommunity StartCondition which spawns each new player with a brutal start crate.&lt;br /&gt;
&lt;br /&gt;
Tutorial Maps&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID &lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Kit_(Satellite_Dish)&amp;diff=23689</id>
		<title>Kit (Satellite Dish)</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Kit_(Satellite_Dish)&amp;diff=23689"/>
				<updated>2025-10-10T18:31:10Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Machines]]&lt;br /&gt;
[[Category:Items]]&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Kit (Satellite Dish)&lt;br /&gt;
 | stacks      = 10&lt;br /&gt;
 | image       = [[File:ItemKitSatelliteDish.png]]&lt;br /&gt;
 | createdwith = [[Electronics Printer]]&lt;br /&gt;
 | cost        = 5g [[Gold]], 10g [[Copper]], 20g [[Steel]], 5g [[Nickel]], 10g [[Solder]]&lt;br /&gt;
}}&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Medium Satellite Dish&lt;br /&gt;
 | image            = [[File:StructureSatelliteDish.png]]&lt;br /&gt;
 | power_usage      = 200W&lt;br /&gt;
 | placed_with_item = [[Satellite Dish|Kit (Satellite Dish)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
 | item_rec1        = [[Satellite Dish|Kit (Satellite Dish)]]&lt;br /&gt;
}}&lt;br /&gt;
==Description==&lt;br /&gt;
The Satellite Dish is used together with a [[Computer]] fitted with a [[Motherboard (Communications)]] to allow Interstellar Communications.&lt;br /&gt;
&lt;br /&gt;
The Satellite Dish must be guided by [[Satellite Tracking]] onto a signal and communications may be established once the signal strength is greater than 94%&lt;br /&gt;
&lt;br /&gt;
'''Important''': The Dish must not be obstructed, it needs direct line of sight and will be blocked by any obstacle.&lt;br /&gt;
&lt;br /&gt;
== Medium Satellite Dish ==&lt;br /&gt;
=== Data Network Properties ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-datanetworkproperties&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;data network properties&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-datanetworkproperties&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Kit_(Satellite_Dish)/Data_Network}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Stack Usage ==&lt;br /&gt;
After &amp;quot;Big Changes Coming: Terrain Preview, Melting Ice, Modding, &amp;amp; Localization&amp;quot; update, Medium Satellite Dish has internal stack like Autolathe, which user can utilize it to give instructions to.&lt;br /&gt;
The Medium Satellite Dish currently have 256Bytes(32 Addresses) stack memory.&lt;br /&gt;
&lt;br /&gt;
Pro tips:&lt;br /&gt;
* Everyday there will be only 3 vessels, one for each shuttle tier.&lt;br /&gt;
* Everyday the 3 vessels will be refreshed, the algorithm for which type of vessel to appear is random, but strictly 1 for each tier.&lt;br /&gt;
* It's best to use 500 watts if you are using medium satellite dish to scan, 500 watts is just large enough for the FAR tier to appear on the radar, but small enough for it's signal being masked by lower tier shuttles.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color: red&amp;quot;&amp;gt;&lt;br /&gt;
Warning:&lt;br /&gt;
Internally every tick the stack data will be cleared and regenerated,&lt;br /&gt;
so don't OVERWRITE any TraderInstruction.Write* instructions when setting the WRITE_INDEX and WRITE_COUNT.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width:50%;&amp;quot;&lt;br /&gt;
! Op_code&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Name&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Description&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Valid Address&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Bits&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Bits Description&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 1&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.WriteTraderData&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | The dish will write out metadata(24 Bytes, in continuous of 3 addresses) to the specified starting index. E.g.: if set WRITE_INDEX to 1, then the metadata will span address 1-3. See [[#Metadata_Payloads|Metadata Payload]]s.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| WRITE_INDEX&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 2&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.StrongestContactIdHash&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderData payload segment 1.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| TRADER_ID_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;5&amp;quot; | 3&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; | TraderInstruction.StrongestContactMetaData&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderData payload segment 2.&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| [[#Metadata_Payloads|SHUTTLE_TYPE]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-23&lt;br /&gt;
| [[#Metadata_Payloads|CONTACT_TIER]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-31&lt;br /&gt;
| [[#Metadata_Payloads|CONTACTED]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 4&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.StrongestContactSignalData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderData payload segment 3.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-23&lt;br /&gt;
| WATTS_TO_RESOLVE&amp;lt;br/&amp;gt;See [[Trader#Trader_Tier |WattsToResolve]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-39&lt;br /&gt;
| LIFETIME&amp;lt;br/&amp;gt;See [[Trader#Trader_Tier|LifeTime]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 5&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.WriteTraderBuyData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | The dish will write out trader buy metadatas from the starting address WRITE_INDEX, and write WRITE_COUNT continuous addresses total.&amp;lt;br/&amp;gt;If an item contains child items, then it will be expaned inplace.&amp;lt;br/&amp;gt;E.g.: &amp;lt;BuyPayload&amp;gt;&amp;lt;BuyPayload&amp;gt;&amp;lt;BuyChildPayload&amp;gt;&amp;lt;BuyPayload&amp;gt;.&amp;lt;br/&amp;gt;See [[#Buy.2FSell_Payloads|Buy/Sell Payloads]], [[#Buy.2FSell_Child_Payloads|Buy/Sell Child Payloads]].&amp;lt;br/&amp;gt;WRITE_COUNT=0 means WRITE_COUNT=1.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| WRITE_INDEX&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-23&lt;br /&gt;
| WRITE_COUNT&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 6&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.WriteTraderSellData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | The dish will write out trader sell metadatas from the starting address WRITE_INDEX, and write WRITE_COUNT continuous addresses total.&amp;lt;br/&amp;gt;If an item contains child items, then it will be expaned inplace.&amp;lt;br/&amp;gt;E.g.: &amp;lt;SellPayload&amp;gt;&amp;lt;SellPayload&amp;gt;&amp;lt;SellChildPayload&amp;gt;&amp;lt;SellPayload&amp;gt;.&amp;lt;br/&amp;gt;See [[#Buy.2FSell_Payloads |Buy/Sell Payloads]], [[#Buy.2FSell_Child_Payloads|Buy/Sell Child Payloads]].&amp;lt;br/&amp;gt;WRITE_COUNT=0 means WRITE_COUNT=1.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| WRITE_INDEX&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-23&lt;br /&gt;
| WRITE_COUNT&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 7&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderBuyThingData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 8&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderBuyThingChildData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 9&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderBuyGasData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| GAS_TYPES_BITFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 10&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderSellThingData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 11&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderSellGasData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| GAS_TYPES_BIGFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 12&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderSellThingChildData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 13&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterPrefabHashEquals&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching PrefabHash.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 14&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterPrefabHashNotEquals&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only not matching PrefabHash.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 15&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.FilterSortingClassCompare&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching SortingClass.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| CONDITION_OPERATION&amp;lt;br/&amp;gt;0: Equals&amp;lt;br/&amp;gt;1: Greater&amp;lt;br/&amp;gt;2: Less&amp;lt;br/&amp;gt;3: Not Equals&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-31&lt;br /&gt;
| SORTING_CLASS&amp;lt;br/&amp;gt;See [[Sorting_Class]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 16&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.FilterQuantityCompare&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching Quantity Condition.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| CONDITION_OPERATION&amp;lt;br/&amp;gt;0: Equals&amp;lt;br/&amp;gt;1: Greater&amp;lt;br/&amp;gt;2: Less&amp;lt;br/&amp;gt;3: Not Equals&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-31&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 17&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterGasContains&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching Gases.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| GAS_TYPES_BITFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 18&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterGasNotContains&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only not matching Gases.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| GAS_TYPES_BITFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Metadata Payloads ===&lt;br /&gt;
&lt;br /&gt;
Since Metadata has 3 addresses, so it's referenced here as a 24 bytes(192 bits) payload.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:80%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-40&lt;br /&gt;
| 39-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Segment 1&lt;br /&gt;
| All bits value in this section is the deplicate of bit 39.&lt;br /&gt;
| [[Trader#ContactTypeID|ContactTypeID]]&lt;br /&gt;
| OpCode of TraderInstruction.StrongestContactIdHash.&lt;br /&gt;
|-&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-32&lt;br /&gt;
| 31-24&lt;br /&gt;
| 23-16&lt;br /&gt;
| 15-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Segment 2&lt;br /&gt;
| All bits 0.&lt;br /&gt;
| Contacted&amp;lt;br/&amp;gt;0: false&amp;lt;br/&amp;gt; 1: true&lt;br /&gt;
| Contact Tier: &amp;lt;br/&amp;gt;0: Close&amp;lt;br/&amp;gt;1: Medium&amp;lt;br/&amp;gt;2: Far&lt;br /&gt;
| Shuttle Type: &amp;lt;br/&amp;gt;0:None&amp;lt;br/&amp;gt;1: Small(3x3)&amp;lt;br/&amp;gt;2: SmallGas(3x3)&amp;lt;br/&amp;gt;3: Medium(5x5)&amp;lt;br/&amp;gt;4: MediumGas(5x5)&amp;lt;br/&amp;gt;5: Large(6x6)&amp;lt;br/&amp;gt;6: LargeGas(6x6)&amp;lt;br/&amp;gt;7: MediumPlane(7x7, runway:15)&amp;lt;br/&amp;gt;8: LargePlane(9x9, runway:20)&lt;br /&gt;
| OpCode of TraderInstruction.StrongestContactMetaData.&lt;br /&gt;
|-&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-40&lt;br /&gt;
| 39-24&lt;br /&gt;
| 23-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Segment 3&lt;br /&gt;
| ALl bits 0.&lt;br /&gt;
| [[Trader#Trader_Tier|LifeTime]]&lt;br /&gt;
| [[Trader#Trader_Tier|WattsToResolve]]&lt;br /&gt;
| OpCode of TraderInstruction.StrongestContactSignalData.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Buy/Sell Payloads ===&lt;br /&gt;
&lt;br /&gt;
Buy/Sell Payloads are 1 address each, so it's referenced here as a 8 bytes(64 bit) payload.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:60%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-48&lt;br /&gt;
| 47-16&lt;br /&gt;
| 15-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Contents&lt;br /&gt;
| Every bit's value is the same as bit 47.&lt;br /&gt;
| PrefabHash/GasTypeBitFlag&lt;br /&gt;
| Quantity&amp;lt;br/&amp;gt;This value is truncated so it won't be greater than 255 although the trader's Request/Stock is more than 255.&lt;br /&gt;
| OpCode&amp;lt;br/&amp;gt;Data type represented as OpCode, one of the OpCode 7, 9, 10, 11.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Buy/Sell Child Payloads ===&lt;br /&gt;
&lt;br /&gt;
Buy/Sell Payloads are 1 address each, so it's referenced here as a 8 bytes(64 bit) payload.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:60%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-48&lt;br /&gt;
| 47-16&lt;br /&gt;
| 15-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Contents&lt;br /&gt;
| Every bit's value is the same as bit 47.&lt;br /&gt;
| PrefabHash/GasTypeBitFlag&lt;br /&gt;
| ChildCount&amp;lt;br/&amp;gt;Counts how many instances of this item appeared as a child item.&amp;lt;br/&amp;gt;Beware it's not quantity, it's just a prefab type count.&lt;br /&gt;
| OpCode&amp;lt;br/&amp;gt;If this data is requested by TraderInstruction.WriteTraderBuyData, then it's value is the OpCode of TraderInstruction.TraderBuyThingChildData.&amp;lt;br/&amp;gt;If this data is requested by TraderInstruction.WriteTraderSellData, then it's value is the OpCode of TraderInstruction.TraderSellThingChildData.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Gas Type BitFlags ===&lt;br /&gt;
&lt;br /&gt;
If the BitFlag equals 0, it's undefined. If the bit at specific offset is 1, it means the gas contains that component.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:60%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 16&lt;br /&gt;
| 15&lt;br /&gt;
| 14&lt;br /&gt;
| 13&lt;br /&gt;
| 12&lt;br /&gt;
| 11&lt;br /&gt;
| 10&lt;br /&gt;
| 9&lt;br /&gt;
| 8&lt;br /&gt;
| 7&lt;br /&gt;
| 6&lt;br /&gt;
| 5&lt;br /&gt;
| 4&lt;br /&gt;
| 3&lt;br /&gt;
| 2&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! Contents&lt;br /&gt;
| PollutedWater&lt;br /&gt;
| LiquidHydrogen&lt;br /&gt;
| Hydrogen&lt;br /&gt;
| LiquidNitrousOxide&lt;br /&gt;
| LiquidPollutant&lt;br /&gt;
| LiquidCarbonDioxide&lt;br /&gt;
| Steam&lt;br /&gt;
| LiquidVolatiles&lt;br /&gt;
| LiquidOxygen&lt;br /&gt;
| LiquidNitrogen&lt;br /&gt;
| NitrousOxide&lt;br /&gt;
| Water&lt;br /&gt;
| Pollutant&lt;br /&gt;
| Volatiles&lt;br /&gt;
| CarbonDioxide&lt;br /&gt;
| Nitrogen&lt;br /&gt;
| Oxygen&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Special Gas:&lt;br /&gt;
# Bit 0,1 both set to 1, which is Air.&lt;br /&gt;
# Bit 0,3 both set to 1, which is Fuel.&lt;br /&gt;
&lt;br /&gt;
==Stack Programming Reference Implementation==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color: red&amp;quot;&amp;gt;&lt;br /&gt;
Warning:&lt;br /&gt;
The following code is a reference implementation, it only serve the purpose to&lt;br /&gt;
assist you to observe the possibility and help you write your own code.&lt;br /&gt;
You must write your own code to fully enjoy the game.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Shuttle Cargoes Looking Glasses ===&lt;br /&gt;
&lt;br /&gt;
The Looking Glasses are purely for cargo inspection, no filter, no auto negotiate and call-down.&lt;br /&gt;
&lt;br /&gt;
Materials to prepare:&lt;br /&gt;
* A Medium Satellite Dish.&lt;br /&gt;
* Any number of [[Kit_(Logic_Memory)|Logic Memories]] for '''Prefab''' [[Console|Console]] display (if there are more Prefabs to display than your number of [[Kit_(Logic_Memory)|Logic Memories]], they will be ignored).&lt;br /&gt;
* Corresponding number of [[Circuitboard|Hash Displays]] and [[Console|Consoles]].&lt;br /&gt;
* Any number of [[Kit_(Logic_Memory)|Logic Memories]] for '''Gas''' [[Console|Console]] display, (if there are more GasLiquid to display than your number of [[Kit_(Logic_Memory)|Logic Memories]], they will be ignored).&lt;br /&gt;
* Corresponding number of [[Circuitboard|Hash Displays]] and [[Console|Consoles]].&lt;br /&gt;
* 1 [[Kit_(Switch)#Switch|Logic Switch]] for switch trader's sell/buy data.&lt;br /&gt;
* 6 [[Console|Console]] for Small LED installation (all will show metadata).&lt;br /&gt;
* 1 [[Kit_(IC_Housing)|Kit (IC Housing)]] and 1 [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]].&lt;br /&gt;
&lt;br /&gt;
Installation:&lt;br /&gt;
* Install all of the [[Kit_(Logic_Memory)|Logic Memories]].&lt;br /&gt;
* Install corresponding '''Prefab''' [[Console|Consoles]], insert [[Circuitboard|Hash Displays]], and make sure the [[Circuitboard|Hash Displays]] are set to '''Prefab''' display mode: &amp;lt;code&amp;gt;Mode=0&amp;lt;/code&amp;gt;&lt;br /&gt;
* Install corresponding '''Gas''' [[Console|Consoles]], insert [[Circuitboard|Hash Displays]], and make sure the [[Circuitboard|Hash Displays]] are set to '''GasLiquid''' display mode: &amp;lt;code&amp;gt;Mode=1&amp;lt;/code&amp;gt;&lt;br /&gt;
{{ICCode|&lt;br /&gt;
# example for setup GasLiquid mode&lt;br /&gt;
ss d0 0 Mode 1 # d0 is console pin&lt;br /&gt;
# or configure all the Consoles in the IcHousing's subnetwork&lt;br /&gt;
sbs StructureConsole 0 Mode 1&lt;br /&gt;
}}&lt;br /&gt;
* Naming each [[Kit_(Logic_Memory)|Logic Memory]] sequentially for two display types, for example: &amp;lt;code&amp;gt;SLMP1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SLMP2&amp;lt;/code&amp;gt; for '''Prefab''' display, and &amp;lt;code&amp;gt;SLMG1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SLMG2&amp;lt;/code&amp;gt; for '''GasLiquid''' display.&lt;br /&gt;
* Manually configure all [[Console|Consoles]] to link to their corresponding [[Kit_(Logic_Memory)|Logic Memories]] with [[Data_Disk|Data Disk]].&lt;br /&gt;
* Install 1 [[Kit_(Switch)#Switch|Logic Switch]] for switch trader's sell/buy data, &amp;lt;code&amp;gt;Open&amp;lt;/code&amp;gt; shows trader's Buy data, &amp;lt;code&amp;gt;Close&amp;lt;/code&amp;gt; shows trader's Sell data. Label it &amp;lt;code&amp;gt;TRADER_SELL_BUY_SWITCH&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Install 1 [[Kit_(IC_Housing)|Kit (IC Housing)]] in the same subnetwork and label it &amp;lt;code&amp;gt;Cargo LG IC Housing&amp;lt;/code&amp;gt;, insert a [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]].&lt;br /&gt;
* Install 6 LED and labeling them: &amp;lt;code&amp;gt;LED_SIGID&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_CON_TYPE_ID&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_TIER&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_SHUTTLE_TYPE&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_WATT_TO_RESOLVE&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_CONTACTED&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Reference Implementation:&lt;br /&gt;
&lt;br /&gt;
Next are the code snippets for a setup of 20 '''Prefab''' Console and 11 '''GasLiquid''' Console looking glass.&lt;br /&gt;
&lt;br /&gt;
First snippet is the initialization/configuration code, which should be write to the [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]] for the first time, add/remove the [[Kit_(Logic_Memory)|Logic Memories]] stack entries that you actually used in your setup, then install the chip to housing.&lt;br /&gt;
{{ICCode|&lt;br /&gt;
# Shuttle Cargoes Looking Glasses IC Stack Initializer&lt;br /&gt;
&lt;br /&gt;
clr db&lt;br /&gt;
move sp 0&lt;br /&gt;
# Prefab display Logic Memories, add/remove according to your setup.&lt;br /&gt;
push HASH(&amp;quot;SLMP1&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP2&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP3&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP4&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP5&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP6&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP7&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP8&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP9&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP10&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP11&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP12&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP13&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP14&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP15&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP16&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP17&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP18&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP19&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP20&amp;quot;)&lt;br /&gt;
move r13 sp&lt;br /&gt;
&lt;br /&gt;
# GasLiquid display Logic Memories, add/remove according to your setup.&lt;br /&gt;
push HASH(&amp;quot;SLMG1&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG2&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG3&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG4&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG5&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG6&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG7&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG8&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG9&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG10&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG11&amp;quot;)&lt;br /&gt;
move r12 sp&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Second snippet is for the same [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]], take your IC10 chip out re-put it into the laptop, clear and paste in the new second code snippet.&lt;br /&gt;
&lt;br /&gt;
There are a few user variables need to modify, please check the in-line comments. Mostly that's for LEDs to display metadata. Change the variables accordingly then insert the IC10 chip into the housing.&lt;br /&gt;
&lt;br /&gt;
{{ICCode|&lt;br /&gt;
# Shuttle Cargoes Looking Glasses Runtime IC10&lt;br /&gt;
#&lt;br /&gt;
# User variable:&lt;br /&gt;
#&lt;br /&gt;
# DishM:              The Medium Dish hash.&lt;br /&gt;
# LED_SIGID:          The LED name, show SignalID.&lt;br /&gt;
# LED_CON_TYPE_ID:    The LED name, show ContactTypeID.&lt;br /&gt;
# LED_TIER:           The LED name, show Tier.&lt;br /&gt;
# LED_SHUTTLE_TYPE:   The LED name, show Shuttle Type.&lt;br /&gt;
# LED_CONTACTED:      The LED name, show if the shuttle has been contacted already.&lt;br /&gt;
define DishM HASH(&amp;quot;Medium Satellite Dish 1&amp;quot;)&lt;br /&gt;
define LED_SIGID HASH(&amp;quot;LED_SIGID&amp;quot;)&lt;br /&gt;
define LED_CON_TYPE_ID HASH(&amp;quot;LED_CON_TYPE_ID&amp;quot;)&lt;br /&gt;
define LED_TIER HASH(&amp;quot;LED_TIER&amp;quot;)&lt;br /&gt;
define LED_SHUTTLE_TYPE HASH(&amp;quot;LED_SHUTTLE_TYPE&amp;quot;)&lt;br /&gt;
define LED_WATT_TO_RESOLVE HASH(&amp;quot;LED_WATT_TO_RESOLVE&amp;quot;)&lt;br /&gt;
define LED_CONTACTED HASH(&amp;quot;LED_CONTACTED&amp;quot;)&lt;br /&gt;
define TRADER_BUY_SEEL_SWITCH HASH(&amp;quot;TRADER_SELL_BUY_SWITCH&amp;quot;)&lt;br /&gt;
###############################################################################&lt;br /&gt;
define SSD HASH(&amp;quot;StructureSatelliteDish&amp;quot;)&lt;br /&gt;
define SLM HASH(&amp;quot;StructureLogicMemory&amp;quot;)&lt;br /&gt;
define OpcodeMask %11111111&lt;br /&gt;
alias dishMID r15&lt;br /&gt;
alias dishEntryCount r14&lt;br /&gt;
alias prefabMemCount r13&lt;br /&gt;
alias totalMemCount r12&lt;br /&gt;
alias prefabMemCursor r11&lt;br /&gt;
alias gasMemCursor r10&lt;br /&gt;
alias sellOrBuy r9&lt;br /&gt;
&lt;br /&gt;
mainloop:&lt;br /&gt;
jal WriteStack&lt;br /&gt;
jal Display&lt;br /&gt;
jal ClearPrefabMem&lt;br /&gt;
jal ClearGasMem&lt;br /&gt;
sleep 1&lt;br /&gt;
j mainloop&lt;br /&gt;
WriteStack:&lt;br /&gt;
lbn dishMID SSD DishM ReferenceId Average&lt;br /&gt;
bnan dishMID ra&lt;br /&gt;
lbn r0 HASH(&amp;quot;StructureLogicSwitch2&amp;quot;) TRADER_BUY_SEEL_SWITCH Open Average&lt;br /&gt;
brgtz r0 3&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderSellData&lt;br /&gt;
jr 2&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderBuyData&lt;br /&gt;
clrd dishMID&lt;br /&gt;
sll r0 1 8&lt;br /&gt;
or r0 r0 TraderInstruction.WriteTraderData&lt;br /&gt;
putd dishMID 0 r0&lt;br /&gt;
sll r0 30 16&lt;br /&gt;
sll r1 5 8&lt;br /&gt;
or r0 r0 r1&lt;br /&gt;
or r0 r0 sellOrBuy&lt;br /&gt;
putd dishMID 4 r0&lt;br /&gt;
sleep 1&lt;br /&gt;
j ra&lt;br /&gt;
Display:&lt;br /&gt;
lbn r1 SSD DishM SignalID Average&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_SIGID Setting r1&lt;br /&gt;
move dishEntryCount 0&lt;br /&gt;
move prefabMemCursor 0&lt;br /&gt;
move gasMemCursor prefabMemCount&lt;br /&gt;
DisplayLoop:&lt;br /&gt;
beq dishEntryCount 31 ra&lt;br /&gt;
add dishEntryCount dishEntryCount 1&lt;br /&gt;
getd r0 dishMID dishEntryCount&lt;br /&gt;
and r1 r0 OpcodeMask&lt;br /&gt;
beq r1 2 MetaData1&lt;br /&gt;
beq r1 3 MetaData2&lt;br /&gt;
beq r1 4 MetaData3&lt;br /&gt;
beq r1 7 ThingData&lt;br /&gt;
beq r1 8 ThingData&lt;br /&gt;
beq r1 9 GasData&lt;br /&gt;
beq r1 10 ThingData&lt;br /&gt;
beq r1 11 GasData&lt;br /&gt;
beq r1 12 ThingData&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData1:&lt;br /&gt;
sra r2 r0 8 # trader contact type id&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_CON_TYPE_ID Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData2:&lt;br /&gt;
and r2 r0 %11111111_00000000_00000000_00000000&lt;br /&gt;
sra r2 r2 24 # contacted&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_CONTACTED Setting r2&lt;br /&gt;
and r2 r0 %11111111_00000000_00000000&lt;br /&gt;
sra r2 r2 16 # tier&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_TIER Setting r2&lt;br /&gt;
and r2 r0 %11111111_00000000&lt;br /&gt;
sra r2 r2 8 # shuttle type&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_SHUTTLE_TYPE Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData3:&lt;br /&gt;
and r2 r0 %11111111_11111111_00000000&lt;br /&gt;
sra r2 r2 8 # watts to resolve&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_WATT_TO_RESOLVE Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
ThingData:&lt;br /&gt;
get r2 db prefabMemCursor # memory chip&lt;br /&gt;
sra r3 r0 16 # prefab hash&lt;br /&gt;
sbn SLM r2 Setting r3&lt;br /&gt;
add prefabMemCursor prefabMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
GasData:&lt;br /&gt;
get r2 db gasMemCursor # memory chip&lt;br /&gt;
sra r3 r0 16&lt;br /&gt;
sbn SLM r2 Setting r3&lt;br /&gt;
add gasMemCursor gasMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
ClearPrefabMem:&lt;br /&gt;
move sp prefabMemCursor&lt;br /&gt;
ClearPrefabMemLoop:&lt;br /&gt;
bge sp prefabMemCount ra&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn SLM r0 Setting -1&lt;br /&gt;
j ClearPrefabMemLoop&lt;br /&gt;
ClearGasMem:&lt;br /&gt;
move sp gasMemCursor&lt;br /&gt;
ClearGasMemLoop:&lt;br /&gt;
bge sp totalMemCount ra&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn SLM r0 Setting -1&lt;br /&gt;
j ClearGasMemLoop&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Final: Now enable the Medium Satellite Dish, enable the Cargo LG IC Housing(the 2nd script should be running), add some power to the dish and rotate it somehow, then check the monitors and LEDs, you will see the items you can shop(trader will sell) from this trader if the logic switch is &amp;lt;code&amp;gt;closed&amp;lt;/code&amp;gt;, and you will see the items you can sell(trader will buy) from the best trader if the logic switch is &amp;lt;code&amp;gt;open&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The total setup feels like this &lt;br /&gt;
[[File:2025-04-18-1049x333-scrot.png|Overview of Looking Glass Setup]]&lt;br /&gt;
&lt;br /&gt;
=== Shuttle Cargoes Auto Filtration/Interrogation and Call Down ===&lt;br /&gt;
&lt;br /&gt;
To add Auto Filtration/Interrogation ability, prepare following materials in advance. It's build on top of Looking Glass structure of the previous section, take caution.&lt;br /&gt;
&lt;br /&gt;
* Repurpose the IC Housing of the Looking Glass section, label it &amp;lt;code&amp;gt;Trader Filtration IC Housing&amp;lt;/code&amp;gt; or a name you like.&lt;br /&gt;
* 1 [[Kit_(Logic_Memory)|Logic Memory]], install it and label it &amp;lt;code&amp;gt;SLM_ITEM_FILTER&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 1 [[Kit_(Switch)#Switch|Logic Switch]] for switching filter prefab/gas data, label it &amp;lt;code&amp;gt;FILTER_GAS_SWITCH&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 1 [[Console|Console]], install it as Small LED and label it &amp;lt;code&amp;gt;LED_LOCKED_SIGID&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 1 [[Kit_(IC_Housing)|Kit (IC Housing)]], install it and label it &amp;lt;code&amp;gt;Dish Control IC Housing&amp;lt;/code&amp;gt; or a name you like.&lt;br /&gt;
* 1 [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]] ready for use.&lt;br /&gt;
* 1 [[Kit_(Logic_Transmitter)|Logic Transmitter]] for sending audio message to your Hardsuit when trader is landing, label it &amp;lt;code&amp;gt;Hardsuit LT 1&amp;lt;/code&amp;gt;, pair it with your [[Hardsuit|hardsuit]] in passive mode.&lt;br /&gt;
* 1 Small Satellite Dish for faster Close/Medium shuttle scanning, optional. If you set it up, the power port must face the same direction as the Medium Dish. If you don't, it just take a few more time to scan with the default Medium Satellite Dish for Close/Medium tier shuttles.&lt;br /&gt;
* 1 Large Satellite Dish for faster Far tier shuttle interrogation, optional. If you set it up, the power port must face the same direction as the Medium Dish. If you don't, it just take a few more time to interrogate with the default Medium Satellite Dish for Far tier shuttles.&lt;br /&gt;
&lt;br /&gt;
Installation:&lt;br /&gt;
&lt;br /&gt;
Install all things above and power on. For the repurposed &amp;lt;code&amp;gt;Trader Filtration IC Housing&amp;lt;/code&amp;gt; code, paste in following code, replacing Looking Glass code(the Lookging Glass's function is still in the code, plus the filtration function), change the &amp;lt;code&amp;gt;DishM&amp;lt;/code&amp;gt;'s name as you like. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color: red&amp;quot;&amp;gt;&lt;br /&gt;
Warning:&lt;br /&gt;
If you use a brand new IC10 chip for the Trader Filtration IC Housing,&lt;br /&gt;
you still need to initialize the IC10 chip with the code of Shuttle Cargoes Looking Glasses IC Stack Initializer,&lt;br /&gt;
or the stack will be empty as a stack is an IC10 CHIP property.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ICCode|&lt;br /&gt;
define DishM HASH(&amp;quot;Medium Satellite Dish 1&amp;quot;)&lt;br /&gt;
alias dishMID r15&lt;br /&gt;
alias filterGas r14&lt;br /&gt;
alias prefabMemCount r13&lt;br /&gt;
alias totalMemCount r12&lt;br /&gt;
alias prefabMemCursor r11&lt;br /&gt;
alias gasMemCursor r10&lt;br /&gt;
alias sellOrBuy r9&lt;br /&gt;
alias filterItem r7&lt;br /&gt;
alias signalID r6&lt;br /&gt;
move r5 0 # lastSignalID&lt;br /&gt;
mainloop:&lt;br /&gt;
move r8 0 # nextAddress&lt;br /&gt;
WriteStack:&lt;br /&gt;
lbn dishMID HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM ReferenceId Average&lt;br /&gt;
bnan dishMID mainloop&lt;br /&gt;
lbn r0 HASH(&amp;quot;StructureLogicSwitch2&amp;quot;) HASH(&amp;quot;TRADER_SELL_BUY_SWITCH&amp;quot;) Open Average&lt;br /&gt;
brgtz r0 3&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderSellData&lt;br /&gt;
jr 2&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderBuyData&lt;br /&gt;
clrd dishMID&lt;br /&gt;
sll r0 1 8&lt;br /&gt;
or r0 r0 TraderInstruction.WriteTraderData&lt;br /&gt;
putd dishMID r8 r0&lt;br /&gt;
add r8 r8 4&lt;br /&gt;
lbn filterGas HASH(&amp;quot;StructureLogicSwitch2&amp;quot;) HASH(&amp;quot;FILTER_GAS_SWITCH&amp;quot;) Setting Average&lt;br /&gt;
lbn filterItem HASH(&amp;quot;StructureLogicMemory&amp;quot;) HASH(&amp;quot;SLM_ITEM_FILTER&amp;quot;) Setting Average&lt;br /&gt;
breqz filterItem 8 # skip if filter value is 0&lt;br /&gt;
sll r0 filterItem 8&lt;br /&gt;
breqz filterGas 3&lt;br /&gt;
or r0 r0 TraderInstruction.FilterGasContains&lt;br /&gt;
jr 2&lt;br /&gt;
or r0 r0 TraderInstruction.FilterPrefabHashEquals&lt;br /&gt;
putd dishMID r8 r0&lt;br /&gt;
add r8 r8 1&lt;br /&gt;
sll r0 30 16&lt;br /&gt;
add r1 r8 1&lt;br /&gt;
sll r1 r1 8&lt;br /&gt;
or r0 r0 r1&lt;br /&gt;
or r0 r0 sellOrBuy&lt;br /&gt;
putd dishMID r8 r0&lt;br /&gt;
yield&lt;br /&gt;
Display:&lt;br /&gt;
lbn signalID HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM SignalID Average&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_SIGID&amp;quot;) Setting signalID&lt;br /&gt;
move r0 0&lt;br /&gt;
move prefabMemCursor 0&lt;br /&gt;
move gasMemCursor prefabMemCount&lt;br /&gt;
DisplayLoop:&lt;br /&gt;
beq r0 31 ClearMem&lt;br /&gt;
add r0 r0 1&lt;br /&gt;
getd r1 dishMID r0&lt;br /&gt;
and r2 r1 %11111111&lt;br /&gt;
beq r2 2 MetaData1&lt;br /&gt;
beq r2 3 MetaData2&lt;br /&gt;
beq r2 4 MetaData3&lt;br /&gt;
beq r2 7 ThingData&lt;br /&gt;
beq r2 8 ThingData&lt;br /&gt;
beq r2 9 GasData&lt;br /&gt;
beq r2 10 ThingData&lt;br /&gt;
beq r2 11 GasData&lt;br /&gt;
beq r2 12 ThingData&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData1:&lt;br /&gt;
sra r2 r1 8 # trader contact type id&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_CON_TYPE_ID&amp;quot;) Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData2:&lt;br /&gt;
and r2 r1 %11111111_00000000_00000000_00000000&lt;br /&gt;
sra r2 r2 24 # contacted&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_CONTACTED&amp;quot;) Setting r2&lt;br /&gt;
and r2 r1 %11111111_00000000_00000000&lt;br /&gt;
sra r2 r2 16 # tier&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_TIER&amp;quot;) Setting r2&lt;br /&gt;
and r2 r1 %11111111_00000000&lt;br /&gt;
sra r2 r2 8 # shuttle type&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_SHUTTLE_TYPE&amp;quot;) Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData3:&lt;br /&gt;
and r2 r1 %11111111_11111111_00000000&lt;br /&gt;
sra r2 r2 8 # watts to resolve&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_WATT_TO_RESOLVE&amp;quot;) Setting r2&lt;br /&gt;
and r2 r1 $FFFF_000000&lt;br /&gt;
sra r2 r2 24 # lifetime&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LIFETIME&amp;quot;) Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
ThingData:&lt;br /&gt;
get r2 db prefabMemCursor # memory chip&lt;br /&gt;
sra r3 r1 16 # prefab hash&lt;br /&gt;
breqz filterItem 3&lt;br /&gt;
bne filterItem r3 DisplayLoop&lt;br /&gt;
jal LockSignalID&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r2 Setting r3&lt;br /&gt;
add prefabMemCursor prefabMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
GasData:&lt;br /&gt;
get r2 db gasMemCursor # memory chip&lt;br /&gt;
sra r3 r1 16&lt;br /&gt;
sgtz r4 filterItem&lt;br /&gt;
and r4 r4 filterGas&lt;br /&gt;
breqz r4 4&lt;br /&gt;
and r4 filterItem r3&lt;br /&gt;
beqz r4 DisplayLoop&lt;br /&gt;
jal LockSignalID&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r2 Setting r3&lt;br /&gt;
add gasMemCursor gasMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
LockSignalID:&lt;br /&gt;
lbn r4 HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting Average&lt;br /&gt;
bgtz r4 ra&lt;br /&gt;
beq signalID r5 ra&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting signalID&lt;br /&gt;
move r5 signalID&lt;br /&gt;
j ra&lt;br /&gt;
ClearMem:&lt;br /&gt;
move sp prefabMemCursor&lt;br /&gt;
brge sp prefabMemCount 5&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r0 Setting -1&lt;br /&gt;
jr -4&lt;br /&gt;
move sp gasMemCursor&lt;br /&gt;
bge sp totalMemCount mainloop&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r0 Setting -1&lt;br /&gt;
jr -4&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
For the &amp;lt;code&amp;gt;Dish Control IC Housing&amp;lt;/code&amp;gt; code, paste in following code, change the hash of &amp;lt;code&amp;gt;DishS&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;DishL&amp;lt;/code&amp;gt; names as you have then setted up or not. Search and change the name of &amp;lt;code&amp;gt;Hardsuit LT 1&amp;lt;/code&amp;gt; line if you want to send notification to other devices.&lt;br /&gt;
&lt;br /&gt;
{{ICCode|&lt;br /&gt;
define DishM HASH(&amp;quot;Medium Satellite Dish 1&amp;quot;)&lt;br /&gt;
define DishS 0 # if you have small dish, set hash to HASH(&amp;quot;NAME&amp;quot;)&lt;br /&gt;
define DishL 0 # if you have large dish, set hash to HASH(&amp;quot;NAME&amp;quot;)&lt;br /&gt;
move r0 0&lt;br /&gt;
reset:&lt;br /&gt;
move r15 r0 # lockedSigID&lt;br /&gt;
move r14 0 # horizontal&lt;br /&gt;
move r13 0 # vertical&lt;br /&gt;
move r12 0 # horizontalEdge1&lt;br /&gt;
move r11 0 # horizontalEdge2&lt;br /&gt;
move r10 0 # verticalEdge1&lt;br /&gt;
move r9 0 # verticalEdge2&lt;br /&gt;
move r8 DishM # commDish&lt;br /&gt;
move r7 HASH(&amp;quot;StructureSatelliteDish&amp;quot;) # commDishType&lt;br /&gt;
move r6 DishM # scanDish&lt;br /&gt;
move r5 r7 # scanDishType&lt;br /&gt;
sbn r5 r6 Vertical 60&lt;br /&gt;
sbn r5 r6 BestContactFilter -1&lt;br /&gt;
sbn r5 r6 Setting 500&lt;br /&gt;
mainloop:&lt;br /&gt;
yield&lt;br /&gt;
lbn r0 HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting Average&lt;br /&gt;
lbn r1 r5 r6 SignalID Average&lt;br /&gt;
lbn r2 r5 r6 Horizontal Average&lt;br /&gt;
lbn r3 r5 r6 Vertical Average&lt;br /&gt;
breqz r0 34&lt;br /&gt;
  bne r0 r15 reset&lt;br /&gt;
  lbn r4 HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_TIER&amp;quot;) Setting Average&lt;br /&gt;
  brnez r14 10&lt;br /&gt;
  brge r4 2 5&lt;br /&gt;
    breqz DishS 4&lt;br /&gt;
      move r6 DishS&lt;br /&gt;
      move r5 HASH(&amp;quot;StructureSmallSatelliteDish&amp;quot;)&lt;br /&gt;
      sbn r5 r6 Setting 200&lt;br /&gt;
    breqz DishL 3&lt;br /&gt;
      move r8 DishL&lt;br /&gt;
      move r7 HASH(&amp;quot;StructureLargeSatelliteDish&amp;quot;)&lt;br /&gt;
  sbn r5 r6 BestContactFilter r15&lt;br /&gt;
  sbn r5 r6 On 1&lt;br /&gt;
  beqz r12 ScanHorizontal&lt;br /&gt;
  beqz r11 ScanReverseHorizontal&lt;br /&gt;
  beqz r10 ScanVertical&lt;br /&gt;
  beqz r9 ScanReverseVertical&lt;br /&gt;
  brne r1 -1 3&lt;br /&gt;
    sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting 0&lt;br /&gt;
    j reset&lt;br /&gt;
  yield&lt;br /&gt;
  lbn r0 r7 r8 Idle Average&lt;br /&gt;
  breqz r0 -2&lt;br /&gt;
  sbn r7 r8 BestContactFilter r15&lt;br /&gt;
  sbn r7 r8 Setting 50000&lt;br /&gt;
  sbn r7 r8 Activate 1&lt;br /&gt;
  lbn r0 r7 r8 InterrogationProgress Average&lt;br /&gt;
  brlt r0 1 4&lt;br /&gt;
    sleep 2&lt;br /&gt;
    sbn HASH(&amp;quot;StructureLogicTransmitter&amp;quot;) HASH(&amp;quot;Hardsuit LT 1&amp;quot;) SoundAlert 37&lt;br /&gt;
    sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting 0&lt;br /&gt;
  j mainloop&lt;br /&gt;
bnez r15 reset&lt;br /&gt;
breq r6 DishM 2 # enter roaming mode&lt;br /&gt;
sbn r5 r6 On 0&lt;br /&gt;
breq r8 DishM 2&lt;br /&gt;
sbn r7 r8 On 0&lt;br /&gt;
sbn HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM On 1&lt;br /&gt;
add r2 r2 2&lt;br /&gt;
mod r2 r2 360&lt;br /&gt;
sbn HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM Horizontal r2&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanHorizontal:&lt;br /&gt;
brne r1 -1 4&lt;br /&gt;
  move r12 r14&lt;br /&gt;
  sbn r5 r6 Horizontal r14&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r14 r2&lt;br /&gt;
sub r4 r2 5&lt;br /&gt;
mod r4 r4 360&lt;br /&gt;
sbn r5 r6 Horizontal r4&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanReverseHorizontal:&lt;br /&gt;
brne r1 -1 14&lt;br /&gt;
  beq r14 r12 13&lt;br /&gt;
  move r11 r14&lt;br /&gt;
  slt r4 r11 r12&lt;br /&gt;
  breqz r4 2&lt;br /&gt;
  add r11 r11 360&lt;br /&gt;
  add r4 r11 r12&lt;br /&gt;
  div r4 r4 2&lt;br /&gt;
  mod r4 r4 360&lt;br /&gt;
  sbn r5 r6 Horizontal r4&lt;br /&gt;
  sbn r7 r8 On 1&lt;br /&gt;
  sbn r7 r8 Horizontal r4&lt;br /&gt;
  jal 124&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r14 r2&lt;br /&gt;
add r4 r2 5&lt;br /&gt;
mod r4 r4 360&lt;br /&gt;
sbn r5 r6 Horizontal r4&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanVertical:&lt;br /&gt;
brne r1 -1 4&lt;br /&gt;
  move r10 r13&lt;br /&gt;
  sbn r5 r6 Vertical r13&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r13 r3&lt;br /&gt;
brge r3 89.9 -4&lt;br /&gt;
add r4 r3 5&lt;br /&gt;
sbn r5 r6 Vertical r4&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanReverseVertical:&lt;br /&gt;
brne r1 -1 10&lt;br /&gt;
  beq r13 r10 9&lt;br /&gt;
  move r9 r13&lt;br /&gt;
  select r9 r9 r9 0.01&lt;br /&gt;
  add r4 r9 r10&lt;br /&gt;
  div r4 r4 2&lt;br /&gt;
  sbn r5 r6 Vertical r4&lt;br /&gt;
  sbn r7 r8 Vertical r4&lt;br /&gt;
  jal 124&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r13 r3&lt;br /&gt;
brle r3 0.1 -8&lt;br /&gt;
sub r4 r3 5&lt;br /&gt;
sbn r5 r6 Vertical r4&lt;br /&gt;
j mainloop&lt;br /&gt;
yield&lt;br /&gt;
lbn r0 r5 r6 Idle Average&lt;br /&gt;
breqz r0 -2&lt;br /&gt;
j ra&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The last step is to set the item prefab hash you want. First set the &amp;lt;code&amp;gt;FILTER_GAS_SWITCH&amp;lt;/code&amp;gt; to indicate the type of the filter(&amp;lt;code&amp;gt;Open&amp;lt;/code&amp;gt; is filtering Gas, &amp;lt;code&amp;gt;Close&amp;lt;/code&amp;gt; is filtering Prefab), then set the content of [[Kit_(Logic_Memory)|Logic Memory]] named &amp;lt;code&amp;gt;SLM_ITEM_FILTER&amp;lt;/code&amp;gt; using labeler or any other means, then power both IC Housing on. Then wait for the trader to arrive, there will be a notification send to your Hardsuit or your custom device. The codes will auto locate the shuttle and filter shuttle cargoes and interrogate with it and call it down to your default landing pad.&lt;br /&gt;
&lt;br /&gt;
Don't forget to reset the content of &amp;lt;code&amp;gt;SLM_ITEM_FILTER&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; or something else after trading.&lt;br /&gt;
&lt;br /&gt;
The logic behind the Dish Control is that it scan the signal edge of the filtered out SignalID, instead of inspecting signal strength, so it kind of fast and non-stop rotating. When no filter is specified, it enters roaming mode which rotate clock-wise until filter is specficied and matching shuttle is found.&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Kit_(Satellite_Dish)&amp;diff=23688</id>
		<title>Kit (Satellite Dish)</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Kit_(Satellite_Dish)&amp;diff=23688"/>
				<updated>2025-10-10T18:30:22Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Machines]]&lt;br /&gt;
[[Category:Items]]&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Kit (Satellite Dish)&lt;br /&gt;
 | stacks      = 10&lt;br /&gt;
 | image       = [[File:ItemKitSatelliteDish.png]]&lt;br /&gt;
 | createdwith = [[Electronics Printer]]&lt;br /&gt;
 | cost        = 5g [[Gold]], 10g [[Copper]], 20g [[Steel]], 5g [[Nickel]], 10g [[Solder]]&lt;br /&gt;
}}&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Medium Satellite Dish&lt;br /&gt;
 | image            = [[File:StructureSatelliteDish.png]]&lt;br /&gt;
 | power_usage      = 200W&lt;br /&gt;
 | placed_with_item = [[Satellite Dish|Kit (Satellite Dish)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
 | item_rec1        = [[Satellite Dish|Kit (Satellite Dish)]]&lt;br /&gt;
}}&lt;br /&gt;
==Description==&lt;br /&gt;
The Satellite Dish is used together with a [[Computer]] fitted with a [[Motherboard (Communications)]] to allow Interstellar Communications.&lt;br /&gt;
&lt;br /&gt;
The Satellite Dish must be guided by [[Satellite Tracking]] onto a signal and communications may be established once the signal strength is greater than 94%&lt;br /&gt;
&lt;br /&gt;
'''Important''': The Dish must not be obstructed, it needs direct line of sight and will be blocked by any obstacle.&lt;br /&gt;
&lt;br /&gt;
== Medium Satellite Dish ==&lt;br /&gt;
=== Data Network Properties ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-datanetworkproperties&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;data network properties&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-datanetworkproperties&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Kit_(Satellite_Dish)/Data_Network}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Stack Usage ==&lt;br /&gt;
After &amp;quot;Big Changes Coming: Terrain Preview, Melting Ice, Modding, &amp;amp; Localization&amp;quot; update, Medium Satellite Dish has internal stack like Autolathe, which user can utilize it to give instructions to.&lt;br /&gt;
The Medium Satellite Dish currently have 256Bytes(32 Addresses) stack memory.&lt;br /&gt;
&lt;br /&gt;
Pro tips:&lt;br /&gt;
* Everyday there will be only 3 vessels, one for each shuttle tier.&lt;br /&gt;
* Everyday the 3 vessels will be refreshed, the algorithm for which type of vessel to appear is random, but strictly 1 for each tier.&lt;br /&gt;
* It's best to use 500 watts if you are using medium satellite dish to scan, 500 watts is just large enough for the FAR tier to appear on the radar, but small enough for it's signal being masked by lower tier shuttles.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color: red&amp;quot;&amp;gt;&lt;br /&gt;
Warning:&lt;br /&gt;
Internally every tick the stack data will be cleared and regenerated,&lt;br /&gt;
so don't OVERWRITE any TraderInstruction.Write* instructions when setting the WRITE_INDEX and WRITE_COUNT.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width:50%;&amp;quot;&lt;br /&gt;
! Op_code&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Name&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Description&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Valid Address&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Bits&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Bits Description&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 1&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.WriteTraderData&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | The dish will write out metadata(24 Bytes, in continuous of 3 addresses) to the specified starting index. E.g.: if set WRITE_INDEX to 1, then the metadata will span address 1-3. See [[#Metadata_Payloads|Metadata Payload]]s.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| WRITE_INDEX&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 2&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.StrongestContactIdHash&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderData payload segment 1.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| TRADER_ID_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;5&amp;quot; | 3&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; | TraderInstruction.StrongestContactMetaData&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderData payload segment 2.&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| [[#Metadata_Payloads|SHUTTLE_TYPE]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-23&lt;br /&gt;
| [[#Metadata_Payloads|CONTACT_TIER]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-31&lt;br /&gt;
| [[#Metadata_Payloads|CONTACTED]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 4&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.StrongestContactSignalData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderData payload segment 3.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-23&lt;br /&gt;
| WATTS_TO_RESOLVE&amp;lt;br/&amp;gt;See [[Trader#Trader_Tier |WattsToResolve]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-39&lt;br /&gt;
| LIFETIME&amp;lt;br/&amp;gt;See [[Trader#Trader_Tier|LifeTime]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 5&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.WriteTraderBuyData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | The dish will write out trader buy metadatas from the starting address WRITE_INDEX, and write WRITE_COUNT continuous addresses total.&amp;lt;br/&amp;gt;If an item contains child items, then it will be expaned inplace.&amp;lt;br/&amp;gt;E.g.: &amp;lt;BuyPayload&amp;gt;&amp;lt;BuyPayload&amp;gt;&amp;lt;BuyChildPayload&amp;gt;&amp;lt;BuyPayload&amp;gt;.&amp;lt;br/&amp;gt;See [[#Buy.2FSell_Payloads|Buy/Sell Payloads]], [[#Buy.2FSell_Child_Payloads|Buy/Sell Child Payloads]].&amp;lt;br/&amp;gt;WRITE_COUNT=0 means WRITE_COUNT=1.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| WRITE_INDEX&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-23&lt;br /&gt;
| WRITE_COUNT&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 6&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.WriteTraderSellData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | The dish will write out trader sell metadatas from the starting address WRITE_INDEX, and write WRITE_COUNT continuous addresses total.&amp;lt;br/&amp;gt;If an item contains child items, then it will be expaned inplace.&amp;lt;br/&amp;gt;E.g.: &amp;lt;SellPayload&amp;gt;&amp;lt;SellPayload&amp;gt;&amp;lt;SellChildPayload&amp;gt;&amp;lt;SellPayload&amp;gt;.&amp;lt;br/&amp;gt;See [[#Buy.2FSell_Payloads |Buy/Sell Payloads]], [[#Buy.2FSell_Child_Payloads|Buy/Sell Child Payloads]].&amp;lt;br/&amp;gt;WRITE_COUNT=0 means WRITE_COUNT=1.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| WRITE_INDEX&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-23&lt;br /&gt;
| WRITE_COUNT&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 24-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 7&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderBuyThingData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 8&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderBuyThingChildData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 9&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderBuyGasData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| GAS_TYPES_BITFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 10&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderSellThingData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 11&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderSellGasData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| GAS_TYPES_BIGFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 12&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.TraderSellThingChildData&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 0-31&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-47&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 48-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 13&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterPrefabHashEquals&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching PrefabHash.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 14&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterPrefabHashNotEquals&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only not matching PrefabHash.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| PREFAB_HASH&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 15&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.FilterSortingClassCompare&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching SortingClass.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| CONDITION_OPERATION&amp;lt;br/&amp;gt;0: Equals&amp;lt;br/&amp;gt;1: Greater&amp;lt;br/&amp;gt;2: Less&amp;lt;br/&amp;gt;3: Not Equals&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-31&lt;br /&gt;
| SORTING_CLASS&amp;lt;br/&amp;gt;See [[Sorting_Class]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; | 16&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | TraderInstruction.FilterQuantityCompare&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching Quantity Condition.&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-15&lt;br /&gt;
| CONDITION_OPERATION&amp;lt;br/&amp;gt;0: Equals&amp;lt;br/&amp;gt;1: Greater&amp;lt;br/&amp;gt;2: Less&amp;lt;br/&amp;gt;3: Not Equals&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 16-31&lt;br /&gt;
| QUANTITY&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 32-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 17&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterGasContains&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only matching Gases.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| GAS_TYPES_BITFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; | 18&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | TraderInstruction.FilterGasNotContains&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | Filter Operation.&amp;lt;br/&amp;gt;User can prepend this OP before any TraderInstruction.Write* OP to filter writer's output.&amp;lt;br/&amp;gt;Multple filter OP can be written to the addresses before a Write* OP to group as a &amp;quot;AND&amp;quot; condition.&amp;lt;br/&amp;gt;This Filter narrows Write* OP's output to only not matching Gases.&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | 1-30&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0-7&lt;br /&gt;
| Op_code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 8-39&lt;br /&gt;
| GAS_TYPES_BITFLAG&amp;lt;br/&amp;gt;See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 40-63&lt;br /&gt;
| Unused&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Metadata Payloads ===&lt;br /&gt;
&lt;br /&gt;
Since Metadata has 3 addresses, so it's referenced here as a 24 bytes(192 bits) payload.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:80%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-40&lt;br /&gt;
| 39-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Segment 1&lt;br /&gt;
| All bits value in this section is the deplicate of bit 39.&lt;br /&gt;
| [[Trader#ContactTypeID|ContactTypeID]]&lt;br /&gt;
| OpCode of TraderInstruction.StrongestContactIdHash.&lt;br /&gt;
|-&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-32&lt;br /&gt;
| 31-24&lt;br /&gt;
| 23-16&lt;br /&gt;
| 15-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Segment 2&lt;br /&gt;
| All bits 0.&lt;br /&gt;
| Contacted&amp;lt;br/&amp;gt;0: false&amp;lt;br/&amp;gt; 1: true&lt;br /&gt;
| Contact Tier: &amp;lt;br/&amp;gt;0: Close&amp;lt;br/&amp;gt;1: Medium&amp;lt;br/&amp;gt;2: Far&lt;br /&gt;
| Shuttle Type: &amp;lt;br/&amp;gt;0:None&amp;lt;br/&amp;gt;1: Small(3x3)&amp;lt;br/&amp;gt;2: SmallGas(3x3)&amp;lt;br/&amp;gt;3: Medium(5x5)&amp;lt;br/&amp;gt;4: MediumGas(5x5)&amp;lt;br/&amp;gt;5: Large(6x6)&amp;lt;br/&amp;gt;6: LargeGas(6x6)&amp;lt;br/&amp;gt;7: MediumPlane(7x7, runway:15)&amp;lt;br/&amp;gt;8: LargePlane(9x9, runway:20)&lt;br /&gt;
| OpCode of TraderInstruction.StrongestContactMetaData.&lt;br /&gt;
|-&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-40&lt;br /&gt;
| 39-24&lt;br /&gt;
| 23-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Segment 3&lt;br /&gt;
| ALl bits 0.&lt;br /&gt;
| [[Trader#Trader_Tier|LifeTime]]&lt;br /&gt;
| [[Trader#Trader_Tier|WattsToResolve]]&lt;br /&gt;
| OpCode of TraderInstruction.StrongestContactSignalData.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Buy/Sell Payloads ===&lt;br /&gt;
&lt;br /&gt;
Buy/Sell Payloads are 1 address each, so it's referenced here as a 8 bytes(64 bit) payload.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:60%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-48&lt;br /&gt;
| 47-16&lt;br /&gt;
| 15-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Contents&lt;br /&gt;
| Every bit's value is the same as bit 47.&lt;br /&gt;
| PrefabHash/GasTypeBitFlag&lt;br /&gt;
| Quantity&amp;lt;br/&amp;gt;This value is truncated so it won't be greater than 255 although the trader's Request/Stock is more than 255.&lt;br /&gt;
| OpCode&amp;lt;br/&amp;gt;Data type represented as OpCode, one of the OpCode 7, 9, 10, 11.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Buy/Sell Child Payloads ===&lt;br /&gt;
&lt;br /&gt;
Buy/Sell Payloads are 1 address each, so it's referenced here as a 8 bytes(64 bit) payload.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:60%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 63-48&lt;br /&gt;
| 47-16&lt;br /&gt;
| 15-8&lt;br /&gt;
| 7-0&lt;br /&gt;
|-&lt;br /&gt;
! Contents&lt;br /&gt;
| Every bit's value is the same as bit 47.&lt;br /&gt;
| PrefabHash/GasTypeBitFlag&lt;br /&gt;
| ChildCount&amp;lt;br/&amp;gt;Counts how many instances of this item appeared as a child item.&amp;lt;br/&amp;gt;Beware it's not quantity, it's just a prefab type count.&lt;br /&gt;
| OpCode&amp;lt;br/&amp;gt;If this data is requested by TraderInstruction.WriteTraderBuyData, then it's value is the OpCode of TraderInstruction.TraderBuyThingChildData.&amp;lt;br/&amp;gt;If this data is requested by TraderInstruction.WriteTraderSellData, then it's value is the OpCode of TraderInstruction.TraderSellThingChildData.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Gas Type BitFlags ===&lt;br /&gt;
&lt;br /&gt;
If the BitFlag equals 0, it's undefined. If the bit at specific offset is 1, it means the gas contains that component.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;overflowbugx&amp;quot; style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:60%;&amp;quot;&lt;br /&gt;
! BitsOffset&lt;br /&gt;
| 16&lt;br /&gt;
| 15&lt;br /&gt;
| 14&lt;br /&gt;
| 13&lt;br /&gt;
| 12&lt;br /&gt;
| 11&lt;br /&gt;
| 10&lt;br /&gt;
| 9&lt;br /&gt;
| 8&lt;br /&gt;
| 7&lt;br /&gt;
| 6&lt;br /&gt;
| 5&lt;br /&gt;
| 4&lt;br /&gt;
| 3&lt;br /&gt;
| 2&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! Contents&lt;br /&gt;
| PollutedWater&lt;br /&gt;
| LiquidHydrogen&lt;br /&gt;
| Hydrogen&lt;br /&gt;
| LiquidNitrousOxide&lt;br /&gt;
| LiquidPollutant&lt;br /&gt;
| LiquidCarbonDioxide&lt;br /&gt;
| Steam&lt;br /&gt;
| LiquidVolatiles&lt;br /&gt;
| LiquidOxygen&lt;br /&gt;
| LiquidNitrogen&lt;br /&gt;
| NitrousOxide&lt;br /&gt;
| Water&lt;br /&gt;
| Pollutant&lt;br /&gt;
| Volatiles&lt;br /&gt;
| CarbonDioxide&lt;br /&gt;
| Nitrogen&lt;br /&gt;
| Oxygen&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Special Gas:&lt;br /&gt;
# Bit 0,1 both set to 1, which is Air.&lt;br /&gt;
# Bit 0,3 both set to 1, which is Fuel.&lt;br /&gt;
&lt;br /&gt;
==Stack Programming Reference Implementation==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color: red&amp;quot;&amp;gt;&lt;br /&gt;
Warning:&lt;br /&gt;
The following code is a reference implementation, it only serve the purpose to&lt;br /&gt;
assist you to observe the possibility and help you write your own code.&lt;br /&gt;
You must write your own code to fully enjoy the game.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Shuttle Cargoes Looking Glasses ===&lt;br /&gt;
&lt;br /&gt;
The Looking Glasses are purely for cargo inspection, no filter, no auto negotiate and call-down.&lt;br /&gt;
&lt;br /&gt;
Materials to prepare:&lt;br /&gt;
* A Medium Satellite Dish.&lt;br /&gt;
* Any number of [[Kit_(Logic_Memory)|Logic Memories]] for '''Prefab''' [[Console|Console]] display (if there are more Prefabs to display than your number of [[Kit_(Logic_Memory)|Logic Memories]], they will be ignored).&lt;br /&gt;
* Corresponding number of [[Circuitboard|Hash Displays]] and [[Console|Consoles]].&lt;br /&gt;
* Any number of [[Kit_(Logic_Memory)|Logic Memories]] for '''Gas''' [[Console|Console]] display, (if there are more GasLiquid to display than your number of [[Kit_(Logic_Memory)|Logic Memories]], they will be ignored).&lt;br /&gt;
* Corresponding number of [[Circuitboard|Hash Displays]] and [[Console|Consoles]].&lt;br /&gt;
* 1 [[Kit_(Switch)#Switch|Logic Switch]] for switch trader's sell/buy data.&lt;br /&gt;
* 6 [[Console|Console]] for Small LED installation (all will show metadata).&lt;br /&gt;
* 1 [[Kit_(IC_Housing)|Kit (IC Housing)]] and 1 [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]].&lt;br /&gt;
&lt;br /&gt;
Installation:&lt;br /&gt;
* Install all of the [[Kit_(Logic_Memory)|Logic Memories]].&lt;br /&gt;
* Install corresponding '''Prefab''' [[Console|Consoles]], insert [[Circuitboard|Hash Displays]], and make sure the [[Circuitboard|Hash Displays]] are set to '''Prefab''' display mode: &amp;lt;code&amp;gt;Mode=0&amp;lt;/code&amp;gt;&lt;br /&gt;
* Install corresponding '''Gas''' [[Console|Consoles]], insert [[Circuitboard|Hash Displays]], and make sure the [[Circuitboard|Hash Displays]] are set to '''GasLiquid''' display mode: &amp;lt;code&amp;gt;Mode=1&amp;lt;/code&amp;gt;&lt;br /&gt;
{{ICCode|&lt;br /&gt;
# example for setup GasLiquid mode&lt;br /&gt;
ss d0 0 Mode 1 # d0 is console pin&lt;br /&gt;
# or configure all the Consoles in the IcHousing's subnetwork&lt;br /&gt;
sbs StructureConsole 0 Mode 1&lt;br /&gt;
}}&lt;br /&gt;
* Naming each [[Kit_(Logic_Memory)|Logic Memory]] sequentially for two display types, for example: &amp;lt;code&amp;gt;SLMP1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SLMP2&amp;lt;/code&amp;gt; for '''Prefab''' display, and &amp;lt;code&amp;gt;SLMG1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SLMG2&amp;lt;/code&amp;gt; for '''GasLiquid''' display.&lt;br /&gt;
* Manually configure all [[Console|Consoles]] to link to their corresponding [[Kit_(Logic_Memory)|Logic Memories]] with [[Data_Disk|Data Disk]].&lt;br /&gt;
* Install 1 [[Kit_(Switch)#Switch|Logic Switch]] for switch trader's sell/buy data, &amp;lt;code&amp;gt;Open&amp;lt;/code&amp;gt; shows trader's Buy data, &amp;lt;code&amp;gt;Close&amp;lt;/code&amp;gt; shows trader's Sell data. Label it &amp;lt;code&amp;gt;TRADER_SELL_BUY_SWITCH&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Install 1 [[Kit_(IC_Housing)|Kit (IC Housing)]] in the same subnetwork and label it &amp;lt;code&amp;gt;Cargo LG IC Housing&amp;lt;/code&amp;gt;, insert a [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]].&lt;br /&gt;
* Install 6 LED and labeling them: &amp;lt;code&amp;gt;LED_SIGID&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_CON_TYPE_ID&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_TIER&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_SHUTTLE_TYPE&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_WATT_TO_RESOLVE&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;LED_CONTACTED&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Reference Implementation:&lt;br /&gt;
&lt;br /&gt;
Next are the code snippets for a setup of 20 '''Prefab''' Console and 11 '''GasLiquid''' Console looking glass.&lt;br /&gt;
&lt;br /&gt;
First snippet is the initialization/configuration code, which should be write to the [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]] for the first time, add/remove the [[Kit_(Logic_Memory)|Logic Memories]] stack entries that you actually used in your setup, then install the chip to housing.&lt;br /&gt;
{{ICCode|&lt;br /&gt;
# Shuttle Cargoes Looking Glasses IC Stack Initializer&lt;br /&gt;
&lt;br /&gt;
clr db&lt;br /&gt;
move sp 0&lt;br /&gt;
# Prefab display Logic Memories, add/remove according to your setup.&lt;br /&gt;
push HASH(&amp;quot;SLMP1&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP2&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP3&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP4&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP5&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP6&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP7&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP8&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP9&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP10&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP11&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP12&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP13&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP14&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP15&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP16&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP17&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP18&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP19&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMP20&amp;quot;)&lt;br /&gt;
move r13 sp&lt;br /&gt;
&lt;br /&gt;
# GasLiquid display Logic Memories, add/remove according to your setup.&lt;br /&gt;
push HASH(&amp;quot;SLMG1&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG2&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG3&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG4&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG5&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG6&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG7&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG8&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG9&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG10&amp;quot;)&lt;br /&gt;
push HASH(&amp;quot;SLMG11&amp;quot;)&lt;br /&gt;
move r12 sp&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Second snippet is for the same [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]], take your IC10 chip out re-put it into the laptop, clear and paste in the new second code snippet.&lt;br /&gt;
&lt;br /&gt;
There are a few user variables need to modify, please check the in-line comments. Mostly that's for LEDs to display metadata. Change the variables accordingly then insert the IC10 chip into the housing.&lt;br /&gt;
&lt;br /&gt;
{{ICCode|&lt;br /&gt;
# Shuttle Cargoes Looking Glasses Runtime IC10&lt;br /&gt;
#&lt;br /&gt;
# User variable:&lt;br /&gt;
#&lt;br /&gt;
# DishM:              The Medium Dish hash.&lt;br /&gt;
# LED_SIGID:          The LED name, show SignalID.&lt;br /&gt;
# LED_CON_TYPE_ID:    The LED name, show ContactTypeID.&lt;br /&gt;
# LED_TIER:           The LED name, show Tier.&lt;br /&gt;
# LED_SHUTTLE_TYPE:   The LED name, show Shuttle Type.&lt;br /&gt;
# LED_CONTACTED:      The LED name, show if the shuttle has been contacted already.&lt;br /&gt;
define DishM HASH(&amp;quot;Medium Satellite Dish 1&amp;quot;)&lt;br /&gt;
define LED_SIGID HASH(&amp;quot;LED_SIGID&amp;quot;)&lt;br /&gt;
define LED_CON_TYPE_ID HASH(&amp;quot;LED_CON_TYPE_ID&amp;quot;)&lt;br /&gt;
define LED_TIER HASH(&amp;quot;LED_TIER&amp;quot;)&lt;br /&gt;
define LED_SHUTTLE_TYPE HASH(&amp;quot;LED_SHUTTLE_TYPE&amp;quot;)&lt;br /&gt;
define LED_WATT_TO_RESOLVE HASH(&amp;quot;LED_WATT_TO_RESOLVE&amp;quot;)&lt;br /&gt;
define LED_CONTACTED HASH(&amp;quot;LED_CONTACTED&amp;quot;)&lt;br /&gt;
define TRADER_BUY_SEEL_SWITCH HASH(&amp;quot;TRADER_SELL_BUY_SWITCH&amp;quot;)&lt;br /&gt;
###############################################################################&lt;br /&gt;
define SSD HASH(&amp;quot;StructureSatelliteDish&amp;quot;)&lt;br /&gt;
define SLM HASH(&amp;quot;StructureLogicMemory&amp;quot;)&lt;br /&gt;
define OpcodeMask %11111111&lt;br /&gt;
alias dishMID r15&lt;br /&gt;
alias dishEntryCount r14&lt;br /&gt;
alias prefabMemCount r13&lt;br /&gt;
alias totalMemCount r12&lt;br /&gt;
alias prefabMemCursor r11&lt;br /&gt;
alias gasMemCursor r10&lt;br /&gt;
alias sellOrBuy r9&lt;br /&gt;
&lt;br /&gt;
mainloop:&lt;br /&gt;
jal WriteStack&lt;br /&gt;
jal Display&lt;br /&gt;
jal ClearPrefabMem&lt;br /&gt;
jal ClearGasMem&lt;br /&gt;
sleep 1&lt;br /&gt;
j mainloop&lt;br /&gt;
WriteStack:&lt;br /&gt;
lbn dishMID SSD DishM ReferenceId Average&lt;br /&gt;
bnan dishMID ra&lt;br /&gt;
lbn r0 HASH(&amp;quot;StructureLogicSwitch2&amp;quot;) TRADER_BUY_SEEL_SWITCH Open Average&lt;br /&gt;
brgtz r0 3&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderSellData&lt;br /&gt;
jr 2&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderBuyData&lt;br /&gt;
clrd dishMID&lt;br /&gt;
sll r0 1 8&lt;br /&gt;
or r0 r0 TraderInstruction.WriteTraderData&lt;br /&gt;
putd dishMID 0 r0&lt;br /&gt;
sll r0 30 16&lt;br /&gt;
sll r1 5 8&lt;br /&gt;
or r0 r0 r1&lt;br /&gt;
or r0 r0 sellOrBuy&lt;br /&gt;
putd dishMID 4 r0&lt;br /&gt;
sleep 1&lt;br /&gt;
j ra&lt;br /&gt;
Display:&lt;br /&gt;
lbn r1 SSD DishM SignalID Average&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_SIGID Setting r1&lt;br /&gt;
move dishEntryCount 0&lt;br /&gt;
move prefabMemCursor 0&lt;br /&gt;
move gasMemCursor prefabMemCount&lt;br /&gt;
DisplayLoop:&lt;br /&gt;
beq dishEntryCount 31 ra&lt;br /&gt;
add dishEntryCount dishEntryCount 1&lt;br /&gt;
getd r0 dishMID dishEntryCount&lt;br /&gt;
and r1 r0 OpcodeMask&lt;br /&gt;
beq r1 2 MetaData1&lt;br /&gt;
beq r1 3 MetaData2&lt;br /&gt;
beq r1 4 MetaData3&lt;br /&gt;
beq r1 7 ThingData&lt;br /&gt;
beq r1 8 ThingData&lt;br /&gt;
beq r1 9 GasData&lt;br /&gt;
beq r1 10 ThingData&lt;br /&gt;
beq r1 11 GasData&lt;br /&gt;
beq r1 12 ThingData&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData1:&lt;br /&gt;
sra r2 r0 8 # trader contact type id&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_CON_TYPE_ID Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData2:&lt;br /&gt;
and r2 r0 %11111111_00000000_00000000_00000000&lt;br /&gt;
sra r2 r2 24 # contacted&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_CONTACTED Setting r2&lt;br /&gt;
and r2 r0 %11111111_00000000_00000000&lt;br /&gt;
sra r2 r2 16 # tier&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_TIER Setting r2&lt;br /&gt;
and r2 r0 %11111111_00000000&lt;br /&gt;
sra r2 r2 8 # shuttle type&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_SHUTTLE_TYPE Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData3:&lt;br /&gt;
and r2 r0 %11111111_11111111_00000000&lt;br /&gt;
sra r2 r2 8 # watts to resolve&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) LED_WATT_TO_RESOLVE Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
ThingData:&lt;br /&gt;
get r2 db prefabMemCursor # memory chip&lt;br /&gt;
sra r3 r0 16 # prefab hash&lt;br /&gt;
sbn SLM r2 Setting r3&lt;br /&gt;
add prefabMemCursor prefabMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
GasData:&lt;br /&gt;
get r2 db gasMemCursor # memory chip&lt;br /&gt;
sra r3 r0 16&lt;br /&gt;
sbn SLM r2 Setting r3&lt;br /&gt;
add gasMemCursor gasMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
ClearPrefabMem:&lt;br /&gt;
move sp prefabMemCursor&lt;br /&gt;
ClearPrefabMemLoop:&lt;br /&gt;
bge sp prefabMemCount ra&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn SLM r0 Setting -1&lt;br /&gt;
j ClearPrefabMemLoop&lt;br /&gt;
ClearGasMem:&lt;br /&gt;
move sp gasMemCursor&lt;br /&gt;
ClearGasMemLoop:&lt;br /&gt;
bge sp totalMemCount ra&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn SLM r0 Setting -1&lt;br /&gt;
j ClearGasMemLoop&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Final: Now enable the Medium Satellite Dish, enable the Cargo LG IC Housing(the 2nd script should be running), add some power to the dish and rotate it somehow, then check the monitors and LEDs, you will see the items you can shop(trader will sell) from this trader if the logic switch is &amp;lt;code&amp;gt;closed&amp;lt;/code&amp;gt;, and you will see the items you can sell(trader will buy) from the best trader if the logic switch is &amp;lt;code&amp;gt;open&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The total setup feels like this &lt;br /&gt;
[[File:2025-04-18-1049x333-scrot.png|Overview of Looking Glass Setup]]&lt;br /&gt;
&lt;br /&gt;
=== Shuttle Cargoes Auto Filtration/Interrogation and Call Down ===&lt;br /&gt;
&lt;br /&gt;
To add Auto Filtration/Interrogation ability, prepare following materials in advance. It's build on top of Looking Glass structure of the previous section, take caution.&lt;br /&gt;
&lt;br /&gt;
* Repurpose the IC Housing of the Looking Glass section, label it &amp;lt;code&amp;gt;Trader Filtration IC Housing&amp;lt;/code&amp;gt; or a name you like.&lt;br /&gt;
* 1 [[Kit_(Logic_Memory)|Logic Memory]], install it and label it &amp;lt;code&amp;gt;SLM_ITEM_FILTER&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 1 [[Kit_(Switch)#Switch|Logic Switch]] for switching filter prefab/gas data, label it &amp;lt;code&amp;gt;FILTER_GAS_SWITCH&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 1 [[Console|Console]], install it as Small LED and label it &amp;lt;code&amp;gt;LED_LOCKED_SIGID&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 1 [[Kit_(IC_Housing)|Kit (IC Housing)]], install it and label it &amp;lt;code&amp;gt;Dish Control IC Housing&amp;lt;/code&amp;gt; or a name you like.&lt;br /&gt;
* 1 [[Integrated_Circuit_(IC10)|Integrated Circuit (IC10)]] ready for use.&lt;br /&gt;
* 1 [[Kit_(Logic_Transmitter)|Logic Transmitter]] for sending audio message to your Hardsuit when trader is landing, label it &amp;lt;code&amp;gt;Hardsuit LT 1&amp;lt;/code&amp;gt;, pair it with your [[Hardsuit|hardsuit]] in passive mode.&lt;br /&gt;
* 1 Small Satellite Dish for faster Close/Medium shuttle scanning, optional. If you set it up, the power port must face the same direction as the Medium Dish. If you don't, it just take a few more time to scan with the default Medium Satellite Dish for Close/Medium tier shuttles.&lt;br /&gt;
* 1 Large Satellite Dish for faster Far tier shuttle interrogation, optional. If you set it up, the power port must face the same direction as the Medium Dish. If you don't, it just take a few more time to interrogate with the default Medium Satellite Dish for Far tier shuttles.&lt;br /&gt;
&lt;br /&gt;
Installation:&lt;br /&gt;
&lt;br /&gt;
Install all things above and power on. For the repurposed &amp;lt;code&amp;gt;Trader Filtration IC Housing&amp;lt;/code&amp;gt; code, paste in following code, replacing Looking Glass code(the Lookging Glass's function is still in the code, plus the filtration function), change the &amp;lt;code&amp;gt;DishM&amp;lt;/code&amp;gt;'s name as you like. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color: red&amp;quot;&amp;gt;&lt;br /&gt;
Warning:&lt;br /&gt;
If you use a brand new IC10 chip for the Trader Filtration IC Housing,&lt;br /&gt;
you still need to initialize the IC10 chip with the code of Shuttle Cargoes Looking Glasses IC Stack Initializer,&lt;br /&gt;
or the stack will be empty as a stack is an IC10 '''CHIP''' property.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ICCode|&lt;br /&gt;
define DishM HASH(&amp;quot;Medium Satellite Dish 1&amp;quot;)&lt;br /&gt;
alias dishMID r15&lt;br /&gt;
alias filterGas r14&lt;br /&gt;
alias prefabMemCount r13&lt;br /&gt;
alias totalMemCount r12&lt;br /&gt;
alias prefabMemCursor r11&lt;br /&gt;
alias gasMemCursor r10&lt;br /&gt;
alias sellOrBuy r9&lt;br /&gt;
alias filterItem r7&lt;br /&gt;
alias signalID r6&lt;br /&gt;
move r5 0 # lastSignalID&lt;br /&gt;
mainloop:&lt;br /&gt;
move r8 0 # nextAddress&lt;br /&gt;
WriteStack:&lt;br /&gt;
lbn dishMID HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM ReferenceId Average&lt;br /&gt;
bnan dishMID mainloop&lt;br /&gt;
lbn r0 HASH(&amp;quot;StructureLogicSwitch2&amp;quot;) HASH(&amp;quot;TRADER_SELL_BUY_SWITCH&amp;quot;) Open Average&lt;br /&gt;
brgtz r0 3&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderSellData&lt;br /&gt;
jr 2&lt;br /&gt;
move sellOrBuy TraderInstruction.WriteTraderBuyData&lt;br /&gt;
clrd dishMID&lt;br /&gt;
sll r0 1 8&lt;br /&gt;
or r0 r0 TraderInstruction.WriteTraderData&lt;br /&gt;
putd dishMID r8 r0&lt;br /&gt;
add r8 r8 4&lt;br /&gt;
lbn filterGas HASH(&amp;quot;StructureLogicSwitch2&amp;quot;) HASH(&amp;quot;FILTER_GAS_SWITCH&amp;quot;) Setting Average&lt;br /&gt;
lbn filterItem HASH(&amp;quot;StructureLogicMemory&amp;quot;) HASH(&amp;quot;SLM_ITEM_FILTER&amp;quot;) Setting Average&lt;br /&gt;
breqz filterItem 8 # skip if filter value is 0&lt;br /&gt;
sll r0 filterItem 8&lt;br /&gt;
breqz filterGas 3&lt;br /&gt;
or r0 r0 TraderInstruction.FilterGasContains&lt;br /&gt;
jr 2&lt;br /&gt;
or r0 r0 TraderInstruction.FilterPrefabHashEquals&lt;br /&gt;
putd dishMID r8 r0&lt;br /&gt;
add r8 r8 1&lt;br /&gt;
sll r0 30 16&lt;br /&gt;
add r1 r8 1&lt;br /&gt;
sll r1 r1 8&lt;br /&gt;
or r0 r0 r1&lt;br /&gt;
or r0 r0 sellOrBuy&lt;br /&gt;
putd dishMID r8 r0&lt;br /&gt;
yield&lt;br /&gt;
Display:&lt;br /&gt;
lbn signalID HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM SignalID Average&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_SIGID&amp;quot;) Setting signalID&lt;br /&gt;
move r0 0&lt;br /&gt;
move prefabMemCursor 0&lt;br /&gt;
move gasMemCursor prefabMemCount&lt;br /&gt;
DisplayLoop:&lt;br /&gt;
beq r0 31 ClearMem&lt;br /&gt;
add r0 r0 1&lt;br /&gt;
getd r1 dishMID r0&lt;br /&gt;
and r2 r1 %11111111&lt;br /&gt;
beq r2 2 MetaData1&lt;br /&gt;
beq r2 3 MetaData2&lt;br /&gt;
beq r2 4 MetaData3&lt;br /&gt;
beq r2 7 ThingData&lt;br /&gt;
beq r2 8 ThingData&lt;br /&gt;
beq r2 9 GasData&lt;br /&gt;
beq r2 10 ThingData&lt;br /&gt;
beq r2 11 GasData&lt;br /&gt;
beq r2 12 ThingData&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData1:&lt;br /&gt;
sra r2 r1 8 # trader contact type id&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_CON_TYPE_ID&amp;quot;) Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData2:&lt;br /&gt;
and r2 r1 %11111111_00000000_00000000_00000000&lt;br /&gt;
sra r2 r2 24 # contacted&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_CONTACTED&amp;quot;) Setting r2&lt;br /&gt;
and r2 r1 %11111111_00000000_00000000&lt;br /&gt;
sra r2 r2 16 # tier&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_TIER&amp;quot;) Setting r2&lt;br /&gt;
and r2 r1 %11111111_00000000&lt;br /&gt;
sra r2 r2 8 # shuttle type&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_SHUTTLE_TYPE&amp;quot;) Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
MetaData3:&lt;br /&gt;
and r2 r1 %11111111_11111111_00000000&lt;br /&gt;
sra r2 r2 8 # watts to resolve&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_WATT_TO_RESOLVE&amp;quot;) Setting r2&lt;br /&gt;
and r2 r1 $FFFF_000000&lt;br /&gt;
sra r2 r2 24 # lifetime&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LIFETIME&amp;quot;) Setting r2&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
ThingData:&lt;br /&gt;
get r2 db prefabMemCursor # memory chip&lt;br /&gt;
sra r3 r1 16 # prefab hash&lt;br /&gt;
breqz filterItem 3&lt;br /&gt;
bne filterItem r3 DisplayLoop&lt;br /&gt;
jal LockSignalID&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r2 Setting r3&lt;br /&gt;
add prefabMemCursor prefabMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
GasData:&lt;br /&gt;
get r2 db gasMemCursor # memory chip&lt;br /&gt;
sra r3 r1 16&lt;br /&gt;
sgtz r4 filterItem&lt;br /&gt;
and r4 r4 filterGas&lt;br /&gt;
breqz r4 4&lt;br /&gt;
and r4 filterItem r3&lt;br /&gt;
beqz r4 DisplayLoop&lt;br /&gt;
jal LockSignalID&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r2 Setting r3&lt;br /&gt;
add gasMemCursor gasMemCursor 1&lt;br /&gt;
j DisplayLoop&lt;br /&gt;
LockSignalID:&lt;br /&gt;
lbn r4 HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting Average&lt;br /&gt;
bgtz r4 ra&lt;br /&gt;
beq signalID r5 ra&lt;br /&gt;
sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting signalID&lt;br /&gt;
move r5 signalID&lt;br /&gt;
j ra&lt;br /&gt;
ClearMem:&lt;br /&gt;
move sp prefabMemCursor&lt;br /&gt;
brge sp prefabMemCount 5&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r0 Setting -1&lt;br /&gt;
jr -4&lt;br /&gt;
move sp gasMemCursor&lt;br /&gt;
bge sp totalMemCount mainloop&lt;br /&gt;
add sp sp 1&lt;br /&gt;
peek r0 # memory chip&lt;br /&gt;
sbn HASH(&amp;quot;StructureLogicMemory&amp;quot;) r0 Setting -1&lt;br /&gt;
jr -4&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
For the &amp;lt;code&amp;gt;Dish Control IC Housing&amp;lt;/code&amp;gt; code, paste in following code, change the hash of &amp;lt;code&amp;gt;DishS&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;DishL&amp;lt;/code&amp;gt; names as you have then setted up or not. Search and change the name of &amp;lt;code&amp;gt;Hardsuit LT 1&amp;lt;/code&amp;gt; line if you want to send notification to other devices.&lt;br /&gt;
&lt;br /&gt;
{{ICCode|&lt;br /&gt;
define DishM HASH(&amp;quot;Medium Satellite Dish 1&amp;quot;)&lt;br /&gt;
define DishS 0 # if you have small dish, set hash to HASH(&amp;quot;NAME&amp;quot;)&lt;br /&gt;
define DishL 0 # if you have large dish, set hash to HASH(&amp;quot;NAME&amp;quot;)&lt;br /&gt;
move r0 0&lt;br /&gt;
reset:&lt;br /&gt;
move r15 r0 # lockedSigID&lt;br /&gt;
move r14 0 # horizontal&lt;br /&gt;
move r13 0 # vertical&lt;br /&gt;
move r12 0 # horizontalEdge1&lt;br /&gt;
move r11 0 # horizontalEdge2&lt;br /&gt;
move r10 0 # verticalEdge1&lt;br /&gt;
move r9 0 # verticalEdge2&lt;br /&gt;
move r8 DishM # commDish&lt;br /&gt;
move r7 HASH(&amp;quot;StructureSatelliteDish&amp;quot;) # commDishType&lt;br /&gt;
move r6 DishM # scanDish&lt;br /&gt;
move r5 r7 # scanDishType&lt;br /&gt;
sbn r5 r6 Vertical 60&lt;br /&gt;
sbn r5 r6 BestContactFilter -1&lt;br /&gt;
sbn r5 r6 Setting 500&lt;br /&gt;
mainloop:&lt;br /&gt;
yield&lt;br /&gt;
lbn r0 HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting Average&lt;br /&gt;
lbn r1 r5 r6 SignalID Average&lt;br /&gt;
lbn r2 r5 r6 Horizontal Average&lt;br /&gt;
lbn r3 r5 r6 Vertical Average&lt;br /&gt;
breqz r0 34&lt;br /&gt;
  bne r0 r15 reset&lt;br /&gt;
  lbn r4 HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_TIER&amp;quot;) Setting Average&lt;br /&gt;
  brnez r14 10&lt;br /&gt;
  brge r4 2 5&lt;br /&gt;
    breqz DishS 4&lt;br /&gt;
      move r6 DishS&lt;br /&gt;
      move r5 HASH(&amp;quot;StructureSmallSatelliteDish&amp;quot;)&lt;br /&gt;
      sbn r5 r6 Setting 200&lt;br /&gt;
    breqz DishL 3&lt;br /&gt;
      move r8 DishL&lt;br /&gt;
      move r7 HASH(&amp;quot;StructureLargeSatelliteDish&amp;quot;)&lt;br /&gt;
  sbn r5 r6 BestContactFilter r15&lt;br /&gt;
  sbn r5 r6 On 1&lt;br /&gt;
  beqz r12 ScanHorizontal&lt;br /&gt;
  beqz r11 ScanReverseHorizontal&lt;br /&gt;
  beqz r10 ScanVertical&lt;br /&gt;
  beqz r9 ScanReverseVertical&lt;br /&gt;
  brne r1 -1 3&lt;br /&gt;
    sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting 0&lt;br /&gt;
    j reset&lt;br /&gt;
  yield&lt;br /&gt;
  lbn r0 r7 r8 Idle Average&lt;br /&gt;
  breqz r0 -2&lt;br /&gt;
  sbn r7 r8 BestContactFilter r15&lt;br /&gt;
  sbn r7 r8 Setting 50000&lt;br /&gt;
  sbn r7 r8 Activate 1&lt;br /&gt;
  lbn r0 r7 r8 InterrogationProgress Average&lt;br /&gt;
  brlt r0 1 4&lt;br /&gt;
    sleep 2&lt;br /&gt;
    sbn HASH(&amp;quot;StructureLogicTransmitter&amp;quot;) HASH(&amp;quot;Hardsuit LT 1&amp;quot;) SoundAlert 37&lt;br /&gt;
    sbn HASH(&amp;quot;StructureConsoleLED5&amp;quot;) HASH(&amp;quot;LED_LOCKED_SIGID&amp;quot;) Setting 0&lt;br /&gt;
  j mainloop&lt;br /&gt;
bnez r15 reset&lt;br /&gt;
breq r6 DishM 2 # enter roaming mode&lt;br /&gt;
sbn r5 r6 On 0&lt;br /&gt;
breq r8 DishM 2&lt;br /&gt;
sbn r7 r8 On 0&lt;br /&gt;
sbn HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM On 1&lt;br /&gt;
add r2 r2 2&lt;br /&gt;
mod r2 r2 360&lt;br /&gt;
sbn HASH(&amp;quot;StructureSatelliteDish&amp;quot;) DishM Horizontal r2&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanHorizontal:&lt;br /&gt;
brne r1 -1 4&lt;br /&gt;
  move r12 r14&lt;br /&gt;
  sbn r5 r6 Horizontal r14&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r14 r2&lt;br /&gt;
sub r4 r2 5&lt;br /&gt;
mod r4 r4 360&lt;br /&gt;
sbn r5 r6 Horizontal r4&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanReverseHorizontal:&lt;br /&gt;
brne r1 -1 14&lt;br /&gt;
  beq r14 r12 13&lt;br /&gt;
  move r11 r14&lt;br /&gt;
  slt r4 r11 r12&lt;br /&gt;
  breqz r4 2&lt;br /&gt;
  add r11 r11 360&lt;br /&gt;
  add r4 r11 r12&lt;br /&gt;
  div r4 r4 2&lt;br /&gt;
  mod r4 r4 360&lt;br /&gt;
  sbn r5 r6 Horizontal r4&lt;br /&gt;
  sbn r7 r8 On 1&lt;br /&gt;
  sbn r7 r8 Horizontal r4&lt;br /&gt;
  jal 124&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r14 r2&lt;br /&gt;
add r4 r2 5&lt;br /&gt;
mod r4 r4 360&lt;br /&gt;
sbn r5 r6 Horizontal r4&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanVertical:&lt;br /&gt;
brne r1 -1 4&lt;br /&gt;
  move r10 r13&lt;br /&gt;
  sbn r5 r6 Vertical r13&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r13 r3&lt;br /&gt;
brge r3 89.9 -4&lt;br /&gt;
add r4 r3 5&lt;br /&gt;
sbn r5 r6 Vertical r4&lt;br /&gt;
j mainloop&lt;br /&gt;
ScanReverseVertical:&lt;br /&gt;
brne r1 -1 10&lt;br /&gt;
  beq r13 r10 9&lt;br /&gt;
  move r9 r13&lt;br /&gt;
  select r9 r9 r9 0.01&lt;br /&gt;
  add r4 r9 r10&lt;br /&gt;
  div r4 r4 2&lt;br /&gt;
  sbn r5 r6 Vertical r4&lt;br /&gt;
  sbn r7 r8 Vertical r4&lt;br /&gt;
  jal 124&lt;br /&gt;
  j mainloop&lt;br /&gt;
move r13 r3&lt;br /&gt;
brle r3 0.1 -8&lt;br /&gt;
sub r4 r3 5&lt;br /&gt;
sbn r5 r6 Vertical r4&lt;br /&gt;
j mainloop&lt;br /&gt;
yield&lt;br /&gt;
lbn r0 r5 r6 Idle Average&lt;br /&gt;
breqz r0 -2&lt;br /&gt;
j ra&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The last step is to set the item prefab hash you want. First set the &amp;lt;code&amp;gt;FILTER_GAS_SWITCH&amp;lt;/code&amp;gt; to indicate the type of the filter(&amp;lt;code&amp;gt;Open&amp;lt;/code&amp;gt; is filtering Gas, &amp;lt;code&amp;gt;Close&amp;lt;/code&amp;gt; is filtering Prefab), then set the content of [[Kit_(Logic_Memory)|Logic Memory]] named &amp;lt;code&amp;gt;SLM_ITEM_FILTER&amp;lt;/code&amp;gt; using labeler or any other means, then power both IC Housing on. Then wait for the trader to arrive, there will be a notification send to your Hardsuit or your custom device. The codes will auto locate the shuttle and filter shuttle cargoes and interrogate with it and call it down to your default landing pad.&lt;br /&gt;
&lt;br /&gt;
Don't forget to reset the content of &amp;lt;code&amp;gt;SLM_ITEM_FILTER&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; or something else after trading.&lt;br /&gt;
&lt;br /&gt;
The logic behind the Dish Control is that it scan the signal edge of the filtered out SignalID, instead of inspecting signal strength, so it kind of fast and non-stop rotating. When no filter is specified, it enters roaming mode which rotate clock-wise until filter is specficied and matching shuttle is found.&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23595</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23595"/>
				<updated>2025-09-27T18:59:42Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
''Attention, setting settings from env vars was reported not functional, needs further testing. A functional Docker image is provided by SSUI.''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://youtu.be/UxbiDtEXuxg?si=_j3MumpVcCCk4xGQ tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23594</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23594"/>
				<updated>2025-09-27T12:56:28Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
''Attention, setting settings from env vars was reported not functional, needs further testing. A functional Docker image is provided by SSUI.''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23593</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23593"/>
				<updated>2025-09-27T12:56:14Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
''Attention, setting settings from env vars was reported not functional, needs further testing. A functional Docker image is provided by SSUI.''&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23588</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23588"/>
				<updated>2025-09-26T14:11:56Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, up-to-date Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has updated the [https://github.com/HaseoTM/parkervcp-eggs/blob/master/game_eggs/steamcmd_servers/stationeers/stationeers_vanilla/egg-stationeers.json older] pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23587</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23587"/>
				<updated>2025-09-26T14:00:19Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, up-to-date Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
[https://github.com/BadDucky52 BadDucky52] has made a pterodactyl egg for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/BadDucky52/PterodactylGameEggs/blob/main/egg-stationeers.json Current Pterodactyl Egg by BadDucky52] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23538</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23538"/>
				<updated>2025-09-22T13:10:06Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, up-to-date Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
''As of writing this page, there are no updated Pterodactyl Panel ''chicken parts'' available that function without major editing. Good luck!''&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command). You can foreground it again by using &amp;lt;code fg &amp;lt;/fg&amp;gt;&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23537</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23537"/>
				<updated>2025-09-22T13:04:18Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, up-to-date Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
''As of writing this page, there are no updated Pterodactyl Panel ''chicken parts'' available that function without major editing. Good luck!''&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Command Examples ===&lt;br /&gt;
&lt;br /&gt;
==== '''Linux''' ====&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the Linux commands =====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command).&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
==== '''Windows''' ====&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Additional info about the commands =====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23536</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23536"/>
				<updated>2025-09-22T13:02:59Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, up-to-date Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
''As of writing this page, there are no updated Pterodactyl Panel ''chicken parts'' available that function without major editing. Good luck!''&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Command Examples ==&lt;br /&gt;
&lt;br /&gt;
=== '''Linux''' ===&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Additional info about the Linux commands ====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command).&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
=== '''Windows''' ===&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Additional info about the commands ====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23535</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=23535"/>
				<updated>2025-09-22T13:02:00Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== General Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualized&lt;br /&gt;
* It is NOT recommended also running a Stationeers client, so '''hosting the server on your PC while playing at the same time might lead to issues'''. (there will be issues with router NAT-loopback).&lt;br /&gt;
* 16 or more Gigabytes of RAM. The server will load with less, but will run out of RAM quickly, potentially leading to instability or crashes.&lt;br /&gt;
&lt;br /&gt;
== Quickstarts &amp;amp; Panels ==&lt;br /&gt;
&lt;br /&gt;
=== Docker image by 1Solon ===&lt;br /&gt;
[https://github.com/1Solon Solon1] has made a simple to use, up-to-date Docker image for the current Dedicated Server:&amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/1Solon/stationeers-dedicated-server-docker Current Docker Image by 1Solon] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== StationeersServerUI ===&lt;br /&gt;
&lt;br /&gt;
''Docker + Native Linux &amp;amp; Windows''&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SteamServerUI/StationeersServerUI StationeersServerUI] offers an intuitive webUI, easy configuration, smart backups, full steamcmd handling with auto-updates, &amp;lt;br&amp;gt;&lt;br /&gt;
a discord integration for your community to interact with the server, tons of other helpful features like a remote console '''and works straight out of the box'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Created in 2024 with love and attention to detail, updated regularly by [https://github.com/JacksonTheMaster JacksonTheMaster] &amp;amp; the [https://github.com/orgs/SteamServerUI/people StationeersServerUI Team]&lt;br /&gt;
&lt;br /&gt;
=== Pterodactyl ===&lt;br /&gt;
''As of writing this page, there are no updated Pterodactyl Panel ''chicken parts'' available that function without major editing. Good luck!''&lt;br /&gt;
&lt;br /&gt;
== DIY Solutions ==&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
** '''Linux: Glibc 2.38''' (Ubuntu '''24'''.04 LTS, Debian '''Bookworm''' (12), Debian '''Trixie''' (13))&lt;br /&gt;
** '''Windows: Microsoft Visual C++ 2015, 2017 and 2019 runtime''' [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
&lt;br /&gt;
It is, of course, possible to run the server without external images or tools simply by downloading it from SteamCMD and executing it. Everything you ''should'' need is Documented below.&lt;br /&gt;
&lt;br /&gt;
=== Getting the server files ===&lt;br /&gt;
SteamCmd installed on the operating system you are running the server with. See [https://developer.valvesoftware.com/wiki/SteamCMD The SteamCMD Documentation]&lt;br /&gt;
''(This is a command line tool)''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
''(The &amp;quot;stable&amp;quot; branch is what you Download by default when you select Stationeers in your Steam Library)''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''For getting back from beta to public use -beta public, SteamCMD has trouble with caching sometimes''&lt;br /&gt;
&lt;br /&gt;
=== Default ports ===&lt;br /&gt;
27016: Game port (UDP).&lt;br /&gt;
27015: Steam update port. (UDP).&lt;br /&gt;
&lt;br /&gt;
=== Server Startup Arguments (Post September 2025)===&lt;br /&gt;
&lt;br /&gt;
With the release of the [https://store.steampowered.com/news/app/544550/view/533235259603419415 terrain update], the flags the Dedicated Server accepts where changed. &amp;lt;br&amp;gt;&lt;br /&gt;
''If you are running an older version (such as the prerocket or preterrain branch, ask on the Stationeers Discord server in either #modding or #dedicated-server''''&lt;br /&gt;
&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Flag !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required. This is the name of your save.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- '''When you add optional arguments, you cannot leave one out.''' &amp;lt;br&amp;gt; For example, &amp;lt;stationname&amp;gt; [worldid] [startlocation] '''would not work''', &amp;lt;br&amp;gt; you would need to add [difficulty] and [startcondition] too.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logFile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;server.log&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-settings&amp;lt;/code&amp;gt;&lt;br /&gt;
| see below&lt;br /&gt;
| Changes the default settings to desired values e.g -settings ServerName &amp;quot;MyNewStationeersServer&amp;quot;. '''For a full list and examples, see below.'''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== World types (September 2025) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! World Name !! WorldID !! Difficulty IDs !! StartCondition IDs !! StartLocation IDs&lt;br /&gt;
|-&lt;br /&gt;
| Lunar (The Moon)&lt;br /&gt;
| &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;LunarSpawnCraterVesper, LunarSpawnMontesUmbrarum, LunarSpawnCraterNox, LunarSpawnMonsArcanus&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mars&lt;br /&gt;
| &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;DefaultStart, Brutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MarsSpawnCanyonOverlook, MarsSpawnButchersFlat, MarsSpawnFindersCanyon, MarsSpawnHellasCrags, MarsSpawnDonutFlats&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Europa&lt;br /&gt;
| &amp;lt;code&amp;gt; Europa3&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaDefault, EuropaBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;EuropaSpawnIcyBasin, EuropaSpawnGlacialChannel, EuropaSpawnBalgatanPass, EuropaSpawnFrigidHighlands, EuropaSpawnTyreValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Mimas&lt;br /&gt;
| &amp;lt;code&amp;gt; MimasHerschel&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasDefault, MimasBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;MimasSpawnCentralMesa, MimasSpawnHarrietCrater, MimasSpawnCraterField, MimasSpawnDustBowl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Vulcan&lt;br /&gt;
| &amp;lt;code&amp;gt; Vulcan &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanDefault, VulcanBrutal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VulcanSpawnVestaValley, VulcanSpawnEtnasFury, VulcanSpawnIxionsDemise, VulcanSpawnTitusReach&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Venus&lt;br /&gt;
| &amp;lt;code&amp;gt; Venus &amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;Creative, Easy, Normal, Stationeer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusDefault, VulcanBrutal&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;Note: Yes, Venus is using '''Vulcan'''Brutal&lt;br /&gt;
| &amp;lt;code&amp;gt;VenusSpawnGaiaValley, VenusSpawnDaisyValley, VenusSpawnFaithValley, VenusSpawnDuskValley&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Inventory Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial1 &amp;lt;/code&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Connection Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial2 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Atmospherics Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Tutorial3 &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Airlocks Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Airlock &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Furnace Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; FurnaceBasics &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Manufacturing Tutorial&lt;br /&gt;
| &amp;lt;code&amp;gt; Manufacturing &amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Configuration =====&lt;br /&gt;
In your server directory, a file called setting.xml will be created once you start it up for the first time. &amp;lt;br&amp;gt;&lt;br /&gt;
While you can ''technically'' edit that, '''this approach is not guaranteed to work (bugged for a while)'''. &amp;lt;br&amp;gt;&lt;br /&gt;
'''It is recommended to use the -setting flag instead.'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Setting !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ServerVisible&lt;br /&gt;
| true / false&lt;br /&gt;
| Shows / hides the server in the ingame server list&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| GamePort&lt;br /&gt;
| 27016 / any port&lt;br /&gt;
| The port that players connect to&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UpdatePort&lt;br /&gt;
| 27015 / any port&lt;br /&gt;
| Steam update port. ''Unclear if this is actually used by the game at the moment.''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UPNPEnabled&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable UniversalPlugAndPlay (Auto port forwarding, your router must support)&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerName&lt;br /&gt;
| &amp;quot;My Game Server&amp;quot; / your desired server name&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerPassword&lt;br /&gt;
| &amp;quot;MySuperSecurePassword&amp;quot; /  your desired server password&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerAuthSecret&lt;br /&gt;
| &amp;quot;MySuperSecureSecret&amp;quot; /  your desired admin secret&lt;br /&gt;
| Description&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| ServerMaxPlayers&lt;br /&gt;
| 1-20&lt;br /&gt;
| The number of available player slots. Shouln't exceed 20.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoSave&lt;br /&gt;
| true / false&lt;br /&gt;
| Enable or disable autosaves&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| SaveInterval&lt;br /&gt;
| 300&lt;br /&gt;
| Time in seconds between each autosave. Shouldn't be below 60 sec.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| AutoPauseServer&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should auto pause or not if no players are connected&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| UseSteamP2P&lt;br /&gt;
| true / false&lt;br /&gt;
| Weather the server should allow SteamP2P connections. Keep this disabled.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| StartLocalHost&lt;br /&gt;
| true / false&lt;br /&gt;
| Do not change this, this is required to be able to connect.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Command Examples ==&lt;br /&gt;
&lt;br /&gt;
=== '''Linux''' ===&lt;br /&gt;
Note: Logging to console on Linux is slightly broken - we recommend to log to a log file instead and &amp;lt;code&amp;gt; tail -f &amp;lt;/code&amp;gt; that&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Mars2 &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; '''without''' password and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyMarsMap Mars2 -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, '''does not advertise itself in the server list''' but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;./rocketstation_DedicatedServer.x86_64 -file start MyLunarMap Lunar -logFile &amp;quot;./server.log&amp;quot; -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false LocalIpAddress 0.0.0.0 &amp;amp; tail -f server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Additional info about the Linux commands ====&lt;br /&gt;
* LocalIpAddress 0.0.0.0 is required to allow the server to bind to all network interfaces on your Linux Server. On some distros, you might wanna specify the actual interface IP instead.&lt;br /&gt;
* The server starts with the specified values, but technically in the background (&amp;amp; sign at the end of the command).&lt;br /&gt;
* tail -f debug.log runs in the foreground, showing the log output in your current attached terminal.&lt;br /&gt;
* When you now Ctrl+C, '''the server will not stop''' - instead it will remain in the '''background as long as your session is open''' If you, for example, disconnect your SSH connection the server will stop because an ending SSH connection typically sends a SIGHUP (hangup signal) to all processes in the session, including background processes,. You might wanna look into using [https://www.youtube.com/watch?v=nTqu6w2wc68 tmux].&lt;br /&gt;
&lt;br /&gt;
=== '''Windows''' ===&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt; , advertises itself in the server with 6 player slots in the server list as &amp;lt;code&amp;gt; MyLunarServer &amp;lt;/code&amp;gt; on port &amp;lt;/code&amp;gt; 27016 &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible true GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explanation: ''Server starts a new Map on &amp;lt;code&amp;gt; Lunar &amp;lt;/code&amp;gt; saved to &amp;lt;code&amp;gt; saves/MyLunarMap &amp;lt;/code&amp;gt;, does NOT advertise itself in the server list but is available for 6 players to direct connection via &amp;lt;code&amp;gt; &amp;lt;serverIP&amp;gt;:27016 &amp;lt;/code&amp;gt; &amp;lt;/code&amp;gt; with password &amp;lt;code&amp;gt; MySuperSecurePassword &amp;lt;/code&amp;gt; and saves every 5 minutes.&amp;lt;br&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;.\rocketstation_DedicatedServer.exe -file start MyLunarMap Lunar -settings StartLocalHost true ServerVisible false GamePort 27016 UPNPEnabled false ServerName &amp;quot;MyHiddenLunarServer&amp;quot; ServerPassword &amp;quot;MySuperSecurePassword&amp;quot; ServerMaxPlayers 6 AutoSave true SaveInterval 300 ServerAuthSecret &amp;quot;MySuperSecureSecret&amp;quot; UpdatePort 27015 AutoPauseServer true UseSteamP2P false&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Additional info about the commands ====&lt;br /&gt;
The server will stay running until you close the terminal. When you close (don't logoff) a RDP session, the server does not stop.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administrator: run a command on the server ==&lt;br /&gt;
&lt;br /&gt;
The same &amp;lt;code&amp;gt; ServerAuthSecret &amp;lt;/code&amp;gt; parameter must be added to the -setting flag (see above) and inside the clients setting.xml ''(&amp;quot;client&amp;quot;=your local PC, '''not''' the server)'' &lt;br /&gt;
&lt;br /&gt;
All commands are typed in the client console (F3) and prefixed by a &amp;lt;code&amp;gt; serverrun &amp;lt;/code&amp;gt; like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; serverrun say Hello World &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Terminal Console===&lt;br /&gt;
When running the server from windows, you can type commands in the terminal application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays the list of commands.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
''removed very outdated information - please ask on the Stationeers Discord server in either #modding or #dedicated-server''&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md%20Official%20Server%20Guide VERY Outdated official guide]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22947</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22947"/>
				<updated>2025-08-04T01:28:44Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: updated Beta WorldIDs&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualised, &lt;br /&gt;
** NOT recommended also running a Stationeers client (there will be issues with router NAT-loopback).&lt;br /&gt;
** Linux Glibcxx 3.4.29 &amp;amp; Glibc 2.34 (Ubuntu 22.04 LTS)&lt;br /&gt;
** if running on Windows you must have the Microsoft Visual C++ 2015, 2017 and 2019 runtime installed, [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
* ~16GB RAM (Tested and confirmed on Linux). 8GB or less and the server won't load. &lt;br /&gt;
&lt;br /&gt;
== Getting the server files ==&lt;br /&gt;
SteamCmd on Windows and Linux&amp;lt;br&amp;gt;&lt;br /&gt;
https://developer.valvesoftware.com/wiki/SteamCMD&lt;br /&gt;
&lt;br /&gt;
''This is a command line tool''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;For getting back from beta to public use -beta public ,steamcmd has trouble with caching&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Default ports ==&lt;br /&gt;
8081: Meta Server port (TCP).&amp;lt;br&amp;gt;&lt;br /&gt;
27016: Game port (UDP).&amp;lt;br&amp;gt;&lt;br /&gt;
27015: Steam update port (UDP).&lt;br /&gt;
&lt;br /&gt;
== Server Startup Arguments ==&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Parameter !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-NEW&amp;lt;/code&amp;gt;&lt;br /&gt;
| Worldtype (string)&lt;br /&gt;
| Starts a new game with the specified world type automatically from launch. Must provide a valid world type as an argument.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-NEWGAME&amp;lt;/code&amp;gt;&lt;br /&gt;
| Worldtype (string)&lt;br /&gt;
| Same as &amp;lt;code&amp;gt;-NEW&amp;lt;/code&amp;gt;. Starts a new game with the specified world type.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-LOAD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Savefolder (string)&lt;br /&gt;
| Loads a saved world file. A second argument can be provided with world type (see below); if loading fails, it will create a new world instead.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-LOADGAME&amp;lt;/code&amp;gt;&lt;br /&gt;
| Savefolder (string)&lt;br /&gt;
| Same as &amp;lt;code&amp;gt;-LOAD&amp;lt;/code&amp;gt;. Loads a saved world file or creates a new world if loading fails.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-LOADLATEST&amp;lt;/code&amp;gt;&lt;br /&gt;
| Savefolder (string)&lt;br /&gt;
| Loads the latest save or backup from the specified save folder (based on &amp;lt;code&amp;gt;world.xml&amp;lt;/code&amp;gt; datestamp). A second argument can specify a world type to fall back to if loading fails.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;(BETA, NEW TERRAIN ONLY) -file start&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;stationname&amp;gt; [worldid] [difficulty] [startcondition] [startlocation]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tries to load the latest save for the specified station. If not found, starts a new world with the given parameters and saves it.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;stationname&amp;lt;/code&amp;gt;: Required.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;worldid&amp;lt;/code&amp;gt;: Optional, but required to start a new game if no existing station is found.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;difficulty&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;Normal&amp;quot; if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startcondition&amp;lt;/code&amp;gt;: Optional, defaults to the default start condition for the world setting if not provided.&amp;lt;br&amp;gt;&lt;br /&gt;
- &amp;lt;code&amp;gt;startlocation&amp;lt;/code&amp;gt;: Optional, defaults to &amp;quot;DefaultStartLocation&amp;quot; if not provided.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-JOIN&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;[address]:[port]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Joins a client to the server at the specified address and port.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-JOINGAME&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;[address]:[port]&amp;lt;/code&amp;gt;&lt;br /&gt;
| Same as &amp;lt;code&amp;gt;-JOIN&amp;lt;/code&amp;gt;. Joins a client to the server.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-SETTINGSPATH&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies the absolute base directory for a custom profile. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-SETTINGSPATH C:\Profile\Player1&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
- Config Path: &amp;lt;code&amp;gt;C:\Profile\Player1\default.ini&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
- Save Path: &amp;lt;code&amp;gt;C:\Profile\Player1\saves\[worldname]&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;-logfile&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;quot;path&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Specifies a custom log file path if &amp;lt;code&amp;gt;output_log.txt&amp;lt;/code&amp;gt; is not used. Example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logfile C:\Logs\server.log&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
World types (August 2025)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Stable&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;Tutorial1, Tutorial2, Tutorial3, LowEarthOrbit, Moon, Mars, Europa, Mimas, Vulcan, Space, Venus, 64Test, 128Test, 4096Test, GrandCanyon&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| Beta WorldIDs&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;LowEarthOrbit, Mars2, Europa3, MimasHerschel, Vulcan, Venus, Lunar, Tutorial1, Tutorial2, Tutorial3&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
batchmode, nographics and logfile are Unity3D commands.&lt;br /&gt;
&lt;br /&gt;
https://docs.unity3d.com/Manual/CommandLineArguments.html&lt;br /&gt;
&lt;br /&gt;
[[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md Official Server Guide]]&lt;br /&gt;
&lt;br /&gt;
=== Logging ===&lt;br /&gt;
&lt;br /&gt;
* Linux &amp;lt;code&amp;gt;rocketstation_DedicatedServer.x86_64 2&amp;gt;&amp;amp;1 | tee filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be --a or --append in front of the filename to keep appending to the logfile &lt;br /&gt;
* Windows (powershell) &amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe &amp;amp;&amp;gt; | tee -file filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be -Append at the end to keep appending to the logfile&lt;br /&gt;
** Command Prompt &amp;lt;code&amp;gt;powershell rocketstation_DedicatedServer.exe ^| tee -File filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quickstart ==&lt;br /&gt;
https://github.com/mandusm/stationeers-dedicated-server/tree/main&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Dedicated server starts new Mars world. Autosave every 5 mins to Mars1. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mars1 Mars -SETTINGSPATH &amp;quot;C:\Server\User1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave every 5 mins. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave  every 5 mins. C:\Profile\Player1\saves\Mothership &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -SETTINGSPATH &amp;quot;C:\Profile\Player1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-logfile&amp;lt;/code&amp;gt; syntax &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;C:\Server_Path\rocketstation_DedicatedServer_Data\output_log.txt&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; directory structure. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Note:''' ''BaseDirectory'' is by default in SteamApps/common/Stationeers Dedicated Server/''&amp;lt;Contents of BaseDirectory&amp;gt;'' if installed with SteamCMD&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Linux:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''/saves/myworld/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Windows:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''\saves\myworld\&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Details:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
In the world directory named &amp;quot;myworld&amp;quot;, these files must be present:&lt;br /&gt;
* world.bin&lt;br /&gt;
* world.xml&lt;br /&gt;
* world_meta.xml&lt;br /&gt;
'''Note:''' The names of these files ''do not'' correspond to your custom world name. These will always be called world.bin etc..&amp;lt;br&amp;gt;&lt;br /&gt;
The server will automatically generate these upon first start. If you are importing another world, make sure these are in place in the correct directory for the server to load them.&amp;lt;br&amp;gt;&lt;br /&gt;
There is also one more file that will be created:&lt;br /&gt;
* worldsettings.xml&lt;br /&gt;
&lt;br /&gt;
===== Configuration from setting.xml =====&lt;br /&gt;
setting.xml will be created once you start it up for the first time. &amp;lt;u&amp;gt;Command parameters reset setting.xml to default&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;hr&amp;gt;''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
Example Setting.xml&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;SettingData xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;AutoSave&amp;gt;true&amp;lt;/AutoSave&amp;gt;&lt;br /&gt;
  &amp;lt;SaveInterval&amp;gt;300&amp;lt;/SaveInterval&amp;gt;&lt;br /&gt;
  &amp;lt;SavePath /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;StartingConditions&amp;gt;Default&amp;lt;/StartingConditions&amp;gt;&lt;br /&gt;
  &amp;lt;RespawnCondition&amp;gt;Easy&amp;lt;/RespawnCondition&amp;gt;&lt;br /&gt;
  &amp;lt;HungerRate&amp;gt;0.5&amp;lt;/HungerRate&amp;gt;&lt;br /&gt;
  &amp;lt;SunOrbitPeriod&amp;gt;1&amp;lt;/SunOrbitPeriod&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;ResearchPoolKey&amp;gt;ResearchOff&amp;lt;/ResearchPoolKey&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;RoomControlTickSpeed&amp;gt;1&amp;lt;/RoomControlTickSpeed&amp;gt;&lt;br /&gt;
  &amp;lt;WorldOrigin&amp;gt;false&amp;lt;/WorldOrigin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ServerName&amp;gt;Stationeers&amp;lt;/ServerName&amp;gt;&lt;br /&gt;
  &amp;lt;StartLocalHost&amp;gt;true&amp;lt;/StartLocalHost&amp;gt;&lt;br /&gt;
  &amp;lt;ServerVisible&amp;gt;true&amp;lt;/ServerVisible&amp;gt;&lt;br /&gt;
  &amp;lt;ServerPassword /&amp;gt;&lt;br /&gt;
  &amp;lt;AdminPassword&amp;gt;randomstringhere&amp;lt;/AdminPassword&amp;gt;&lt;br /&gt;
  &amp;lt;ServerMaxPlayers&amp;gt;10&amp;lt;/ServerMaxPlayers&amp;gt;&lt;br /&gt;
  &amp;lt;UpdatePort&amp;gt;27015&amp;lt;/UpdatePort&amp;gt;&lt;br /&gt;
  &amp;lt;GamePort&amp;gt;27016&amp;lt;/GamePort&amp;gt;&lt;br /&gt;
  &amp;lt;UPNPEnabled&amp;gt;true&amp;lt;/UPNPEnabled&amp;gt;&lt;br /&gt;
  &amp;lt;DisconnectTimeout&amp;gt;10000&amp;lt;/DisconnectTimeout&amp;gt;&lt;br /&gt;
  &amp;lt;NetworkDebugFrequency&amp;gt;500&amp;lt;/NetworkDebugFrequency&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&amp;lt;br&amp;gt;''Case Sensitive''&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingConditions&amp;gt;&lt;br /&gt;
| Default, Minimal, Vulcan, Venus, BareBones&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this, define custom worldtype''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchPoolKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;SunOrbitPeriod&amp;gt;&lt;br /&gt;
| default=1&lt;br /&gt;
| Multiplier on the time it takes for the sun to orbit, default is 20 minutes, 10 minute day 10 night.&lt;br /&gt;
|-&lt;br /&gt;
! colspan=3 | Undocumented&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;UseCustomWorkThreadsCount&amp;gt;false&amp;lt;/UseCustomWorkThreadsCount&amp;gt;&lt;br /&gt;
| true, false&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxWorkerThreads&amp;gt;100&amp;lt;/MaxWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=100&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxCompletionPortThreads&amp;gt;50&amp;lt;/MaxCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=50&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;CoroutineTimeBudget&amp;gt;1&amp;lt;/CoroutineTimeBudget&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Savegames ==&lt;br /&gt;
=== Configuration from worldsettings.xml ===&lt;br /&gt;
'''Undocumented feature'''&lt;br /&gt;
&lt;br /&gt;
''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;GameMode&amp;gt;&lt;br /&gt;
| Creative, Survival&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;HungerRate&amp;gt;&lt;br /&gt;
| default=0.25&lt;br /&gt;
| Multiplier on the amount of hunger generated per game tick.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingCondition&amp;gt;&lt;br /&gt;
| N/A&lt;br /&gt;
| Can only be defined in custom world before generation&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Configuration from world.xml ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Server Administrator ==&lt;br /&gt;
&lt;br /&gt;
===In Game Admin===&lt;br /&gt;
&amp;lt;ServerAuthSecret/&amp;gt; parameter must be added to setting.xml on both server and client and be the same token.&lt;br /&gt;
&lt;br /&gt;
All commands are typed in the chat (F3) by default and prefixed by &amp;lt;code&amp;gt;serverrun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Program Console===&lt;br /&gt;
You can type commands in the running application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays helpful stuff&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|-&lt;br /&gt;
| CLEAR&lt;br /&gt;
| Clears all console text ||&lt;br /&gt;
|-&lt;br /&gt;
| QUIT&lt;br /&gt;
| immediately quits the game without any prompts&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| EXIT&lt;br /&gt;
| rowspan=2 | Leaves a game session and goes back to 'StartMenu'&lt;br /&gt;
| rowspan=2 | &lt;br /&gt;
|-&lt;br /&gt;
| LEAVE&lt;br /&gt;
|-&lt;br /&gt;
| NEW&lt;br /&gt;
| rowspan=2 | Starts a new game at specific world automatically from launch.Must provide world name as argument&lt;br /&gt;
| rowspan=2 | worldName&lt;br /&gt;
|-&lt;br /&gt;
| NEWGAME&lt;br /&gt;
|-&lt;br /&gt;
| LOAD&lt;br /&gt;
| rowspan=2 | Loads a saved world file&lt;br /&gt;
| rowspan=2 | &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| LOADGAME &lt;br /&gt;
|-&lt;br /&gt;
| LOADLATEST&lt;br /&gt;
| Loads the latest saved file, including auto saves&lt;br /&gt;
| &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| JOIN&lt;br /&gt;
| rowspan=2 | Joins a client to the server&lt;br /&gt;
| rowspan=2 | [address]:[port]&lt;br /&gt;
|-&lt;br /&gt;
| JOINGAME &lt;br /&gt;
|-&lt;br /&gt;
| STEAM&lt;br /&gt;
| Commands to test Facepunch API. Just checks if steam is initialised and if DLC is purchased&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| LISTNETWORKDEVICES&lt;br /&gt;
| No help text :(&lt;br /&gt;
| id&lt;br /&gt;
|-&lt;br /&gt;
| TESTBYTEARRAY&lt;br /&gt;
| Tests every item in world to check its network read/write functions are parallel. Only enabled in Editor.&lt;br /&gt;
Supply a reference Id to check ONLY that item&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ROCKETBINARY&lt;br /&gt;
| Starts logging the size of each section of a delta update.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* toggleloglength&lt;br /&gt;
* togglelogbps&lt;br /&gt;
|-&lt;br /&gt;
| IMGUI&lt;br /&gt;
| Toggles ImguiInWorldTestCube on/off&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ATMOS&lt;br /&gt;
| Enables atmosphere debugging&lt;br /&gt;
| Arguments:&lt;br /&gt;
* pipe&lt;br /&gt;
* world&lt;br /&gt;
* room&lt;br /&gt;
* global&lt;br /&gt;
* thing&lt;br /&gt;
|-&lt;br /&gt;
| THING&lt;br /&gt;
| Thing related commands&lt;br /&gt;
| Arguments:&lt;br /&gt;
* No args returns total thing count&lt;br /&gt;
* find&lt;br /&gt;
* delete&lt;br /&gt;
* spawn&lt;br /&gt;
|-&lt;br /&gt;
| KEYBINDINGS&lt;br /&gt;
| Displays all the keybindings bound to LocalHuman&lt;br /&gt;
| Arguments:&lt;br /&gt;
* reset (Resets the keybindings stack. Can help solve input issues)&lt;br /&gt;
|-&lt;br /&gt;
| RESET&lt;br /&gt;
| Restarts the application&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| VERSION&lt;br /&gt;
| Returns the game version&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| LOGTOCLIPBOARD&lt;br /&gt;
| Copies the content of the console buffer to the system clipboard buffer&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| KICK&lt;br /&gt;
| Kick clients from server commands&lt;br /&gt;
| clientId - disconnects the client from the game&lt;br /&gt;
|-&lt;br /&gt;
| BAN&lt;br /&gt;
| Bans a client from the server (server only command)&lt;br /&gt;
| clientId&lt;br /&gt;
|-&lt;br /&gt;
| UPNP&lt;br /&gt;
| returns universal plug and play (upnp) state&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| NETWORK&lt;br /&gt;
| returns the current network status&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| PAUSE&lt;br /&gt;
| will pause/unpause the game (including for clients)&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* true&lt;br /&gt;
* false&lt;br /&gt;
|-&lt;br /&gt;
| SAY&lt;br /&gt;
| sends a message to all connected players&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SAVE&lt;br /&gt;
| Saves the current game to specified path&lt;br /&gt;
| Arguments:&lt;br /&gt;
* &amp;lt;foldername&amp;gt;&lt;br /&gt;
* delete &amp;lt;foldername&amp;gt;&lt;br /&gt;
* list&lt;br /&gt;
|-&lt;br /&gt;
| LOG&lt;br /&gt;
| Dumps all the logs to a file&lt;br /&gt;
| Arguments:&lt;br /&gt;
&amp;lt;logname&amp;gt; (optional)&lt;br /&gt;
clear&lt;br /&gt;
|-&lt;br /&gt;
| DISCORD&lt;br /&gt;
| Interaction with the Discord SDK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SETTINGS&lt;br /&gt;
| Change the settings.xml. e.g settings servermaxplayers 5&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
&amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| NETCONFIG&lt;br /&gt;
| Change the master server setting in NetConfig.xml. e.g netconfig ip 127.0.0.1&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
* &amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| SETTINGSPATH&lt;br /&gt;
| Sets the default settings path to a new location. Launch command only. If none found default is used.&lt;br /&gt;
| &amp;lt;full-directory-path&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|  DIFFICULTY &lt;br /&gt;
| Sets game difficulty to one of the predefined settings&lt;br /&gt;
|  -DIFFICULTY [&amp;lt;difficulty&amp;gt;]&lt;br /&gt;
|-&lt;br /&gt;
| REGENERATEROOMS&lt;br /&gt;
| Regenerates all rooms for the world&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| STORM START&lt;br /&gt;
| Starts weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| STORM STOP&lt;br /&gt;
| Stops weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| DEBUGTHREADS&lt;br /&gt;
| Show the times that the worker threads take to run.&lt;br /&gt;
| GameTick&lt;br /&gt;
|-&lt;br /&gt;
| STATUS&lt;br /&gt;
| Displays a bunch of info to give insight into state of server.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| MASTERSERVER&lt;br /&gt;
| Commands to help with interacting with the Master Server.&lt;br /&gt;
| refresh&lt;br /&gt;
|-&lt;br /&gt;
| DELETELOOSEITEMS&lt;br /&gt;
| Removes all items in world that isn't in a slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| SUNTIME&lt;br /&gt;
| Set the time of day between 0 and 1 (e.g. 0 is sunrise, 0.5 is sunset)&lt;br /&gt;
| Arguments:&lt;br /&gt;
* time&lt;br /&gt;
|-&lt;br /&gt;
| CLEANUPPLAYERS&lt;br /&gt;
| Cleans up player bodies&lt;br /&gt;
| Arguments:&lt;br /&gt;
* dead&lt;br /&gt;
* disconnected&lt;br /&gt;
* all&lt;br /&gt;
|-&lt;br /&gt;
| TEST&lt;br /&gt;
| No help text :(&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
'''Undocumented feature'''&amp;lt;br&amp;gt;&lt;br /&gt;
Mods are supported on Dedicated servers, however it requires additional manual configuration - Necessitating direct file access and editing on the dedicated server.  To install mods, you'll need to manually obtain the mod data first - Either from the Steam Workshop, or built yourself.  Upload/Store the mods in a specific folder on the server - You will also likely want to edit default.ini on the server to point to a particular server folder rather then the default directory, defined below.  Then manually add ModConfig.xml in the root directory of the server executible files, and manually edit the file to add each individual mod.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== modconfig.xml ===&lt;br /&gt;
Place a modconfig.xml in the serverfiles root (next to executable).  Filename case is significant on Linux.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;Mods&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;1&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath /&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourFirstModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourSecondModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
  &amp;lt;/Mods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Local mods have Id 0.&amp;lt;br&amp;gt;&lt;br /&gt;
So try and keep the same structure in the server to prevent complications.&amp;lt;br&amp;gt;&lt;br /&gt;
''1 is core file and always need to be enabled''&lt;br /&gt;
&lt;br /&gt;
===Alternate ModConfig.xml===&lt;br /&gt;
If the above modconfig don't work, try this one:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Mods&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1001&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1002&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
    &amp;lt;/Mods&amp;gt;&lt;br /&gt;
    &amp;lt;DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;/DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;LocalMods&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;FirstModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1001&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;SecondModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1002&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
    &amp;lt;/LocalMods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Storing Mods ===&lt;br /&gt;
&lt;br /&gt;
 WIN: C:\Users\'''USERNAME_HERE'''\Documents\My Games\Stationeers\mods\&lt;br /&gt;
 LIN: /home/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
 OSX: /Users/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
&lt;br /&gt;
Mods folder root is displaced by the &amp;lt;SavePath&amp;gt; setting in setting.xml,&amp;lt;br&amp;gt;&lt;br /&gt;
not sure if it's a bug or feature&lt;br /&gt;
&lt;br /&gt;
 \Modname or workshopid\About\&lt;br /&gt;
(file containing description about mod and thumbnail)&lt;br /&gt;
 \Modname or workshopid\GameData\&lt;br /&gt;
(files you want to &amp;lt;u&amp;gt;append&amp;lt;/u&amp;gt; to the core gamedata)&lt;br /&gt;
&lt;br /&gt;
It's recommended to only put entries in the mod files you want to add or replace,&amp;lt;br&amp;gt;&lt;br /&gt;
do not try and replace the whole file for compatibility issues and errors.&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: There seems to be some changes as to how where the dedicated server loads mods from. The above solution seems to be deprecated, see below if above solution doesn't work.&lt;br /&gt;
&lt;br /&gt;
WIN:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
LIN:/home/'''USERNAME_HERE'''/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
OSX:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Mods folder in /StreamingAssets/ is not premade, but needs to be added manually. Put the mods you want in here, and the server will load them. It is unknown if a ModConfig is even needed when doing it this way.&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22572</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22572"/>
				<updated>2025-03-30T00:52:15Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: removed &amp;quot;logging is broken&amp;quot; statement as it's 2025, things havn't really changed regading console input but logging works on all OS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualised, &lt;br /&gt;
** NOT recommended also running a Stationeers client (there will be issues with router NAT-loopback).&lt;br /&gt;
** Linux Glibcxx 3.4.29 &amp;amp; Glibc 2.34 (Ubuntu 22.04 LTS)&lt;br /&gt;
** if running on Windows you must have the Microsoft Visual C++ 2015, 2017 and 2019 runtime installed, [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
* ~16GB RAM (Tested and confirmed on Linux). 8GB or less and the server won't load. &lt;br /&gt;
&lt;br /&gt;
== Getting the server files ==&lt;br /&gt;
SteamCmd on Windows and Linux&amp;lt;br&amp;gt;&lt;br /&gt;
https://developer.valvesoftware.com/wiki/SteamCMD&lt;br /&gt;
&lt;br /&gt;
''This is a command line tool''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;For getting back from beta to public use -beta public ,steamcmd has trouble with caching&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Default ports ==&lt;br /&gt;
8081: Meta Server port (TCP).&amp;lt;br&amp;gt;&lt;br /&gt;
27016: Game port (UDP).&amp;lt;br&amp;gt;&lt;br /&gt;
27015: Steam update port (UDP).&lt;br /&gt;
&lt;br /&gt;
== Server Startup Arguments ==&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! parameter !! value !! etc&lt;br /&gt;
|-&lt;br /&gt;
| -NEW&lt;br /&gt;
| rowspan=2 | Worldtype (string) &lt;br /&gt;
| rowspan=2 | Starts a new game at specific world automatically from launch. Must provide world type (see below) as argument&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| -NEWGAME&lt;br /&gt;
|-&lt;br /&gt;
| -LOAD&lt;br /&gt;
| rowspan=2 | savefolder (string)&lt;br /&gt;
| rowspan=2 | Loads a saved world file, a second argument can be given with worldtype (see below) when loading fails it will make a new world instead.&lt;br /&gt;
|-&lt;br /&gt;
| -LOADGAME&lt;br /&gt;
|-&lt;br /&gt;
| -LOADLATEST&lt;br /&gt;
| &lt;br /&gt;
| Loads the last save or backup from the save name\folder specified (checking world.xml datestamp), second argument is worldtype to fallback to when loading fails.&lt;br /&gt;
|-&lt;br /&gt;
| -JOIN&lt;br /&gt;
| rowspan=2 | [address]:[port]&lt;br /&gt;
| rowspan=2 | Joins a client to the server&lt;br /&gt;
|-&lt;br /&gt;
| -JOINGAME&lt;br /&gt;
|-&lt;br /&gt;
| -SETTINGSPATH&lt;br /&gt;
| &amp;quot;path&amp;quot;&lt;br /&gt;
| Absolute base directory for custom profile Ex)&amp;lt;br&amp;gt; -basedirectory C:\Profile\Player1 &amp;lt;br&amp;gt; Config Path : default.ini &amp;lt;code&amp;gt;C:\Profile\Player1\&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt; Save Path : &amp;lt;code&amp;gt;C:\Profile\Player1\saves\[worldname]&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| -logfile|| &amp;quot;path&amp;quot; || If no output_log.txt use this parameter. Check examples below for syntax.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
World types (March 2025)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Stable&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| Beta&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus, 64Test, 128Test, 4096Test, AlienWorld&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
batchmode, nographics and logfile are Unity3D commands.&lt;br /&gt;
&lt;br /&gt;
https://docs.unity3d.com/Manual/CommandLineArguments.html&lt;br /&gt;
&lt;br /&gt;
[[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md Official Server Guide]]&lt;br /&gt;
&lt;br /&gt;
=== Logging ===&lt;br /&gt;
&lt;br /&gt;
* Linux &amp;lt;code&amp;gt;rocketstation_DedicatedServer.x86_64 2&amp;gt;&amp;amp;1 | tee filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be --a or --append in front of the filename to keep appending to the logfile &lt;br /&gt;
* Windows (powershell) &amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe &amp;amp;&amp;gt; | tee -file filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be -Append at the end to keep appending to the logfile&lt;br /&gt;
** Command Prompt &amp;lt;code&amp;gt;powershell rocketstation_DedicatedServer.exe ^| tee -File filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quickstart ==&lt;br /&gt;
https://github.com/mandusm/stationeers-dedicated-server/tree/main&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Dedicated server starts new Mars world. Autosave every 5 mins to Mars1. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mars1 Mars -SETTINGSPATH &amp;quot;C:\Server\User1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave every 5 mins. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave  every 5 mins. C:\Profile\Player1\saves\Mothership &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -SETTINGSPATH &amp;quot;C:\Profile\Player1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-logfile&amp;lt;/code&amp;gt; syntax &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;C:\Server_Path\rocketstation_DedicatedServer_Data\output_log.txt&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; directory structure. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Note:''' ''BaseDirectory'' is by default in SteamApps/common/Stationeers Dedicated Server/''&amp;lt;Contents of BaseDirectory&amp;gt;'' if installed with SteamCMD&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Linux:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''/saves/myworld/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Windows:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''\saves\myworld\&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Details:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
In the world directory named &amp;quot;myworld&amp;quot;, these files must be present:&lt;br /&gt;
* world.bin&lt;br /&gt;
* world.xml&lt;br /&gt;
* world_meta.xml&lt;br /&gt;
'''Note:''' The names of these files ''do not'' correspond to your custom world name. These will always be called world.bin etc..&amp;lt;br&amp;gt;&lt;br /&gt;
The server will automatically generate these upon first start. If you are importing another world, make sure these are in place in the correct directory for the server to load them.&amp;lt;br&amp;gt;&lt;br /&gt;
There is also one more file that will be created:&lt;br /&gt;
* worldsettings.xml&lt;br /&gt;
&lt;br /&gt;
===== Configuration from setting.xml =====&lt;br /&gt;
setting.xml will be created once you start it up for the first time. &amp;lt;u&amp;gt;Command parameters reset setting.xml to default&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;hr&amp;gt;''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
Example Setting.xml&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;SettingData xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;AutoSave&amp;gt;true&amp;lt;/AutoSave&amp;gt;&lt;br /&gt;
  &amp;lt;SaveInterval&amp;gt;300&amp;lt;/SaveInterval&amp;gt;&lt;br /&gt;
  &amp;lt;SavePath /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;StartingConditions&amp;gt;Default&amp;lt;/StartingConditions&amp;gt;&lt;br /&gt;
  &amp;lt;RespawnCondition&amp;gt;Easy&amp;lt;/RespawnCondition&amp;gt;&lt;br /&gt;
  &amp;lt;HungerRate&amp;gt;0.5&amp;lt;/HungerRate&amp;gt;&lt;br /&gt;
  &amp;lt;SunOrbitPeriod&amp;gt;1&amp;lt;/SunOrbitPeriod&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;ResearchPoolKey&amp;gt;ResearchOff&amp;lt;/ResearchPoolKey&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;RoomControlTickSpeed&amp;gt;1&amp;lt;/RoomControlTickSpeed&amp;gt;&lt;br /&gt;
  &amp;lt;WorldOrigin&amp;gt;false&amp;lt;/WorldOrigin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ServerName&amp;gt;Stationeers&amp;lt;/ServerName&amp;gt;&lt;br /&gt;
  &amp;lt;StartLocalHost&amp;gt;true&amp;lt;/StartLocalHost&amp;gt;&lt;br /&gt;
  &amp;lt;ServerVisible&amp;gt;true&amp;lt;/ServerVisible&amp;gt;&lt;br /&gt;
  &amp;lt;ServerPassword /&amp;gt;&lt;br /&gt;
  &amp;lt;AdminPassword&amp;gt;randomstringhere&amp;lt;/AdminPassword&amp;gt;&lt;br /&gt;
  &amp;lt;ServerMaxPlayers&amp;gt;10&amp;lt;/ServerMaxPlayers&amp;gt;&lt;br /&gt;
  &amp;lt;UpdatePort&amp;gt;27015&amp;lt;/UpdatePort&amp;gt;&lt;br /&gt;
  &amp;lt;GamePort&amp;gt;27016&amp;lt;/GamePort&amp;gt;&lt;br /&gt;
  &amp;lt;UPNPEnabled&amp;gt;true&amp;lt;/UPNPEnabled&amp;gt;&lt;br /&gt;
  &amp;lt;DisconnectTimeout&amp;gt;10000&amp;lt;/DisconnectTimeout&amp;gt;&lt;br /&gt;
  &amp;lt;NetworkDebugFrequency&amp;gt;500&amp;lt;/NetworkDebugFrequency&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&amp;lt;br&amp;gt;''Case Sensitive''&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingConditions&amp;gt;&lt;br /&gt;
| Default, Minimal, Vulcan, Venus, BareBones&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this, define custom worldtype''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchPoolKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;SunOrbitPeriod&amp;gt;&lt;br /&gt;
| default=1&lt;br /&gt;
| Multiplier on the time it takes for the sun to orbit, default is 20 minutes, 10 minute day 10 night.&lt;br /&gt;
|-&lt;br /&gt;
! colspan=3 | Undocumented&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;UseCustomWorkThreadsCount&amp;gt;false&amp;lt;/UseCustomWorkThreadsCount&amp;gt;&lt;br /&gt;
| true, false&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxWorkerThreads&amp;gt;100&amp;lt;/MaxWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=100&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxCompletionPortThreads&amp;gt;50&amp;lt;/MaxCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=50&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;CoroutineTimeBudget&amp;gt;1&amp;lt;/CoroutineTimeBudget&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Savegames ==&lt;br /&gt;
=== Configuration from worldsettings.xml ===&lt;br /&gt;
'''Undocumented feature'''&lt;br /&gt;
&lt;br /&gt;
''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;GameMode&amp;gt;&lt;br /&gt;
| Creative, Survival&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;HungerRate&amp;gt;&lt;br /&gt;
| default=0.25&lt;br /&gt;
| Multiplier on the amount of hunger generated per game tick.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingCondition&amp;gt;&lt;br /&gt;
| N/A&lt;br /&gt;
| Can only be defined in custom world before generation&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Configuration from world.xml ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Server Administrator ==&lt;br /&gt;
&lt;br /&gt;
===In Game Admin===&lt;br /&gt;
&amp;lt;ServerAuthSecret/&amp;gt; parameter must be added to setting.xml on both server and client and be the same token.&lt;br /&gt;
&lt;br /&gt;
All commands are typed in the chat (F3) by default and prefixed by &amp;lt;code&amp;gt;serverrun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Program Console===&lt;br /&gt;
You can type commands in the running application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays helpful stuff&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|-&lt;br /&gt;
| CLEAR&lt;br /&gt;
| Clears all console text ||&lt;br /&gt;
|-&lt;br /&gt;
| QUIT&lt;br /&gt;
| immediately quits the game without any prompts&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| EXIT&lt;br /&gt;
| rowspan=2 | Leaves a game session and goes back to 'StartMenu'&lt;br /&gt;
| rowspan=2 | &lt;br /&gt;
|-&lt;br /&gt;
| LEAVE&lt;br /&gt;
|-&lt;br /&gt;
| NEW&lt;br /&gt;
| rowspan=2 | Starts a new game at specific world automatically from launch.Must provide world name as argument&lt;br /&gt;
| rowspan=2 | worldName&lt;br /&gt;
|-&lt;br /&gt;
| NEWGAME&lt;br /&gt;
|-&lt;br /&gt;
| LOAD&lt;br /&gt;
| rowspan=2 | Loads a saved world file&lt;br /&gt;
| rowspan=2 | &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| LOADGAME &lt;br /&gt;
|-&lt;br /&gt;
| LOADLATEST&lt;br /&gt;
| Loads the latest saved file, including auto saves&lt;br /&gt;
| &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| JOIN&lt;br /&gt;
| rowspan=2 | Joins a client to the server&lt;br /&gt;
| rowspan=2 | [address]:[port]&lt;br /&gt;
|-&lt;br /&gt;
| JOINGAME &lt;br /&gt;
|-&lt;br /&gt;
| STEAM&lt;br /&gt;
| Commands to test Facepunch API. Just checks if steam is initialised and if DLC is purchased&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| LISTNETWORKDEVICES&lt;br /&gt;
| No help text :(&lt;br /&gt;
| id&lt;br /&gt;
|-&lt;br /&gt;
| TESTBYTEARRAY&lt;br /&gt;
| Tests every item in world to check its network read/write functions are parallel. Only enabled in Editor.&lt;br /&gt;
Supply a reference Id to check ONLY that item&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ROCKETBINARY&lt;br /&gt;
| Starts logging the size of each section of a delta update.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* toggleloglength&lt;br /&gt;
* togglelogbps&lt;br /&gt;
|-&lt;br /&gt;
| IMGUI&lt;br /&gt;
| Toggles ImguiInWorldTestCube on/off&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ATMOS&lt;br /&gt;
| Enables atmosphere debugging&lt;br /&gt;
| Arguments:&lt;br /&gt;
* pipe&lt;br /&gt;
* world&lt;br /&gt;
* room&lt;br /&gt;
* global&lt;br /&gt;
* thing&lt;br /&gt;
|-&lt;br /&gt;
| THING&lt;br /&gt;
| Thing related commands&lt;br /&gt;
| Arguments:&lt;br /&gt;
* No args returns total thing count&lt;br /&gt;
* find&lt;br /&gt;
* delete&lt;br /&gt;
* spawn&lt;br /&gt;
|-&lt;br /&gt;
| KEYBINDINGS&lt;br /&gt;
| Displays all the keybindings bound to LocalHuman&lt;br /&gt;
| Arguments:&lt;br /&gt;
* reset (Resets the keybindings stack. Can help solve input issues)&lt;br /&gt;
|-&lt;br /&gt;
| RESET&lt;br /&gt;
| Restarts the application&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| VERSION&lt;br /&gt;
| Returns the game version&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| LOGTOCLIPBOARD&lt;br /&gt;
| Copies the content of the console buffer to the system clipboard buffer&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| KICK&lt;br /&gt;
| Kick clients from server commands&lt;br /&gt;
| clientId - disconnects the client from the game&lt;br /&gt;
|-&lt;br /&gt;
| BAN&lt;br /&gt;
| Bans a client from the server (server only command)&lt;br /&gt;
| clientId&lt;br /&gt;
|-&lt;br /&gt;
| UPNP&lt;br /&gt;
| returns universal plug and play (upnp) state&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| NETWORK&lt;br /&gt;
| returns the current network status&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| PAUSE&lt;br /&gt;
| will pause/unpause the game (including for clients)&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* true&lt;br /&gt;
* false&lt;br /&gt;
|-&lt;br /&gt;
| SAY&lt;br /&gt;
| sends a message to all connected players&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SAVE&lt;br /&gt;
| Saves the current game to specified path&lt;br /&gt;
| Arguments:&lt;br /&gt;
* &amp;lt;foldername&amp;gt;&lt;br /&gt;
* delete &amp;lt;foldername&amp;gt;&lt;br /&gt;
* list&lt;br /&gt;
|-&lt;br /&gt;
| LOG&lt;br /&gt;
| Dumps all the logs to a file&lt;br /&gt;
| Arguments:&lt;br /&gt;
&amp;lt;logname&amp;gt; (optional)&lt;br /&gt;
clear&lt;br /&gt;
|-&lt;br /&gt;
| DISCORD&lt;br /&gt;
| Interaction with the Discord SDK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SETTINGS&lt;br /&gt;
| Change the settings.xml. e.g settings servermaxplayers 5&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
&amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| NETCONFIG&lt;br /&gt;
| Change the master server setting in NetConfig.xml. e.g netconfig ip 127.0.0.1&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
* &amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| SETTINGSPATH&lt;br /&gt;
| Sets the default settings path to a new location. Launch command only. If none found default is used.&lt;br /&gt;
| &amp;lt;full-directory-path&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|  DIFFICULTY &lt;br /&gt;
| Sets game difficulty to one of the predefined settings&lt;br /&gt;
|  -DIFFICULTY [&amp;lt;difficulty&amp;gt;]&lt;br /&gt;
|-&lt;br /&gt;
| REGENERATEROOMS&lt;br /&gt;
| Regenerates all rooms for the world&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| STORM START&lt;br /&gt;
| Starts weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| STORM STOP&lt;br /&gt;
| Stops weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| DEBUGTHREADS&lt;br /&gt;
| Show the times that the worker threads take to run.&lt;br /&gt;
| GameTick&lt;br /&gt;
|-&lt;br /&gt;
| STATUS&lt;br /&gt;
| Displays a bunch of info to give insight into state of server.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| MASTERSERVER&lt;br /&gt;
| Commands to help with interacting with the Master Server.&lt;br /&gt;
| refresh&lt;br /&gt;
|-&lt;br /&gt;
| DELETELOOSEITEMS&lt;br /&gt;
| Removes all items in world that isn't in a slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| SUNTIME&lt;br /&gt;
| Set the time of day between 0 and 1 (e.g. 0 is sunrise, 0.5 is sunset)&lt;br /&gt;
| Arguments:&lt;br /&gt;
* time&lt;br /&gt;
|-&lt;br /&gt;
| CLEANUPPLAYERS&lt;br /&gt;
| Cleans up player bodies&lt;br /&gt;
| Arguments:&lt;br /&gt;
* dead&lt;br /&gt;
* disconnected&lt;br /&gt;
* all&lt;br /&gt;
|-&lt;br /&gt;
| TEST&lt;br /&gt;
| No help text :(&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
'''Undocumented feature'''&amp;lt;br&amp;gt;&lt;br /&gt;
Mods are supported on Dedicated servers, however it requires additional manual configuration - Necessitating direct file access and editing on the dedicated server.  To install mods, you'll need to manually obtain the mod data first - Either from the Steam Workshop, or built yourself.  Upload/Store the mods in a specific folder on the server - You will also likely want to edit default.ini on the server to point to a particular server folder rather then the default directory, defined below.  Then manually add ModConfig.xml in the root directory of the server executible files, and manually edit the file to add each individual mod.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== modconfig.xml ===&lt;br /&gt;
Place a modconfig.xml in the serverfiles root (next to executable).  Filename case is significant on Linux.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;Mods&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;1&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath /&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourFirstModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourSecondModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
  &amp;lt;/Mods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Local mods have Id 0.&amp;lt;br&amp;gt;&lt;br /&gt;
So try and keep the same structure in the server to prevent complications.&amp;lt;br&amp;gt;&lt;br /&gt;
''1 is core file and always need to be enabled''&lt;br /&gt;
&lt;br /&gt;
===Alternate ModConfig.xml===&lt;br /&gt;
If the above modconfig don't work, try this one:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Mods&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1001&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1002&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
    &amp;lt;/Mods&amp;gt;&lt;br /&gt;
    &amp;lt;DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;/DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;LocalMods&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;FirstModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1001&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;SecondModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1002&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
    &amp;lt;/LocalMods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Storing Mods ===&lt;br /&gt;
&lt;br /&gt;
 WIN: C:\Users\'''USERNAME_HERE'''\Documents\My Games\Stationeers\mods\&lt;br /&gt;
 LIN: /home/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
 OSX: /Users/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
&lt;br /&gt;
Mods folder root is displaced by the &amp;lt;SavePath&amp;gt; setting in setting.xml,&amp;lt;br&amp;gt;&lt;br /&gt;
not sure if it's a bug or feature&lt;br /&gt;
&lt;br /&gt;
 \Modname or workshopid\About\&lt;br /&gt;
(file containing description about mod and thumbnail)&lt;br /&gt;
 \Modname or workshopid\GameData\&lt;br /&gt;
(files you want to &amp;lt;u&amp;gt;append&amp;lt;/u&amp;gt; to the core gamedata)&lt;br /&gt;
&lt;br /&gt;
It's recommended to only put entries in the mod files you want to add or replace,&amp;lt;br&amp;gt;&lt;br /&gt;
do not try and replace the whole file for compatibility issues and errors.&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: There seems to be some changes as to how where the dedicated server loads mods from. The above solution seems to be deprecated, see below if above solution doesn't work.&lt;br /&gt;
&lt;br /&gt;
WIN:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
LIN:/home/'''USERNAME_HERE'''/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
OSX:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Mods folder in /StreamingAssets/ is not premade, but needs to be added manually. Put the mods you want in here, and the server will load them. It is unknown if a ModConfig is even needed when doing it this way.&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22571</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22571"/>
				<updated>2025-03-30T00:49:44Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: removed Legacy from Legacy Server Startup Arguments as the &amp;quot;Server Startup Arguments&amp;quot; are quite functional still&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualised, &lt;br /&gt;
** NOT recommended also running a Stationeers client (there will be issues with router NAT-loopback).&lt;br /&gt;
** Linux Glibcxx 3.4.29 &amp;amp; Glibc 2.34 (Ubuntu 22.04 LTS)&lt;br /&gt;
** if running on Windows you must have the Microsoft Visual C++ 2015, 2017 and 2019 runtime installed, [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
* ~16GB RAM (Tested and confirmed on Linux). 8GB or less and the server won't load. &lt;br /&gt;
&lt;br /&gt;
== Getting the server files ==&lt;br /&gt;
SteamCmd on Windows and Linux&amp;lt;br&amp;gt;&lt;br /&gt;
https://developer.valvesoftware.com/wiki/SteamCMD&lt;br /&gt;
&lt;br /&gt;
''This is a command line tool''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;For getting back from beta to public use -beta public ,steamcmd has trouble with caching&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Default ports ==&lt;br /&gt;
8081: Meta Server port (TCP).&amp;lt;br&amp;gt;&lt;br /&gt;
27016: Game port (UDP).&amp;lt;br&amp;gt;&lt;br /&gt;
27015: Steam update port (UDP).&lt;br /&gt;
&lt;br /&gt;
== Server Startup Arguments ==&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! parameter !! value !! etc&lt;br /&gt;
|-&lt;br /&gt;
| -NEW&lt;br /&gt;
| rowspan=2 | Worldtype (string) &lt;br /&gt;
| rowspan=2 | Starts a new game at specific world automatically from launch. Must provide world type (see below) as argument&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| -NEWGAME&lt;br /&gt;
|-&lt;br /&gt;
| -LOAD&lt;br /&gt;
| rowspan=2 | savefolder (string)&lt;br /&gt;
| rowspan=2 | Loads a saved world file, a second argument can be given with worldtype (see below) when loading fails it will make a new world instead.&lt;br /&gt;
|-&lt;br /&gt;
| -LOADGAME&lt;br /&gt;
|-&lt;br /&gt;
| -LOADLATEST&lt;br /&gt;
| &lt;br /&gt;
| Loads the last save or backup from the save name\folder specified (checking world.xml datestamp), second argument is worldtype to fallback to when loading fails.&lt;br /&gt;
|-&lt;br /&gt;
| -JOIN&lt;br /&gt;
| rowspan=2 | [address]:[port]&lt;br /&gt;
| rowspan=2 | Joins a client to the server&lt;br /&gt;
|-&lt;br /&gt;
| -JOINGAME&lt;br /&gt;
|-&lt;br /&gt;
| -SETTINGSPATH&lt;br /&gt;
| &amp;quot;path&amp;quot;&lt;br /&gt;
| Absolute base directory for custom profile Ex)&amp;lt;br&amp;gt; -basedirectory C:\Profile\Player1 &amp;lt;br&amp;gt; Config Path : default.ini &amp;lt;code&amp;gt;C:\Profile\Player1\&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt; Save Path : &amp;lt;code&amp;gt;C:\Profile\Player1\saves\[worldname]&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| -logfile|| &amp;quot;path&amp;quot; || If no output_log.txt use this parameter. Check examples below for syntax.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
World types (March 2025)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Stable&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| Beta&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus, 64Test, 128Test, 4096Test, AlienWorld&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
batchmode, nographics and logfile are Unity3D commands.&lt;br /&gt;
&lt;br /&gt;
https://docs.unity3d.com/Manual/CommandLineArguments.html&lt;br /&gt;
&lt;br /&gt;
[[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md Official Server Guide]]&lt;br /&gt;
&lt;br /&gt;
=== Logging Alternates ===&lt;br /&gt;
Logging seems to be broken, here are some old skool alternatives.&amp;lt;br&amp;gt;&lt;br /&gt;
Small downside is they break the input of the console but it doesn't seem to throw warnings like usual.&lt;br /&gt;
&lt;br /&gt;
* Linux &amp;lt;code&amp;gt;rocketstation_DedicatedServer.x86_64 2&amp;gt;&amp;amp;1 | tee filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be --a or --append in front of the filename to keep appending to the logfile &lt;br /&gt;
* Windows (powershell) &amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe &amp;amp;&amp;gt; | tee -file filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be -Append at the end to keep appending to the logfile&lt;br /&gt;
** Command Prompt &amp;lt;code&amp;gt;powershell rocketstation_DedicatedServer.exe ^| tee -File filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quickstart ==&lt;br /&gt;
https://github.com/mandusm/stationeers-dedicated-server/tree/main&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Dedicated server starts new Mars world. Autosave every 5 mins to Mars1. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mars1 Mars -SETTINGSPATH &amp;quot;C:\Server\User1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave every 5 mins. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave  every 5 mins. C:\Profile\Player1\saves\Mothership &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -SETTINGSPATH &amp;quot;C:\Profile\Player1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-logfile&amp;lt;/code&amp;gt; syntax &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;C:\Server_Path\rocketstation_DedicatedServer_Data\output_log.txt&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; directory structure. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Note:''' ''BaseDirectory'' is by default in SteamApps/common/Stationeers Dedicated Server/''&amp;lt;Contents of BaseDirectory&amp;gt;'' if installed with SteamCMD&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Linux:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''/saves/myworld/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Windows:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''\saves\myworld\&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Details:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
In the world directory named &amp;quot;myworld&amp;quot;, these files must be present:&lt;br /&gt;
* world.bin&lt;br /&gt;
* world.xml&lt;br /&gt;
* world_meta.xml&lt;br /&gt;
'''Note:''' The names of these files ''do not'' correspond to your custom world name. These will always be called world.bin etc..&amp;lt;br&amp;gt;&lt;br /&gt;
The server will automatically generate these upon first start. If you are importing another world, make sure these are in place in the correct directory for the server to load them.&amp;lt;br&amp;gt;&lt;br /&gt;
There is also one more file that will be created:&lt;br /&gt;
* worldsettings.xml&lt;br /&gt;
&lt;br /&gt;
===== Configuration from setting.xml =====&lt;br /&gt;
setting.xml will be created once you start it up for the first time. &amp;lt;u&amp;gt;Command parameters reset setting.xml to default&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;hr&amp;gt;''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
Example Setting.xml&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;SettingData xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;AutoSave&amp;gt;true&amp;lt;/AutoSave&amp;gt;&lt;br /&gt;
  &amp;lt;SaveInterval&amp;gt;300&amp;lt;/SaveInterval&amp;gt;&lt;br /&gt;
  &amp;lt;SavePath /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;StartingConditions&amp;gt;Default&amp;lt;/StartingConditions&amp;gt;&lt;br /&gt;
  &amp;lt;RespawnCondition&amp;gt;Easy&amp;lt;/RespawnCondition&amp;gt;&lt;br /&gt;
  &amp;lt;HungerRate&amp;gt;0.5&amp;lt;/HungerRate&amp;gt;&lt;br /&gt;
  &amp;lt;SunOrbitPeriod&amp;gt;1&amp;lt;/SunOrbitPeriod&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;ResearchPoolKey&amp;gt;ResearchOff&amp;lt;/ResearchPoolKey&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;RoomControlTickSpeed&amp;gt;1&amp;lt;/RoomControlTickSpeed&amp;gt;&lt;br /&gt;
  &amp;lt;WorldOrigin&amp;gt;false&amp;lt;/WorldOrigin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ServerName&amp;gt;Stationeers&amp;lt;/ServerName&amp;gt;&lt;br /&gt;
  &amp;lt;StartLocalHost&amp;gt;true&amp;lt;/StartLocalHost&amp;gt;&lt;br /&gt;
  &amp;lt;ServerVisible&amp;gt;true&amp;lt;/ServerVisible&amp;gt;&lt;br /&gt;
  &amp;lt;ServerPassword /&amp;gt;&lt;br /&gt;
  &amp;lt;AdminPassword&amp;gt;randomstringhere&amp;lt;/AdminPassword&amp;gt;&lt;br /&gt;
  &amp;lt;ServerMaxPlayers&amp;gt;10&amp;lt;/ServerMaxPlayers&amp;gt;&lt;br /&gt;
  &amp;lt;UpdatePort&amp;gt;27015&amp;lt;/UpdatePort&amp;gt;&lt;br /&gt;
  &amp;lt;GamePort&amp;gt;27016&amp;lt;/GamePort&amp;gt;&lt;br /&gt;
  &amp;lt;UPNPEnabled&amp;gt;true&amp;lt;/UPNPEnabled&amp;gt;&lt;br /&gt;
  &amp;lt;DisconnectTimeout&amp;gt;10000&amp;lt;/DisconnectTimeout&amp;gt;&lt;br /&gt;
  &amp;lt;NetworkDebugFrequency&amp;gt;500&amp;lt;/NetworkDebugFrequency&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&amp;lt;br&amp;gt;''Case Sensitive''&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingConditions&amp;gt;&lt;br /&gt;
| Default, Minimal, Vulcan, Venus, BareBones&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this, define custom worldtype''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchPoolKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;SunOrbitPeriod&amp;gt;&lt;br /&gt;
| default=1&lt;br /&gt;
| Multiplier on the time it takes for the sun to orbit, default is 20 minutes, 10 minute day 10 night.&lt;br /&gt;
|-&lt;br /&gt;
! colspan=3 | Undocumented&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;UseCustomWorkThreadsCount&amp;gt;false&amp;lt;/UseCustomWorkThreadsCount&amp;gt;&lt;br /&gt;
| true, false&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxWorkerThreads&amp;gt;100&amp;lt;/MaxWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=100&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxCompletionPortThreads&amp;gt;50&amp;lt;/MaxCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=50&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;CoroutineTimeBudget&amp;gt;1&amp;lt;/CoroutineTimeBudget&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Savegames ==&lt;br /&gt;
=== Configuration from worldsettings.xml ===&lt;br /&gt;
'''Undocumented feature'''&lt;br /&gt;
&lt;br /&gt;
''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;GameMode&amp;gt;&lt;br /&gt;
| Creative, Survival&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;HungerRate&amp;gt;&lt;br /&gt;
| default=0.25&lt;br /&gt;
| Multiplier on the amount of hunger generated per game tick.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingCondition&amp;gt;&lt;br /&gt;
| N/A&lt;br /&gt;
| Can only be defined in custom world before generation&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Configuration from world.xml ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Server Administrator ==&lt;br /&gt;
&lt;br /&gt;
===In Game Admin===&lt;br /&gt;
&amp;lt;ServerAuthSecret/&amp;gt; parameter must be added to setting.xml on both server and client and be the same token.&lt;br /&gt;
&lt;br /&gt;
All commands are typed in the chat (F3) by default and prefixed by &amp;lt;code&amp;gt;serverrun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Program Console===&lt;br /&gt;
You can type commands in the running application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays helpful stuff&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|-&lt;br /&gt;
| CLEAR&lt;br /&gt;
| Clears all console text ||&lt;br /&gt;
|-&lt;br /&gt;
| QUIT&lt;br /&gt;
| immediately quits the game without any prompts&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| EXIT&lt;br /&gt;
| rowspan=2 | Leaves a game session and goes back to 'StartMenu'&lt;br /&gt;
| rowspan=2 | &lt;br /&gt;
|-&lt;br /&gt;
| LEAVE&lt;br /&gt;
|-&lt;br /&gt;
| NEW&lt;br /&gt;
| rowspan=2 | Starts a new game at specific world automatically from launch.Must provide world name as argument&lt;br /&gt;
| rowspan=2 | worldName&lt;br /&gt;
|-&lt;br /&gt;
| NEWGAME&lt;br /&gt;
|-&lt;br /&gt;
| LOAD&lt;br /&gt;
| rowspan=2 | Loads a saved world file&lt;br /&gt;
| rowspan=2 | &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| LOADGAME &lt;br /&gt;
|-&lt;br /&gt;
| LOADLATEST&lt;br /&gt;
| Loads the latest saved file, including auto saves&lt;br /&gt;
| &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| JOIN&lt;br /&gt;
| rowspan=2 | Joins a client to the server&lt;br /&gt;
| rowspan=2 | [address]:[port]&lt;br /&gt;
|-&lt;br /&gt;
| JOINGAME &lt;br /&gt;
|-&lt;br /&gt;
| STEAM&lt;br /&gt;
| Commands to test Facepunch API. Just checks if steam is initialised and if DLC is purchased&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| LISTNETWORKDEVICES&lt;br /&gt;
| No help text :(&lt;br /&gt;
| id&lt;br /&gt;
|-&lt;br /&gt;
| TESTBYTEARRAY&lt;br /&gt;
| Tests every item in world to check its network read/write functions are parallel. Only enabled in Editor.&lt;br /&gt;
Supply a reference Id to check ONLY that item&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ROCKETBINARY&lt;br /&gt;
| Starts logging the size of each section of a delta update.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* toggleloglength&lt;br /&gt;
* togglelogbps&lt;br /&gt;
|-&lt;br /&gt;
| IMGUI&lt;br /&gt;
| Toggles ImguiInWorldTestCube on/off&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ATMOS&lt;br /&gt;
| Enables atmosphere debugging&lt;br /&gt;
| Arguments:&lt;br /&gt;
* pipe&lt;br /&gt;
* world&lt;br /&gt;
* room&lt;br /&gt;
* global&lt;br /&gt;
* thing&lt;br /&gt;
|-&lt;br /&gt;
| THING&lt;br /&gt;
| Thing related commands&lt;br /&gt;
| Arguments:&lt;br /&gt;
* No args returns total thing count&lt;br /&gt;
* find&lt;br /&gt;
* delete&lt;br /&gt;
* spawn&lt;br /&gt;
|-&lt;br /&gt;
| KEYBINDINGS&lt;br /&gt;
| Displays all the keybindings bound to LocalHuman&lt;br /&gt;
| Arguments:&lt;br /&gt;
* reset (Resets the keybindings stack. Can help solve input issues)&lt;br /&gt;
|-&lt;br /&gt;
| RESET&lt;br /&gt;
| Restarts the application&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| VERSION&lt;br /&gt;
| Returns the game version&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| LOGTOCLIPBOARD&lt;br /&gt;
| Copies the content of the console buffer to the system clipboard buffer&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| KICK&lt;br /&gt;
| Kick clients from server commands&lt;br /&gt;
| clientId - disconnects the client from the game&lt;br /&gt;
|-&lt;br /&gt;
| BAN&lt;br /&gt;
| Bans a client from the server (server only command)&lt;br /&gt;
| clientId&lt;br /&gt;
|-&lt;br /&gt;
| UPNP&lt;br /&gt;
| returns universal plug and play (upnp) state&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| NETWORK&lt;br /&gt;
| returns the current network status&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| PAUSE&lt;br /&gt;
| will pause/unpause the game (including for clients)&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* true&lt;br /&gt;
* false&lt;br /&gt;
|-&lt;br /&gt;
| SAY&lt;br /&gt;
| sends a message to all connected players&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SAVE&lt;br /&gt;
| Saves the current game to specified path&lt;br /&gt;
| Arguments:&lt;br /&gt;
* &amp;lt;foldername&amp;gt;&lt;br /&gt;
* delete &amp;lt;foldername&amp;gt;&lt;br /&gt;
* list&lt;br /&gt;
|-&lt;br /&gt;
| LOG&lt;br /&gt;
| Dumps all the logs to a file&lt;br /&gt;
| Arguments:&lt;br /&gt;
&amp;lt;logname&amp;gt; (optional)&lt;br /&gt;
clear&lt;br /&gt;
|-&lt;br /&gt;
| DISCORD&lt;br /&gt;
| Interaction with the Discord SDK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SETTINGS&lt;br /&gt;
| Change the settings.xml. e.g settings servermaxplayers 5&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
&amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| NETCONFIG&lt;br /&gt;
| Change the master server setting in NetConfig.xml. e.g netconfig ip 127.0.0.1&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
* &amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| SETTINGSPATH&lt;br /&gt;
| Sets the default settings path to a new location. Launch command only. If none found default is used.&lt;br /&gt;
| &amp;lt;full-directory-path&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|  DIFFICULTY &lt;br /&gt;
| Sets game difficulty to one of the predefined settings&lt;br /&gt;
|  -DIFFICULTY [&amp;lt;difficulty&amp;gt;]&lt;br /&gt;
|-&lt;br /&gt;
| REGENERATEROOMS&lt;br /&gt;
| Regenerates all rooms for the world&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| STORM START&lt;br /&gt;
| Starts weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| STORM STOP&lt;br /&gt;
| Stops weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| DEBUGTHREADS&lt;br /&gt;
| Show the times that the worker threads take to run.&lt;br /&gt;
| GameTick&lt;br /&gt;
|-&lt;br /&gt;
| STATUS&lt;br /&gt;
| Displays a bunch of info to give insight into state of server.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| MASTERSERVER&lt;br /&gt;
| Commands to help with interacting with the Master Server.&lt;br /&gt;
| refresh&lt;br /&gt;
|-&lt;br /&gt;
| DELETELOOSEITEMS&lt;br /&gt;
| Removes all items in world that isn't in a slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| SUNTIME&lt;br /&gt;
| Set the time of day between 0 and 1 (e.g. 0 is sunrise, 0.5 is sunset)&lt;br /&gt;
| Arguments:&lt;br /&gt;
* time&lt;br /&gt;
|-&lt;br /&gt;
| CLEANUPPLAYERS&lt;br /&gt;
| Cleans up player bodies&lt;br /&gt;
| Arguments:&lt;br /&gt;
* dead&lt;br /&gt;
* disconnected&lt;br /&gt;
* all&lt;br /&gt;
|-&lt;br /&gt;
| TEST&lt;br /&gt;
| No help text :(&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
'''Undocumented feature'''&amp;lt;br&amp;gt;&lt;br /&gt;
Mods are supported on Dedicated servers, however it requires additional manual configuration - Necessitating direct file access and editing on the dedicated server.  To install mods, you'll need to manually obtain the mod data first - Either from the Steam Workshop, or built yourself.  Upload/Store the mods in a specific folder on the server - You will also likely want to edit default.ini on the server to point to a particular server folder rather then the default directory, defined below.  Then manually add ModConfig.xml in the root directory of the server executible files, and manually edit the file to add each individual mod.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== modconfig.xml ===&lt;br /&gt;
Place a modconfig.xml in the serverfiles root (next to executable).  Filename case is significant on Linux.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;Mods&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;1&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath /&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourFirstModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourSecondModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
  &amp;lt;/Mods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Local mods have Id 0.&amp;lt;br&amp;gt;&lt;br /&gt;
So try and keep the same structure in the server to prevent complications.&amp;lt;br&amp;gt;&lt;br /&gt;
''1 is core file and always need to be enabled''&lt;br /&gt;
&lt;br /&gt;
===Alternate ModConfig.xml===&lt;br /&gt;
If the above modconfig don't work, try this one:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Mods&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1001&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1002&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
    &amp;lt;/Mods&amp;gt;&lt;br /&gt;
    &amp;lt;DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;/DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;LocalMods&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;FirstModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1001&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;SecondModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1002&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
    &amp;lt;/LocalMods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Storing Mods ===&lt;br /&gt;
&lt;br /&gt;
 WIN: C:\Users\'''USERNAME_HERE'''\Documents\My Games\Stationeers\mods\&lt;br /&gt;
 LIN: /home/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
 OSX: /Users/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
&lt;br /&gt;
Mods folder root is displaced by the &amp;lt;SavePath&amp;gt; setting in setting.xml,&amp;lt;br&amp;gt;&lt;br /&gt;
not sure if it's a bug or feature&lt;br /&gt;
&lt;br /&gt;
 \Modname or workshopid\About\&lt;br /&gt;
(file containing description about mod and thumbnail)&lt;br /&gt;
 \Modname or workshopid\GameData\&lt;br /&gt;
(files you want to &amp;lt;u&amp;gt;append&amp;lt;/u&amp;gt; to the core gamedata)&lt;br /&gt;
&lt;br /&gt;
It's recommended to only put entries in the mod files you want to add or replace,&amp;lt;br&amp;gt;&lt;br /&gt;
do not try and replace the whole file for compatibility issues and errors.&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: There seems to be some changes as to how where the dedicated server loads mods from. The above solution seems to be deprecated, see below if above solution doesn't work.&lt;br /&gt;
&lt;br /&gt;
WIN:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
LIN:/home/'''USERNAME_HERE'''/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
OSX:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Mods folder in /StreamingAssets/ is not premade, but needs to be added manually. Put the mods you want in here, and the server will load them. It is unknown if a ModConfig is even needed when doing it this way.&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22517</id>
		<title>Dedicated Server Guide</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Dedicated_Server_Guide&amp;diff=22517"/>
				<updated>2025-03-22T00:32:26Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: updated world types for future world gen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Tutorials]]&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
* Linux or Windows system, either physical or virtualised, &lt;br /&gt;
** NOT recommended also running a Stationeers client (there will be issues with router NAT-loopback).&lt;br /&gt;
** Linux Glibcxx 3.4.29 &amp;amp; Glibc 2.34 (Ubuntu 22.04 LTS)&lt;br /&gt;
** if running on Windows you must have the Microsoft Visual C++ 2015, 2017 and 2019 runtime installed, [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 click here to download it].&lt;br /&gt;
* ~16GB RAM (Tested and confirmed on Linux). 8GB or less and the server won't load. &lt;br /&gt;
&lt;br /&gt;
== Getting the server files ==&lt;br /&gt;
SteamCmd on Windows and Linux&amp;lt;br&amp;gt;&lt;br /&gt;
https://developer.valvesoftware.com/wiki/SteamCMD&lt;br /&gt;
&lt;br /&gt;
''This is a command line tool''&lt;br /&gt;
&lt;br /&gt;
For the stable branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For the beta branch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;steamcmd +login anonymous +app_update 600760 -beta beta validate +quit&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;For getting back from beta to public use -beta public ,steamcmd has trouble with caching&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Default ports ==&lt;br /&gt;
8081: Meta Server port (TCP).&amp;lt;br&amp;gt;&lt;br /&gt;
27016: Game port (UDP).&amp;lt;br&amp;gt;&lt;br /&gt;
27015: Steam update port (UDP).&lt;br /&gt;
&lt;br /&gt;
== Legacy Server Startup Arguments ==&lt;br /&gt;
String parameters can take space with double quotes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! parameter !! value !! etc&lt;br /&gt;
|-&lt;br /&gt;
| -NEW&lt;br /&gt;
| rowspan=2 | Worldtype (string) &lt;br /&gt;
| rowspan=2 | Starts a new game at specific world automatically from launch. Must provide world type (see below) as argument&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| -NEWGAME&lt;br /&gt;
|-&lt;br /&gt;
| -LOAD&lt;br /&gt;
| rowspan=2 | savefolder (string)&lt;br /&gt;
| rowspan=2 | Loads a saved world file, a second argument can be given with worldtype (see below) when loading fails it will make a new world instead.&lt;br /&gt;
|-&lt;br /&gt;
| -LOADGAME&lt;br /&gt;
|-&lt;br /&gt;
| -LOADLATEST&lt;br /&gt;
| &lt;br /&gt;
| Loads the last save or backup from the save name\folder specified (checking world.xml datestamp), second argument is worldtype to fallback to when loading fails.&lt;br /&gt;
|-&lt;br /&gt;
| -JOIN&lt;br /&gt;
| rowspan=2 | [address]:[port]&lt;br /&gt;
| rowspan=2 | Joins a client to the server&lt;br /&gt;
|-&lt;br /&gt;
| -JOINGAME&lt;br /&gt;
|-&lt;br /&gt;
| -SETTINGSPATH&lt;br /&gt;
| &amp;quot;path&amp;quot;&lt;br /&gt;
| Absolute base directory for custom profile Ex)&amp;lt;br&amp;gt; -basedirectory C:\Profile\Player1 &amp;lt;br&amp;gt; Config Path : default.ini &amp;lt;code&amp;gt;C:\Profile\Player1\&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt; Save Path : &amp;lt;code&amp;gt;C:\Profile\Player1\saves\[worldname]&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| -logfile|| &amp;quot;path&amp;quot; || If no output_log.txt use this parameter. Check examples below for syntax.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
World types (March 2025)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Stable&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| Beta&lt;br /&gt;
| rowspan=1 | &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus, 64Test, 128Test, 4096Test, AlienWorld&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
batchmode, nographics and logfile are Unity3D commands.&lt;br /&gt;
&lt;br /&gt;
https://docs.unity3d.com/Manual/CommandLineArguments.html&lt;br /&gt;
&lt;br /&gt;
[[https://github.com/rocket2guns/StationeersDedicatedServerGuide/blob/main/README.md Official Server Guide]]&lt;br /&gt;
&lt;br /&gt;
=== Logging Alternates ===&lt;br /&gt;
Logging seems to be broken, here are some old skool alternatives.&amp;lt;br&amp;gt;&lt;br /&gt;
Small downside is they break the input of the console but it doesn't seem to throw warnings like usual.&lt;br /&gt;
&lt;br /&gt;
* Linux &amp;lt;code&amp;gt;rocketstation_DedicatedServer.x86_64 2&amp;gt;&amp;amp;1 | tee filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be --a or --append in front of the filename to keep appending to the logfile &lt;br /&gt;
* Windows (powershell) &amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe &amp;amp;&amp;gt; | tee -file filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
** extra options would be -Append at the end to keep appending to the logfile&lt;br /&gt;
** Command Prompt &amp;lt;code&amp;gt;powershell rocketstation_DedicatedServer.exe ^| tee -File filename.txt&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quickstart ==&lt;br /&gt;
https://github.com/mandusm/stationeers-dedicated-server/tree/main&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Dedicated server starts new Mars world. Autosave every 5 mins to Mars1. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mars1 Mars -SETTINGSPATH &amp;quot;C:\Server\User1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave every 5 mins. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Load Mothership file. Autosave  every 5 mins. C:\Profile\Player1\saves\Mothership &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;rocketstation_DedicatedServer.exe -LOAD Mothership -SETTINGSPATH &amp;quot;C:\Profile\Player1&amp;quot; -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 AutoSave true SaveInterval 300&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-logfile&amp;lt;/code&amp;gt; syntax &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-logFile &amp;quot;C:\Server_Path\rocketstation_DedicatedServer_Data\output_log.txt&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 120%;&amp;quot;&amp;gt; Example &amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; directory structure. &amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Note:''' ''BaseDirectory'' is by default in SteamApps/common/Stationeers Dedicated Server/''&amp;lt;Contents of BaseDirectory&amp;gt;'' if installed with SteamCMD&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Linux:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''/saves/myworld/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Windows:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;-LOAD &amp;quot;myworld&amp;quot;&amp;lt;/code&amp;gt; will look for a folder named &amp;quot;myworld&amp;quot; in the ''saves'' directory like this:&amp;lt;br&amp;gt;&lt;br /&gt;
''BaseDirectory''\saves\myworld\&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Details:'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
In the world directory named &amp;quot;myworld&amp;quot;, these files must be present:&lt;br /&gt;
* world.bin&lt;br /&gt;
* world.xml&lt;br /&gt;
* world_meta.xml&lt;br /&gt;
'''Note:''' The names of these files ''do not'' correspond to your custom world name. These will always be called world.bin etc..&amp;lt;br&amp;gt;&lt;br /&gt;
The server will automatically generate these upon first start. If you are importing another world, make sure these are in place in the correct directory for the server to load them.&amp;lt;br&amp;gt;&lt;br /&gt;
There is also one more file that will be created:&lt;br /&gt;
* worldsettings.xml&lt;br /&gt;
&lt;br /&gt;
===== Configuration from setting.xml =====&lt;br /&gt;
setting.xml will be created once you start it up for the first time. &amp;lt;u&amp;gt;Command parameters reset setting.xml to default&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;hr&amp;gt;''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
Example Setting.xml&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;SettingData xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;AutoSave&amp;gt;true&amp;lt;/AutoSave&amp;gt;&lt;br /&gt;
  &amp;lt;SaveInterval&amp;gt;300&amp;lt;/SaveInterval&amp;gt;&lt;br /&gt;
  &amp;lt;SavePath /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;StartingConditions&amp;gt;Default&amp;lt;/StartingConditions&amp;gt;&lt;br /&gt;
  &amp;lt;RespawnCondition&amp;gt;Easy&amp;lt;/RespawnCondition&amp;gt;&lt;br /&gt;
  &amp;lt;HungerRate&amp;gt;0.5&amp;lt;/HungerRate&amp;gt;&lt;br /&gt;
  &amp;lt;SunOrbitPeriod&amp;gt;1&amp;lt;/SunOrbitPeriod&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;ResearchPoolKey&amp;gt;ResearchOff&amp;lt;/ResearchPoolKey&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;RoomControlTickSpeed&amp;gt;1&amp;lt;/RoomControlTickSpeed&amp;gt;&lt;br /&gt;
  &amp;lt;WorldOrigin&amp;gt;false&amp;lt;/WorldOrigin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ServerName&amp;gt;Stationeers&amp;lt;/ServerName&amp;gt;&lt;br /&gt;
  &amp;lt;StartLocalHost&amp;gt;true&amp;lt;/StartLocalHost&amp;gt;&lt;br /&gt;
  &amp;lt;ServerVisible&amp;gt;true&amp;lt;/ServerVisible&amp;gt;&lt;br /&gt;
  &amp;lt;ServerPassword /&amp;gt;&lt;br /&gt;
  &amp;lt;AdminPassword&amp;gt;randomstringhere&amp;lt;/AdminPassword&amp;gt;&lt;br /&gt;
  &amp;lt;ServerMaxPlayers&amp;gt;10&amp;lt;/ServerMaxPlayers&amp;gt;&lt;br /&gt;
  &amp;lt;UpdatePort&amp;gt;27015&amp;lt;/UpdatePort&amp;gt;&lt;br /&gt;
  &amp;lt;GamePort&amp;gt;27016&amp;lt;/GamePort&amp;gt;&lt;br /&gt;
  &amp;lt;UPNPEnabled&amp;gt;true&amp;lt;/UPNPEnabled&amp;gt;&lt;br /&gt;
  &amp;lt;DisconnectTimeout&amp;gt;10000&amp;lt;/DisconnectTimeout&amp;gt;&lt;br /&gt;
  &amp;lt;NetworkDebugFrequency&amp;gt;500&amp;lt;/NetworkDebugFrequency&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&amp;lt;br&amp;gt;''Case Sensitive''&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingConditions&amp;gt;&lt;br /&gt;
| Default, Minimal, Vulcan, Venus, BareBones&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this, define custom worldtype''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchPoolKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Server ignores this''&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;SunOrbitPeriod&amp;gt;&lt;br /&gt;
| default=1&lt;br /&gt;
| Multiplier on the time it takes for the sun to orbit, default is 20 minutes, 10 minute day 10 night.&lt;br /&gt;
|-&lt;br /&gt;
! colspan=3 | Undocumented&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;UseCustomWorkThreadsCount&amp;gt;false&amp;lt;/UseCustomWorkThreadsCount&amp;gt;&lt;br /&gt;
| true, false&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MinCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxWorkerThreads&amp;gt;100&amp;lt;/MaxWorkerThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=100&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;MaxCompletionPortThreads&amp;gt;50&amp;lt;/MaxCompletionPortThreads&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=50&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;CoroutineTimeBudget&amp;gt;1&amp;lt;/CoroutineTimeBudget&amp;gt;&lt;br /&gt;
| number&lt;br /&gt;
| default=1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Savegames ==&lt;br /&gt;
=== Configuration from worldsettings.xml ===&lt;br /&gt;
'''Undocumented feature'''&lt;br /&gt;
&lt;br /&gt;
''The server is mostly a stripped down client as such it inherits certain features''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;GameMode&amp;gt;&lt;br /&gt;
| Creative, Survival&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;HungerRate&amp;gt;&lt;br /&gt;
| default=0.25&lt;br /&gt;
| Multiplier on the amount of hunger generated per game tick.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;StartingCondition&amp;gt;&lt;br /&gt;
| N/A&lt;br /&gt;
| Can only be defined in custom world before generation&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Configuration from world.xml ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! XML Attribute&lt;br /&gt;
! Parameter&lt;br /&gt;
! Details&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;ResearchKey&amp;gt;&lt;br /&gt;
| ResearchOff, ResearchOn&lt;br /&gt;
| Or a custom key from a mod.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;RespawnCondition&amp;gt;&lt;br /&gt;
| Easy, Normal, Stationeer&lt;br /&gt;
| Or a custom key from a mod.&amp;lt;br&amp;gt;''Seems to be used as spawn conditions instead for new players''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Server Administrator ==&lt;br /&gt;
&lt;br /&gt;
===In Game Admin===&lt;br /&gt;
&amp;lt;ServerAuthSecret/&amp;gt; parameter must be added to setting.xml on both server and client and be the same token.&lt;br /&gt;
&lt;br /&gt;
All commands are typed in the chat (F3) by default and prefixed by &amp;lt;code&amp;gt;serverrun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Server Program Console===&lt;br /&gt;
You can type commands in the running application which acts like a console&lt;br /&gt;
&lt;br /&gt;
=== Command Lists ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Details&lt;br /&gt;
!Parameter&lt;br /&gt;
|-&lt;br /&gt;
| HELP&lt;br /&gt;
| Displays helpful stuff&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* commands&lt;br /&gt;
* list (l)&lt;br /&gt;
* &amp;lt;key&amp;gt;&lt;br /&gt;
* tofile: prints the help output to file&lt;br /&gt;
|-&lt;br /&gt;
| CLEAR&lt;br /&gt;
| Clears all console text ||&lt;br /&gt;
|-&lt;br /&gt;
| QUIT&lt;br /&gt;
| immediately quits the game without any prompts&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| EXIT&lt;br /&gt;
| rowspan=2 | Leaves a game session and goes back to 'StartMenu'&lt;br /&gt;
| rowspan=2 | &lt;br /&gt;
|-&lt;br /&gt;
| LEAVE&lt;br /&gt;
|-&lt;br /&gt;
| NEW&lt;br /&gt;
| rowspan=2 | Starts a new game at specific world automatically from launch.Must provide world name as argument&lt;br /&gt;
| rowspan=2 | worldName&lt;br /&gt;
|-&lt;br /&gt;
| NEWGAME&lt;br /&gt;
|-&lt;br /&gt;
| LOAD&lt;br /&gt;
| rowspan=2 | Loads a saved world file&lt;br /&gt;
| rowspan=2 | &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| LOADGAME &lt;br /&gt;
|-&lt;br /&gt;
| LOADLATEST&lt;br /&gt;
| Loads the latest saved file, including auto saves&lt;br /&gt;
| &amp;lt;foldername&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| JOIN&lt;br /&gt;
| rowspan=2 | Joins a client to the server&lt;br /&gt;
| rowspan=2 | [address]:[port]&lt;br /&gt;
|-&lt;br /&gt;
| JOINGAME &lt;br /&gt;
|-&lt;br /&gt;
| STEAM&lt;br /&gt;
| Commands to test Facepunch API. Just checks if steam is initialised and if DLC is purchased&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| LISTNETWORKDEVICES&lt;br /&gt;
| No help text :(&lt;br /&gt;
| id&lt;br /&gt;
|-&lt;br /&gt;
| TESTBYTEARRAY&lt;br /&gt;
| Tests every item in world to check its network read/write functions are parallel. Only enabled in Editor.&lt;br /&gt;
Supply a reference Id to check ONLY that item&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ROCKETBINARY&lt;br /&gt;
| Starts logging the size of each section of a delta update.&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* toggleloglength&lt;br /&gt;
* togglelogbps&lt;br /&gt;
|-&lt;br /&gt;
| IMGUI&lt;br /&gt;
| Toggles ImguiInWorldTestCube on/off&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| ATMOS&lt;br /&gt;
| Enables atmosphere debugging&lt;br /&gt;
| Arguments:&lt;br /&gt;
* pipe&lt;br /&gt;
* world&lt;br /&gt;
* room&lt;br /&gt;
* global&lt;br /&gt;
* thing&lt;br /&gt;
|-&lt;br /&gt;
| THING&lt;br /&gt;
| Thing related commands&lt;br /&gt;
| Arguments:&lt;br /&gt;
* No args returns total thing count&lt;br /&gt;
* find&lt;br /&gt;
* delete&lt;br /&gt;
* spawn&lt;br /&gt;
|-&lt;br /&gt;
| KEYBINDINGS&lt;br /&gt;
| Displays all the keybindings bound to LocalHuman&lt;br /&gt;
| Arguments:&lt;br /&gt;
* reset (Resets the keybindings stack. Can help solve input issues)&lt;br /&gt;
|-&lt;br /&gt;
| RESET&lt;br /&gt;
| Restarts the application&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| VERSION&lt;br /&gt;
| Returns the game version&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| LOGTOCLIPBOARD&lt;br /&gt;
| Copies the content of the console buffer to the system clipboard buffer&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| KICK&lt;br /&gt;
| Kick clients from server commands&lt;br /&gt;
| clientId - disconnects the client from the game&lt;br /&gt;
|-&lt;br /&gt;
| BAN&lt;br /&gt;
| Bans a client from the server (server only command)&lt;br /&gt;
| clientId&lt;br /&gt;
|-&lt;br /&gt;
| UPNP&lt;br /&gt;
| returns universal plug and play (upnp) state&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| NETWORK&lt;br /&gt;
| returns the current network status&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| PAUSE&lt;br /&gt;
| will pause/unpause the game (including for clients)&lt;br /&gt;
| 	Arguments:&lt;br /&gt;
* true&lt;br /&gt;
* false&lt;br /&gt;
|-&lt;br /&gt;
| SAY&lt;br /&gt;
| sends a message to all connected players&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SAVE&lt;br /&gt;
| Saves the current game to specified path&lt;br /&gt;
| Arguments:&lt;br /&gt;
* &amp;lt;foldername&amp;gt;&lt;br /&gt;
* delete &amp;lt;foldername&amp;gt;&lt;br /&gt;
* list&lt;br /&gt;
|-&lt;br /&gt;
| LOG&lt;br /&gt;
| Dumps all the logs to a file&lt;br /&gt;
| Arguments:&lt;br /&gt;
&amp;lt;logname&amp;gt; (optional)&lt;br /&gt;
clear&lt;br /&gt;
|-&lt;br /&gt;
| DISCORD&lt;br /&gt;
| Interaction with the Discord SDK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| SETTINGS&lt;br /&gt;
| Change the settings.xml. e.g settings servermaxplayers 5&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
&amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| NETCONFIG&lt;br /&gt;
| Change the master server setting in NetConfig.xml. e.g netconfig ip 127.0.0.1&lt;br /&gt;
| Arguments:&lt;br /&gt;
* list&lt;br /&gt;
* print&lt;br /&gt;
* &amp;lt;PropertyName&amp;gt; &amp;lt;Value&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| SETTINGSPATH&lt;br /&gt;
| Sets the default settings path to a new location. Launch command only. If none found default is used.&lt;br /&gt;
| &amp;lt;full-directory-path&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|  DIFFICULTY &lt;br /&gt;
| Sets game difficulty to one of the predefined settings&lt;br /&gt;
|  -DIFFICULTY [&amp;lt;difficulty&amp;gt;]&lt;br /&gt;
|-&lt;br /&gt;
| REGENERATEROOMS&lt;br /&gt;
| Regenerates all rooms for the world&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| STORM START&lt;br /&gt;
| Starts weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| STORM STOP&lt;br /&gt;
| Stops weather event&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| DEBUGTHREADS&lt;br /&gt;
| Show the times that the worker threads take to run.&lt;br /&gt;
| GameTick&lt;br /&gt;
|-&lt;br /&gt;
| STATUS&lt;br /&gt;
| Displays a bunch of info to give insight into state of server.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| MASTERSERVER&lt;br /&gt;
| Commands to help with interacting with the Master Server.&lt;br /&gt;
| refresh&lt;br /&gt;
|-&lt;br /&gt;
| DELETELOOSEITEMS&lt;br /&gt;
| Removes all items in world that isn't in a slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| SUNTIME&lt;br /&gt;
| Set the time of day between 0 and 1 (e.g. 0 is sunrise, 0.5 is sunset)&lt;br /&gt;
| Arguments:&lt;br /&gt;
* time&lt;br /&gt;
|-&lt;br /&gt;
| CLEANUPPLAYERS&lt;br /&gt;
| Cleans up player bodies&lt;br /&gt;
| Arguments:&lt;br /&gt;
* dead&lt;br /&gt;
* disconnected&lt;br /&gt;
* all&lt;br /&gt;
|-&lt;br /&gt;
| TEST&lt;br /&gt;
| No help text :(&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Modding on Servers ==&lt;br /&gt;
'''Undocumented feature'''&amp;lt;br&amp;gt;&lt;br /&gt;
Mods are supported on Dedicated servers, however it requires additional manual configuration - Necessitating direct file access and editing on the dedicated server.  To install mods, you'll need to manually obtain the mod data first - Either from the Steam Workshop, or built yourself.  Upload/Store the mods in a specific folder on the server - You will also likely want to edit default.ini on the server to point to a particular server folder rather then the default directory, defined below.  Then manually add ModConfig.xml in the root directory of the server executible files, and manually edit the file to add each individual mod.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== modconfig.xml ===&lt;br /&gt;
Place a modconfig.xml in the serverfiles root (next to executable).  Filename case is significant on Linux.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;Mods&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;1&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath /&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourFirstModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
    &amp;lt;ModData&amp;gt;&lt;br /&gt;
      &amp;lt;Id&amp;gt;0&amp;lt;/Id&amp;gt;&lt;br /&gt;
      &amp;lt;IsEnabled&amp;gt;true&amp;lt;/IsEnabled&amp;gt;&lt;br /&gt;
      &amp;lt;LocalPath&amp;gt;YourSecondModFolderHere&amp;lt;/LocalPath&amp;gt;&lt;br /&gt;
    &amp;lt;/ModData&amp;gt;&lt;br /&gt;
  &amp;lt;/Mods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Local mods have Id 0.&amp;lt;br&amp;gt;&lt;br /&gt;
So try and keep the same structure in the server to prevent complications.&amp;lt;br&amp;gt;&lt;br /&gt;
''1 is core file and always need to be enabled''&lt;br /&gt;
&lt;br /&gt;
===Alternate ModConfig.xml===&lt;br /&gt;
If the above modconfig don't work, try this one:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;ModConfig xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Mods&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1001&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
        &amp;lt;unsignedLong&amp;gt;1002&amp;lt;/unsignedLong&amp;gt;&lt;br /&gt;
    &amp;lt;/Mods&amp;gt;&lt;br /&gt;
    &amp;lt;DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;/DisabledMods&amp;gt;&lt;br /&gt;
    &amp;lt;LocalMods&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;FirstModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1001&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
        &amp;lt;LocalMod&amp;gt;&lt;br /&gt;
            &amp;lt;folder&amp;gt;&amp;quot;SecondModFolderPath&amp;quot;&amp;lt;/folder&amp;gt;&lt;br /&gt;
            &amp;lt;modID&amp;gt;1002&amp;lt;/modID&amp;gt;&lt;br /&gt;
        &amp;lt;/LocalMod&amp;gt;&lt;br /&gt;
    &amp;lt;/LocalMods&amp;gt;&lt;br /&gt;
&amp;lt;/ModConfig&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Storing Mods ===&lt;br /&gt;
&lt;br /&gt;
 WIN: C:\Users\'''USERNAME_HERE'''\Documents\My Games\Stationeers\mods\&lt;br /&gt;
 LIN: /home/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
 OSX: /Users/'''USERNAME_HERE'''/My Games/Stationeers/mods/&lt;br /&gt;
&lt;br /&gt;
Mods folder root is displaced by the &amp;lt;SavePath&amp;gt; setting in setting.xml,&amp;lt;br&amp;gt;&lt;br /&gt;
not sure if it's a bug or feature&lt;br /&gt;
&lt;br /&gt;
 \Modname or workshopid\About\&lt;br /&gt;
(file containing description about mod and thumbnail)&lt;br /&gt;
 \Modname or workshopid\GameData\&lt;br /&gt;
(files you want to &amp;lt;u&amp;gt;append&amp;lt;/u&amp;gt; to the core gamedata)&lt;br /&gt;
&lt;br /&gt;
It's recommended to only put entries in the mod files you want to add or replace,&amp;lt;br&amp;gt;&lt;br /&gt;
do not try and replace the whole file for compatibility issues and errors.&lt;br /&gt;
&lt;br /&gt;
There are some examples of how to make your own mods in:&lt;br /&gt;
 \Steam\steamapps\common\Stationeers\rocketstation_Data\StreamingAssets\&lt;br /&gt;
Look for ExampleMod.zip and AttributesExampleMod.zip .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: There seems to be some changes as to how where the dedicated server loads mods from. The above solution seems to be deprecated, see below if above solution doesn't work.&lt;br /&gt;
&lt;br /&gt;
WIN:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
LIN:/home/'''USERNAME_HERE'''/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
OSX:[Where you've installed the server]/Steam/steamapps/common/Stationeers Dedicated Server/rocketstation_DedicatedServer_Data/StreamingAssets/Data/Mods &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Mods folder in /StreamingAssets/ is not premade, but needs to be added manually. Put the mods you want in here, and the server will load them. It is unknown if a ModConfig is even needed when doing it this way.&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine&amp;diff=21608</id>
		<title>Pressure Fed Gas Engine</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine&amp;diff=21608"/>
				<updated>2024-07-12T07:52:12Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: updated confusing statement about Full Thrust that was just incorrectly written.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox | decat = yes&lt;br /&gt;
 | title = Kit (Pressure Fed Gas Engine)&lt;br /&gt;
 | image = [[File:ItemKitPumpedLiquidEngine.png]]&lt;br /&gt;
 | header1 = Fabrication&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Created with&lt;br /&gt;
    |  data1 = [[Rocket_Manufactory|Rocket Manufactory (Tier One)]]&lt;br /&gt;
    | label2 = Cost&lt;br /&gt;
    |  data2 = 60000 [[Energy]], 20g [[Ingot_(Steel)|Steel]], 5g [[Ingot_(Electrum)|Electrum]], 20g [[Ingot_(Invar)|Invar]], 10g [[Ingot_(Constantan)|Constantan]]&lt;br /&gt;
   }}&lt;br /&gt;
 | header2 = Temperature&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Flashpoint&lt;br /&gt;
    |  data1 = 373K (100°C)&lt;br /&gt;
    | label2 = Autoignition&lt;br /&gt;
    |  data2 = 573K (300°C)&lt;br /&gt;
   }}&lt;br /&gt;
 | header3 = Other properties&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Paintable&lt;br /&gt;
    |  data1 = Yes&lt;br /&gt;
    | label2 = Stack Size&lt;br /&gt;
    |  data2 = 1&lt;br /&gt;
   }}&lt;br /&gt;
 | header4 = Prefabs&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Prefab Hash&lt;br /&gt;
    |  data1 = -121514007&lt;br /&gt;
    | label2 = Prefab Name&lt;br /&gt;
    |  data2 = ItemKitPressureFedGasEngine&lt;br /&gt;
   }}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Infobox | decat = yes&lt;br /&gt;
 | title = Pumped Liquid Engine&lt;br /&gt;
 | image = [[File:StructurePumpedLiquidEngine.png]]&lt;br /&gt;
 | header1 = Operation&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label10 = Base Power Usage&lt;br /&gt;
    |  data10 = 10W&lt;br /&gt;
    | label11 = Rocket Mass Contribution&lt;br /&gt;
    |  data11 = 500kg&lt;br /&gt;
    | label12 = Max Thrust&lt;br /&gt;
    |  data12 = 40.3kN&lt;br /&gt;
    | label13 = Efficiency&lt;br /&gt;
    |  data13 = 96%&lt;br /&gt;
    | label14 = Exhaust Velocity&lt;br /&gt;
    |  data14 = 3.86km/s (Isp: 394s)&lt;br /&gt;
   }}&lt;br /&gt;
 | header2 = Contruction&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label20 = Total cost&lt;br /&gt;
    |  data20 = 5x Insulated Pipe, 4x Steel Sheets&lt;br /&gt;
    | label21 = Constructed from&lt;br /&gt;
    |  data21 = Kit (Pressure Fed Gas Engine)&lt;br /&gt;
    | label22 = Placed on&lt;br /&gt;
    |  data22 = &lt;br /&gt;
    | label23 = Size&lt;br /&gt;
    |  data23 = &lt;br /&gt;
   }}&lt;br /&gt;
 | header4 = Other properties&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label40 = Paintable&lt;br /&gt;
    |  data40 = Yes&lt;br /&gt;
   }}&lt;br /&gt;
 | header5 = Prefabs&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label50 = Prefab Hash&lt;br /&gt;
    |  data50 = -624011170&lt;br /&gt;
    | label51 = Prefab Name&lt;br /&gt;
    |  data51 = StructurePressureFedGasEngine&lt;br /&gt;
   }}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:auto; overflow:auto; border-radius:10px; background-color:white;&amp;quot;&amp;gt;&amp;lt;p style=&amp;quot;margin:5px 0px 5px 10px;&amp;quot;&amp;gt;&amp;lt;i&amp;gt;&amp;quot;Inefficient but very powerful, the [[Pressure Fed Gas Engine]] moves gas from each of its two inputs based on the pressure of the input pipes. Control the mixing ratio of fuel by tweaking the input pressures to a target 2:1 mix of [[Volatiles|Liquid Volatiles]] to [[Oxygen|Liquid Oxygen]] gas. Chilling propellant gasses or using [[Nitrous_Oxide|Liquid Nitrous Oxide]] as an oxydizer will result in even higher trhust outputs.&amp;quot;&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;- Stationpedia&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comparison ==&lt;br /&gt;
{{:Rocket_Engines}}&lt;br /&gt;
&lt;br /&gt;
== Controversy==&lt;br /&gt;
This engine is controversially discussed among stationeers as possibly beeing the best choise of engine, but it depends on the use case. If using [[Liquid Nitrous Oxide]] as an oxydizer, it will most likely liquify in the tanks andor pipes and make your rocket go boom.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
To make the rocket work, use 2 [[Pipe Volume Pump|Volume Pumps]], 2 [[Pipe Analyzer|Pipe Analyzers]] and a IC10 Script to keep the Pressure up. Maybe don't build this rocket if it's your first one.&lt;br /&gt;
The ideal pressure of the intake pipes is not a fixed number; it depends on the size and weight of your rocket and needs to be determined either mathematically or by trial and error.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Control ==&lt;br /&gt;
Setup that proves to work nicely:&amp;lt;br&amp;gt;&lt;br /&gt;
define ATMOSMODEVOLPRESSURE 10000&lt;br /&gt;
&lt;br /&gt;
define ATMOSMODEOXYPRESSURE 5000&lt;br /&gt;
&lt;br /&gt;
define FULLMODEVOLPRESSURE 54000&lt;br /&gt;
&lt;br /&gt;
define FULLMODEOXYPRESSURE 27000&lt;br /&gt;
&lt;br /&gt;
define LOWTHROTTLETHRESHOLD 60 # the rocket is possibly landing when Throttle is lower that&lt;br /&gt;
&lt;br /&gt;
=== Define Constants and Variables: ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Pressure Settings:&amp;lt;/big&amp;gt; Determine and define the pressure values for both atmosphere and full mode. These will be used to control the pressure of the gases in the system.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Engine Parameters:&amp;lt;/big&amp;gt; Identify key parameters such as throttle thresholds and engine hash identifiers.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Initialize Components:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Enable Components:&amp;lt;/big&amp;gt; Turn on the necessary components like Volume Pumps and Pipe Analyzers to ensure they are functioning correctly.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Set Up Variables:&amp;lt;/big&amp;gt; Initialize variables for tracking current values like thrust-to-weight ratio and throttle.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Monitor Engine State ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Measure Thrust-to-Weight Ratio:&amp;lt;/big&amp;gt; Continuously check the current thrust-to-weight ratio to determine the operating state of the rocket.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Throttle Levels&amp;lt;/big&amp;gt; Monitor the current throttle level to determine if the rocket is under high or low throttle conditions.&amp;lt;br&amp;gt;&lt;br /&gt;
=== Throttle ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Low Throttle Condition&amp;lt;/big&amp;gt; If the throttle is below a certain threshold, this usually indicates the rocket might be landing or in a low-power state. Adjust the pressure settings accordingly.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;High Throttle Condition&amp;lt;/big&amp;gt; For high throttle, maintain or adjust the pressure settings to ensure optimal performance and efficiency.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Pressure Adjustment Logic===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Atmosphere Mode&amp;lt;/big&amp;gt; Set the pressure values for gas inputs to match the atmospheric conditions. This involves checking if the pressure is too high or too low and adjusting the volume pumps accordingly.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Full Mode&amp;lt;/big&amp;gt; When the rocket is in full power mode (e.g., during Takeoff or possibly landing), adjust the pressures to higher values to optimize thrust.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Control Loop ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Continuous Monitoring&amp;lt;/big&amp;gt; The script should continuously loop, checking and adjusting the pressure settings based on the current state of the rocket. This ensures the rocket operates efficiently throughout its journey.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Handling Pressure Adjustments ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Adjust Pumps:&amp;lt;/big&amp;gt; Depending on the current pressure readings, activate or deactivate pumps and set their volumes to reach the desired pressure levels.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;Update Settings:&amp;lt;/big&amp;gt; Make real-time adjustments to the pump settings to maintain the appropriate pressure levels for both atmosphere and space conditions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Data Network Properties ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-datanetworkproperties&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;data network properties&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-datanetworkproperties&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Pressure_Fed_Gas_Engine/Data_Network}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build States ==&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-buildstates&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;build states&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-buildstates&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Pressure_Fed_Gas_Engine/Build_States}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Category:Items]]&lt;br /&gt;
[[Category:Kits]]&lt;br /&gt;
[[Category:Rocketry]]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine/Data_Network&amp;diff=21570</id>
		<title>Pressure Fed Gas Engine/Data Network</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine/Data_Network&amp;diff=21570"/>
				<updated>2024-07-08T11:08:45Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Created page with &amp;quot;&amp;lt;div style=&amp;quot;width:auto; overflow:auto;&amp;quot;&amp;gt; === Input Data (Write) === {| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width:100%;&amp;quot; ! Parameter Name ! class=&amp;quot;unsortable&amp;quot; | Data Type ! class...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;width:auto; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
=== Input Data (Write) ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
! Parameter Name&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Data Type&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Value&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Description&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | On&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | Boolean&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 0&lt;br /&gt;
| Turns the device off.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:center;&amp;quot; | 1&lt;br /&gt;
| Turns the device on.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Setting&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| A variable setting that can be read or written, depending on the device.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Throttle&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| Increases the rate at which the machine workes (range: 0-100)&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; | &amp;lt;i&amp;gt;Update 0.2.4726.21691 - 19/01/2024&amp;lt;/i&amp;gt; &amp;lt;span class=&amp;quot;right&amp;quot;&amp;gt;[[Pressure_Fed_Gas_Engine/Data Network|/Data_Network]]&amp;lt;/span&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Output Data (Read) ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
! Parameter Name&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Data Type&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Value&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | Description&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Power&lt;br /&gt;
| Boolean&lt;br /&gt;
| &lt;br /&gt;
| Can be read to return if the device is correctly powered or not, set cia the power system, return 1 if powered and 0 if not.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Error&lt;br /&gt;
| Boolean&lt;br /&gt;
| &lt;br /&gt;
| 1 if device is in error state, otherwise 0.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Pressure&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The current pressure reading of the device.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Temperature&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The current temperature reading of the device.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Setting&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| A variable setting that can be read or written, depending on the device.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RatioOxygen&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The ratio of [[Oxygen]] in device atmosphere.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RatioCarbonDioxide&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The ratio of [[Carbon Dioxide]] in device atmosphere.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RatioNitrogen&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The ratio of [[Nitrogen]] in device atmosphere.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RatioPollutant&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The ratio of [[Pollutant]] in device atmosphere.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RatioVolatiles&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The ratio of [[Volatiles]] in device atmosphere.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RatioVolatiles&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The ratio of water in device atmosphere.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Maximum&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| Maximum setting of the device.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Ratio&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Ratio&lt;br /&gt;
| Boolean&lt;br /&gt;
| &lt;br /&gt;
| The current state of the device, 0 for off, 1 for on.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RequiredPower&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| Idle operating power quantity, does not nevessarily include extra demand power.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! TotalMoles&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| Returns the total moles of the device.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! RatioNitrousOxide&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The ratio of [[Nitrous Oxide]] in device atmosphere.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! PrefabHash&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The hash of the structure.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Combustion&lt;br /&gt;
| Boolean&lt;br /&gt;
| &lt;br /&gt;
| The assess atmosphere is on fire. Returns 1 if atmosphere is on fire, 0 if not.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! Throttle&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| Increases the rate at which the machie works (range: 0-100)&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! ReferenceId&lt;br /&gt;
| int| &lt;br /&gt;
| Unique Reference Identifier for this object.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! PassedMoles&lt;br /&gt;
| int&lt;br /&gt;
| &lt;br /&gt;
| The number of moles that passed through this device on the previous simulation tick.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; | &amp;lt;i&amp;gt;Update 0.2.4726.21691 - 19/01/2024&amp;lt;/i&amp;gt; &amp;lt;span class=&amp;quot;right&amp;quot;&amp;gt;[[Pressure_Fed_Gas_Engine/Data Network|/Data_Network]]&amp;lt;/span&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine&amp;diff=21569</id>
		<title>Pressure Fed Gas Engine</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine&amp;diff=21569"/>
				<updated>2024-07-08T11:02:01Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox | decat = yes&lt;br /&gt;
 | title = Kit (Pressure Fed Gas Engine)&lt;br /&gt;
 | image = [[File:ItemKitPumpedLiquidEngine.png]]&lt;br /&gt;
 | header1 = Fabrication&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Created with&lt;br /&gt;
    |  data1 = [[Rocket_Manufactory|Rocket Manufactory (Tier One)]]&lt;br /&gt;
    | label2 = Cost&lt;br /&gt;
    |  data2 = 60000 [[Energy]], 20g [[Ingot_(Steel)|Steel]], 5g [[Ingot_(Electrum)|Electrum]], 20g [[Ingot_(Invar)|Invar]], 10g [[Ingot_(Constantan)|Constantan]]&lt;br /&gt;
   }}&lt;br /&gt;
 | header2 = Temperature&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Flashpoint&lt;br /&gt;
    |  data1 = 373K (100°C)&lt;br /&gt;
    | label2 = Autoignition&lt;br /&gt;
    |  data2 = 573K (300°C)&lt;br /&gt;
   }}&lt;br /&gt;
 | header3 = Other properties&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Paintable&lt;br /&gt;
    |  data1 = Yes&lt;br /&gt;
    | label2 = Stack Size&lt;br /&gt;
    |  data2 = 1&lt;br /&gt;
   }}&lt;br /&gt;
 | header4 = Prefabs&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Prefab Hash&lt;br /&gt;
    |  data1 = -121514007&lt;br /&gt;
    | label2 = Prefab Name&lt;br /&gt;
    |  data2 = ItemKitPressureFedGasEngine&lt;br /&gt;
   }}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Infobox | decat = yes&lt;br /&gt;
 | title = Pumped Liquid Engine&lt;br /&gt;
 | image = [[File:StructurePumpedLiquidEngine.png]]&lt;br /&gt;
 | header1 = Operation&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label10 = Base Power Usage&lt;br /&gt;
    |  data10 = 10W&lt;br /&gt;
    | label11 = Rocket Mass Contribution&lt;br /&gt;
    |  data11 = 500kg&lt;br /&gt;
    | label12 = Max Thrust&lt;br /&gt;
    |  data12 = 40.3kN&lt;br /&gt;
    | label13 = Efficiency&lt;br /&gt;
    |  data13 = 96%&lt;br /&gt;
    | label14 = Exhaust Velocity&lt;br /&gt;
    |  data14 = 3.86km/s (Isp: 394s)&lt;br /&gt;
   }}&lt;br /&gt;
 | header2 = Contruction&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label20 = Total cost&lt;br /&gt;
    |  data20 = 5x Insulated Pipe, 4x Steel Sheets&lt;br /&gt;
    | label21 = Constructed from&lt;br /&gt;
    |  data21 = Kit (Pressure Fed Gas Engine)&lt;br /&gt;
    | label22 = Placed on&lt;br /&gt;
    |  data22 = &lt;br /&gt;
    | label23 = Size&lt;br /&gt;
    |  data23 = &lt;br /&gt;
   }}&lt;br /&gt;
 | header4 = Other properties&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label40 = Paintable&lt;br /&gt;
    |  data40 = Yes&lt;br /&gt;
   }}&lt;br /&gt;
 | header5 = Prefabs&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label50 = Prefab Hash&lt;br /&gt;
    |  data50 = -624011170&lt;br /&gt;
    | label51 = Prefab Name&lt;br /&gt;
    |  data51 = StructurePressureFedGasEngine&lt;br /&gt;
   }}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:auto; overflow:auto; border-radius:10px; background-color:white;&amp;quot;&amp;gt;&amp;lt;p style=&amp;quot;margin:5px 0px 5px 10px;&amp;quot;&amp;gt;&amp;lt;i&amp;gt;&amp;quot;Inefficient but very powerful, the [[Pressure Fed Gas Engine]] moves gas from each of its two inputs based on the pressure of the input pipes. Control the mixing ratio of fuel by tweaking the input pressures to a target 2:1 mix of [[Volatiles|Liquid Volatiles]] to [[Oxygen|Liquid Oxygen]] gas. Chilling propellant gasses or using [[Nitrous_Oxide|Liquid Nitrous Oxide]] as an oxydizer will result in even higher trhust outputs.&amp;quot;&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;- Stationpedia&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comparison ==&lt;br /&gt;
{{:Rocket_Engines}}&lt;br /&gt;
&lt;br /&gt;
== Controversy==&lt;br /&gt;
This engine is controversially discussed among stationeers as possibly beeing the best choise of engine, but it depends on the use case. If using [[Liquid Nitrous Oxide]] as an oxydizer, it will most likely liquify in the tanks andor pipes and make your rocket go boom.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
To make the rocket work, use 2 [[Pipe Volume Pump|Volume Pumps]], 2 [[Pipe Analyzer|Pipe Analyzers]] and a IC10 Script to keep the Pressure up. Maybe don't build this rocket if it's your first one.&lt;br /&gt;
The ideal pressure of the intake pipes is not a fixed number; it depends on the size and weight of your rocket and needs to be determined either mathematically or by trial and error.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Control ==&lt;br /&gt;
Setup that proves to work nicely:&amp;lt;br&amp;gt;&lt;br /&gt;
define ATMOSMODEVOLPRESSURE 10000&lt;br /&gt;
&lt;br /&gt;
define ATMOSMODEOXYPRESSURE 5000&lt;br /&gt;
&lt;br /&gt;
define FULLMODEVOLPRESSURE 54000&lt;br /&gt;
&lt;br /&gt;
define FULLMODEOXYPRESSURE 27000&lt;br /&gt;
&lt;br /&gt;
define LOWTHROTTLETHRESHOLD 60 # the rocket is possibly landing when Throttle is lower that&lt;br /&gt;
&lt;br /&gt;
=== Define Constants and Variables: ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Pressure Settings:&amp;lt;/big&amp;gt; Determine and define the pressure values for both atmosphere and full mode. These will be used to control the pressure of the gases in the system.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Engine Parameters:&amp;lt;/big&amp;gt; Identify key parameters such as throttle thresholds and engine hash identifiers.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Initialize Components:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Enable Components:&amp;lt;/big&amp;gt; Turn on the necessary components like Volume Pumps and Pipe Analyzers to ensure they are functioning correctly.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Set Up Variables:&amp;lt;/big&amp;gt; Initialize variables for tracking current values like thrust-to-weight ratio and throttle.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Monitor Engine State ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Measure Thrust-to-Weight Ratio:&amp;lt;/big&amp;gt; Continuously check the current thrust-to-weight ratio to determine the operating state of the rocket.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Throttle Levels&amp;lt;/big&amp;gt; Monitor the current throttle level to determine if the rocket is under high or low throttle conditions.&amp;lt;br&amp;gt;&lt;br /&gt;
=== Throttle ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Low Throttle Condition&amp;lt;/big&amp;gt; If the throttle is below a certain threshold, this usually indicates the rocket might be landing or in a low-power state. Adjust the pressure settings accordingly.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;High Throttle Condition&amp;lt;/big&amp;gt; For high throttle, maintain or adjust the pressure settings to ensure optimal performance and efficiency.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Pressure Adjustment Logic===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Atmosphere Mode&amp;lt;/big&amp;gt; Set the pressure values for gas inputs to match the atmospheric conditions. This involves checking if the pressure is too high or too low and adjusting the volume pumps accordingly.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Full Mode&amp;lt;/big&amp;gt; When the rocket is in full power mode (e.g., during space travel), adjust the pressures to higher values to optimize thrust.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Control Loop ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Continuous Monitoring&amp;lt;/big&amp;gt; The script should continuously loop, checking and adjusting the pressure settings based on the current state of the rocket. This ensures the rocket operates efficiently throughout its journey.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Handling Pressure Adjustments ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Adjust Pumps:&amp;lt;/big&amp;gt; Depending on the current pressure readings, activate or deactivate pumps and set their volumes to reach the desired pressure levels.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;Update Settings:&amp;lt;/big&amp;gt; Make real-time adjustments to the pump settings to maintain the appropriate pressure levels for both atmosphere and space conditions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Data Network Properties ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-datanetworkproperties&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;data network properties&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-datanetworkproperties&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Pressure_Fed_Gas_Engine/Data_Network}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build States ==&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-buildstates&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;build states&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-buildstates&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Pressure_Fed_Gas_Engine/Build_States}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Category:Items]]&lt;br /&gt;
[[Category:Kits]]&lt;br /&gt;
[[Category:Rocketry]]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	<entry>
		<id>https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine&amp;diff=21568</id>
		<title>Pressure Fed Gas Engine</title>
		<link rel="alternate" type="text/html" href="https://legacy.stationeers-wiki.com/index.php?title=Pressure_Fed_Gas_Engine&amp;diff=21568"/>
				<updated>2024-07-08T11:00:10Z</updated>
		
		<summary type="html">&lt;p&gt;JacksonTheMaster: Created page with &amp;quot;{{Infobox | decat = yes  | title = Kit (Pressure Fed Gas Engine)  | image = File:ItemKitPumpedLiquidEngine.png  | header1 = Fabrication    {{Infobox | decat = yes | child...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox | decat = yes&lt;br /&gt;
 | title = Kit (Pressure Fed Gas Engine)&lt;br /&gt;
 | image = [[File:ItemKitPumpedLiquidEngine.png]]&lt;br /&gt;
 | header1 = Fabrication&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Created with&lt;br /&gt;
    |  data1 = [[Rocket_Manufactory|Rocket Manufactory (Tier One)]]&lt;br /&gt;
    | label2 = Cost&lt;br /&gt;
    |  data2 = 60000 [[Energy]], 20g [[Ingot_(Steel)|Steel]], 5g [[Ingot_(Electrum)|Electrum]], 20g [[Ingot_(Invar)|Invar]], 10g [[Ingot_(Constantan)|Constantan]]&lt;br /&gt;
   }}&lt;br /&gt;
 | header2 = Temperature&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Flashpoint&lt;br /&gt;
    |  data1 = 373K (100°C)&lt;br /&gt;
    | label2 = Autoignition&lt;br /&gt;
    |  data2 = 573K (300°C)&lt;br /&gt;
   }}&lt;br /&gt;
 | header3 = Other properties&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Paintable&lt;br /&gt;
    |  data1 = Yes&lt;br /&gt;
    | label2 = Stack Size&lt;br /&gt;
    |  data2 = 1&lt;br /&gt;
   }}&lt;br /&gt;
 | header4 = Prefabs&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label1 = Prefab Hash&lt;br /&gt;
    |  data1 = -121514007&lt;br /&gt;
    | label2 = Prefab Name&lt;br /&gt;
    |  data2 = ItemKitPressureFedGasEngine&lt;br /&gt;
   }}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Infobox | decat = yes&lt;br /&gt;
 | title = Pumped Liquid Engine&lt;br /&gt;
 | image = [[File:StructurePumpedLiquidEngine.png]]&lt;br /&gt;
 | header1 = Operation&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label10 = Base Power Usage&lt;br /&gt;
    |  data10 = 10W&lt;br /&gt;
    | label11 = Rocket Mass Contribution&lt;br /&gt;
    |  data11 = 500kg&lt;br /&gt;
    | label12 = Max Thrust&lt;br /&gt;
    |  data12 = 40.3kN&lt;br /&gt;
    | label13 = Efficiency&lt;br /&gt;
    |  data13 = 96%&lt;br /&gt;
    | label14 = Exhaust Velocity&lt;br /&gt;
    |  data14 = 3.86km/s (Isp: 394s)&lt;br /&gt;
   }}&lt;br /&gt;
 | header2 = Contruction&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label20 = Total cost&lt;br /&gt;
    |  data20 = 5x Insulated Pipe, 4x Steel Sheets&lt;br /&gt;
    | label21 = Constructed from&lt;br /&gt;
    |  data21 = Kit (Pressure Fed Gas Engine)&lt;br /&gt;
    | label22 = Placed on&lt;br /&gt;
    |  data22 = &lt;br /&gt;
    | label23 = Size&lt;br /&gt;
    |  data23 = &lt;br /&gt;
   }}&lt;br /&gt;
 | header4 = Other properties&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label40 = Paintable&lt;br /&gt;
    |  data40 = Yes&lt;br /&gt;
   }}&lt;br /&gt;
 | header5 = Prefabs&lt;br /&gt;
   {{Infobox | decat = yes | child = yes&lt;br /&gt;
    | label50 = Prefab Hash&lt;br /&gt;
    |  data50 = -624011170&lt;br /&gt;
    | label51 = Prefab Name&lt;br /&gt;
    |  data51 = StructurePressureFedGasEngine&lt;br /&gt;
   }}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:auto; overflow:auto; border-radius:10px; background-color:white;&amp;quot;&amp;gt;&amp;lt;p style=&amp;quot;margin:5px 0px 5px 10px;&amp;quot;&amp;gt;&amp;lt;i&amp;gt;&amp;quot;Inefficient but very powerful, the [[Pressure Fed Gas Engine]] moves gas from each of its two inputs based on the pressure of the input pipes. Control the mixing ratio of fuel by tweaking the input pressures to a target 2:1 mix of [[Volatiles|Liquid Volatiles]] to [[Oxygen|Liquid Oxygen]] gas. Chilling propellant gasses or using [[Nitrous_Oxide|Liquid Nitrous Oxide]] as an oxydizer will result in even higher trhust outputs.&amp;quot;&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;- Stationpedia&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comparison ==&lt;br /&gt;
{{:Rocket_Engines}}&lt;br /&gt;
&lt;br /&gt;
== Controversy==&lt;br /&gt;
This engine is controversially discussed among stationeers as possibly beeing the best choise of engine, but it depends on the use case. If using [[Liquid Nitrous Oxide]] as an oxydizer, it will most likely liquify in the tanks andor pipes and make your rocket go boom.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
To make the rocket work, use 2 [[Pipe Volume Pump|Volume Pumps]], 2 [[Pipe Analyzer|Pipe Analyzers]] and a IC10 Script to keep the Pressure up. Maybe don't build this rocket if it's your first one.&lt;br /&gt;
The ideal pressure of the intake pipes is not a fixed number; it depends on the size and weight of your rocket and needs to be determined either mathematically or by trial and error.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Control ==&lt;br /&gt;
Setup that proves to work nicely:&amp;lt;br&amp;gt;&lt;br /&gt;
define ATMOSMODEVOLPRESSURE 10000&lt;br /&gt;
&lt;br /&gt;
define ATMOSMODEOXYPRESSURE 5000&lt;br /&gt;
&lt;br /&gt;
define FULLMODEVOLPRESSURE 54000&lt;br /&gt;
&lt;br /&gt;
define FULLMODEOXYPRESSURE 27000&lt;br /&gt;
&lt;br /&gt;
define LOWTHROTTLETHRESHOLD 60 # the rocket is possibly landing when Throttle is lower that&lt;br /&gt;
&lt;br /&gt;
=== Define Constants and Variables: ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Pressure Settings:&amp;lt;/big&amp;gt; Determine and define the pressure values for both atmosphere and full mode. These will be used to control the pressure of the gases in the system.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Engine Parameters:&amp;lt;/big&amp;gt; Identify key parameters such as throttle thresholds and engine hash identifiers.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Initialize Components:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Enable Components:&amp;lt;/big&amp;gt; Turn on the necessary components like Volume Pumps and Pipe Analyzers to ensure they are functioning correctly.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Set Up Variables:&amp;lt;/big&amp;gt; Initialize variables for tracking current values like thrust-to-weight ratio and throttle.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Monitor Engine State ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Measure Thrust-to-Weight Ratio:&amp;lt;/big&amp;gt; Continuously check the current thrust-to-weight ratio to determine the operating state of the rocket.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Throttle Levels&amp;lt;/big&amp;gt; Monitor the current throttle level to determine if the rocket is under high or low throttle conditions.&amp;lt;br&amp;gt;&lt;br /&gt;
=== Throttle ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Low Throttle Condition&amp;lt;/big&amp;gt; If the throttle is below a certain threshold, this usually indicates the rocket might be landing or in a low-power state. Adjust the pressure settings accordingly.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;High Throttle Condition&amp;lt;/big&amp;gt; For high throttle, maintain or adjust the pressure settings to ensure optimal performance and efficiency.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Pressure Adjustment Logic===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Atmosphere Mode&amp;lt;/big&amp;gt; Set the pressure values for gas inputs to match the atmospheric conditions. This involves checking if the pressure is too high or too low and adjusting the volume pumps accordingly.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Full Mode&amp;lt;/big&amp;gt; When the rocket is in full power mode (e.g., during space travel), adjust the pressures to higher values to optimize thrust.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Control Loop ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Continuous Monitoring&amp;lt;/big&amp;gt; The script should continuously loop, checking and adjusting the pressure settings based on the current state of the rocket. This ensures the rocket operates efficiently throughout its journey.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Handling Pressure Adjustments ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Adjust Pumps:&amp;lt;/big&amp;gt; Depending on the current pressure readings, activate or deactivate pumps and set their volumes to reach the desired pressure levels.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;Update Settings:&amp;lt;/big&amp;gt; Make real-time adjustments to the pump settings to maintain the appropriate pressure levels for both atmosphere and space conditions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Data Network Properties ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-datanetworkproperties&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;data network properties&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-datanetworkproperties&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Pumped_Liquid_Engine/Data_Network}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build States ==&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-customtoggle-buildstates&amp;quot; style=&amp;quot;width:auto; overflow:auto; text-indent:10px; border: 2px solid #253C60; border-radius:10px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Click here to see/hide all the &amp;lt;span style=&amp;quot;color:#E57125;&amp;quot;&amp;gt;build states&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; id=&amp;quot;mw-customcollapsible-buildstates&amp;quot;&amp;gt;&amp;lt;br&amp;gt;{{:Pumped_Liquid_Engine/Build_States}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Category:Items]]&lt;br /&gt;
[[Category:Kits]]&lt;br /&gt;
[[Category:Rocketry]]&lt;/div&gt;</summary>
		<author><name>JacksonTheMaster</name></author>	</entry>

	</feed>