Steam Community Guide Dedicated Server Setup

From Doku Wiki
Jump to: navigation, search

This item has been removed from the community because it violates Steam Community & Content Guidelines. It is only visible to you. If you believe your item has been removed by mistake, please contact Steam Support. This item is incompatible with Stormworks: Build and Rescue. Please see the instructions page for reasons why this item might not work within Stormworks: Build and Rescue. Current visibility: Hidden This item will only be visible to you, admins, and anyone marked as a creator.



Current visibility: Friends-only This item will only be visible in searches to you, your friends, and admins.



94 ratings



Dedicated Server Setup By Beginner



A short instruction of how to install, config and run a dedicated server



1 2 1 6 1 1



Award Favorite Favorited Unfavorite



This item has been added to your Favorites.



Created by



Beginner Online



Category: MultiplayerLanguages: English



Posted Updated



13 Feb, 2020 @ 1:27pm 22 Apr @ 9:22am



6,146 Unique Visitors 155 Current Favorites



Guide Index



Overview



Server Requirements



Server Installation



Server Configuration



Server Running



Firewalls and Portforwarding



Known Issues



Suggestions



Comments



Server Requirements HardwareSince most of the physics is calculated on the server side it's better to have a CPU with a high clock rate. Intel i7-i9 (8-10th generations) or AMD Ryzen 5-9 (2-3 generations) will be better here. For Xeon's would be good if clock rate will be over 3.5 GHz. Roughly speaking, each server instance will take 2-3 threads so you can run multiple servers on dedicated machines with mentioned CPUs.



Of course, it all depends on the number of servers you plan to create and how loaded they will be. For example, I'm running two simple servers (Climb and Battlebots) that can run even on systems with just two cores and clock speed about 2Ghz. On games , there can be servers that use much more complex vehicles and missions for their game modes. And there is games that server even with a top-notch CPU will not start slowing down the simulation.



There only two things that you shouldn't really care about - is GPU and RAM. I don't think you will ever be needed more than 4 GB per one Stormworks server (unless you are using mods).



NetworkA lot of data is required to be sent and received. The more players online the more traffic will be. There are no exact numbers because it all depends on the world scene (the number of objects, vehicles and theirs logic that needs to be sync) but roughly I would say you need to expect 50-300Kb/s per player.



SystemOnly Windows systems are supported for now. Confirmed to work on Window 7, Windows 10, Windows Server 2016 and 2019. Should work with no issues on Windows 8 and 8.1 as well.



OverallMinimum:CPU: 2 GHzRAM: 4 GB free RAMBandwidth: 10 Mbps



Recommended:CPU: 4-5 GHzRAM: 4 GB free RAMBandwidth: 20 Mbps + static IP address for a public server



Server Installation WindowsStormworks Dedicated Server is available as a tool and can be simply downloaded via Steam if you want to try it out on your system first. But even in that case always run server.exe directly from the installation folder (do not use server launch from Steam client).



In case if you want to run an actual dedicated server I would recommend to stick with SteamCMD:- Download SteamCMD



- Unzip it to C:\steamcmd for example



- Go to that folder and launch steamcmd



- After update is finished you should see this:



- Now all is needed is login as anonymous and download Stormworks Dedicated Server files. For that you will need to type next commands (or simply copy and paste all three lines at once):force_install_dir c:\swds\ login anonymous app_update 1247090 validate- NOTE: Of course, you can use any other directories for SteamCMD and the Stormworks server.



- If you did all right then you should be able to see SteamCMD downloading:



- Once it finished type quit to exit and close SteamCMD:



- Installation complete. Here how C:\ drive should look if follow exact the same steps:



Stormworks game is a very frequently updated one. We are getting new features and bugfixes pretty much every week. To keep your server be up to date I would recommend you to create a batch file in the SteamCMD directory with next content:steamcmd +force_install_dir c:\swds\ +login anonymous +app_update 1247090 +quitLinuxLinux is not supported but should work fine under the Wine so let me know if you will need a guide for that.



Server Configuration Go to the server folder and run server.exe at least once to create a server_config.xml file that will be in %appdata%\Stormworks folder by default.



Edit that file with any text editor such as default Notepad or more advanced Notepad++, for example:Please, keep the XML syntax right.



Server settingsServer data parameters are pretty much understandable but I'll leave a note for some of them:port="25564" sets the game and query ports that will be used for the server name="Stormworks" set the name of the server save_name="" set the world save name that will be used for save and loading max_players="32" set the max number of the players for server password="" set the password (empty means no password) physics_timestep="180" change physics resolution, 0 is auto by default (acceptable values are 60, 120, 180) wildlife_enabled="true" enables birds and fish simulation fish_spawn_rate="1" rate of fish spawn around players, requires wildlife_enabled (acceptable values are 0, 1, 2, 3)



World settings are only used when you start a new game (i.e. set empty save_name) which means changing these settings will not change already created saves:seed="" set the seed that will be used for the world generation (empty is random) day_night_length="60" set the length of the day in minutes settings_menu="true" enable/disable custom settings menu (available only for admins if locked) base_island="" set what player base will be owned on start (empty is start base) dlc_weapons="true" enable/disable weapons for new worldIn other words, if you created a game with disabled weapons DLC then you will need either create a new world or either edit scene.xml of already created world to change that parameter.



List of bases to put in your config:Main Biome data/tiles/island_15.xml Creative Island data/tiles/island_43_multiplayer_base.xml Multiplayer Base data/tiles/island_34_military.xml Military Base data/tiles/island_25.xml Harbour Base data/tiles/island12.xml Starter Base data/tiles/test_tile.xml Helicopter Base data/tiles/island_24.xml Airstrip Base data/tiles/island_33_tile_33.xml Mainland Airstrip data/tiles/island_33_tile_32.xml Terminal Spycakes data/tiles/island_33_tile_end.xml Terminal Camodo Custom Bases data/tiles/island_29_playerbase_submarine.xml Custom Base Submarine data/tiles/island_32_playerbase_heli.xml Custom Base Heli data/tiles/island_30_playerbase_boat.xml Custom Base Large Boat data/tiles/island_31_playerbase_combo.xml Custom Base Small Boat data/tiles/oil_rig_playerbase.xml Custom Base Oil Rig Arcitc Islands data/tiles/arctic_island_playerbase.xml Arctic Island Base data/tiles/arctic_tile_22.xml Arctic Mainland Outpost data/tiles/arctic_tile_12_oilrig.xml Arctic Oil Platform Sawyer Islands data/tiles/mega_island_2_6.xml Harrison Airbase data/tiles/mega_island_12_6.xml O'Neill Airbase data/tiles/mega_island_9_8.xml North Harbor Dock data/tiles/mega_island_15_2.xml Fishing Village DockAdminsThis section is needed to give admin permissions for clients by using Steam64 ID. To find ID of your or your friends accounts you can use websites like https://steamid.xyz/ or https://steamidfinder.com/Example:



BlacklistBlacklist is simply a ban list. We fill it in the same way as we add admins. Accounts of players that were banned by admins will be automatically stored here too.



WhitelistWhitelist also fills the same way but note that the server will be automatically switched into whitelist mode if there will be at least one entry. In that mode only players from that list will be able to connect.



AuthorizedA list of players that allowed to interact with workbench. By default only admins and whitelisted players are allowed to spawn, despawn and return vehicles so if you want other players to have that permission then you should add them to that list.



PlaylistsHere we put all addons (missions playlists and environment mods) that we want to be on the server.Example for enabling all default addons:



Command line parametersIf you want your server config file to be in a more comfortable folder (let's say, in the same folder where you have your server files like absolutely most of game dedicated servers do) then you can use +server_dir launch parameter to set the path you need.



For example, server launched with these parameters will look for config and world saves in C:\swds:server.exe +server_dir c:\swdsOr will create them with default settings if these files and folders are missing:But if you want to run multiple servers you will need to use separate path for each one. This is how batch script look for my Mad Max server, for example:@echo off title Mad Max Server :start C:\steamcmd\steamcmd.exe +force_install_dir c:\swds +login anonymous +app_update 1247090 validate +quit C:\swds\server.exe +server_dir c:\swds\mad_max goto startThis will use server_config.xml from the mad_max folder and automatically update and restart server on process termination (or simply on server crash).



Server Running Test runJust try to run the server.exe again and, if there are no issues with the server config, then you should be able to see status console with ticks and timer running.See Known Issues if you are not reaching that status or server is crashing.



Chat CommandsA very very basic commands we have for now:?save saves the game (if savename is not set then will save in autosave_server and also overwrite the save defined in server settings) ?kick kick player ?ban ban player ?add_admin add player to the admins list ?remove_admin removes player from the admins ?add_auth add player to authorized list ?remove_auth removes player from authorizedAll commands works in the chat only for now and here is session ID of player that we can see in the players menu.



Firewalls and Portforwarding To make your server be visible for other players you need to have a public IP and set your firewall to allow connections for server executable (Stormworks Dedicated Server). Here how it looks for the default Windows Firewall:



If you install Stormworks Dedicated Server as a tool via Steam client then Steam will add that rule automatically for the default Windows Firewall. For all other security software, you will need to add it manually.



Port ForwardingIf you are running a server on the machine that is behind the NAT (WiFi router in most of the cases) then you also will need to forward all three game ports. There are thousands of different router models that go with different hardware and firmware versions so I can't show you how to forward these ports but you can use https://portforward.com/ website for that.



Here how it may look on popular D-Link routers with "orange" firmware:If you run more than one server from your network you need to use different port range for each.



But be aware, that if you run server and client from the same network or even from the same computer then to see your own server you will need to enable NAT Loopback or install Microsoft Loopback adapter for example.



Installing Microsoft Loopback AdapterThis is a workaround for those who run a dedicated server on the same computer/network as the game client. Please, use it only if other players already can see and join your server but you can't.



- Open Control Panel > Device Manager and select Network Adapters



- Select menu Action > Add legacy hardware



- Select Install the hardware that I manually select from a list (Advanced)



- Select Network Adapters in the list



- Next



- Select Microsoft in Manufacturer list



- Select Microsoft KM-TEST Loopback Adapter in Model list



- Next > Next > Finish



- Close Device Manager window



- Open Control Panel > Network and Internet > Network Connections



- You should see a new connection that uses Microsoft Loopback Adapter but cannot establish connection



- Right click on that connection and select Properties



- Double click Internet Protocol Version 4 (TCP/IPv4)



- Select Use the following IP address



- NOTE: If it was already selected and you see some IPs entered then you opened a wrong connection. Get out of here by clicking Canel in both windows.



- Enter in IP address field your external IP address (you can see it here for example https://www.myip.com/)



- You can leave default Subnet mask



- Click OK buttons in opened windows to save settings



If you did all right you should be able to see your own server when that connection is enabled.If you lost your Internet connection then you probably changed IPv4 parameters of your actual Internet connection.



Known Issues Server is not launching at allMake sure that Visual C++ Redistributable 2013[www.microsoft.com] is installed.Server stops on launch with settings parse errorMeans that server config file is corrupted or have a syntax error.I can launch but don't get to the status screenIt could be server config error or something wrong with the missions or environment mods. Try to start a server with the default config.Server is running fine but it does not shows up in Internet tabIf you downloaded it as a tool using Steam client then always run server.exe directly. Also, Make sure that server ports are forwarded and your firewall is not blocking server executable. Check server in the Steam server browser [url]steam://open/servers[/url] or ask your friends to check server visibility. GAME SERVERS could be that it's just because of NAT.Server is running fine and shows up in Internet tab but with empty nameThere is no support for non-latic characters so you better to avoid them in server naming.Server crashesThe game is still in developement and dedicated server is something that surely may crash. Please, report all issues using a Report a Bug button in the game menu. It would be super helpful if you will also attach crash minidumps that should be in the folder with the Stormworks server files.



Suggestions This is a very early version of the dedicated server for the Stomrworks game. There is a long road before we will reach something that will be comfortable to run and manage, so please, be patient.



Feel free to ask questions and leave suggestions in comments. I'll put most popular wants here:- Add Linux support



- Add automatic vehicle cleanup



- Add vehicle spawn queue



- Allow admins always have access to creative menu (even if it's set to false)



- Allow admins join full server



- Allow admins join without entering a password



- Allow whitelisted players join full server



- Allow whitelisted players join without entering a password



- Enable/disable whitelist mode only (to have passworded servers with whitelists to allow not whitelisted players join it so admins can ?add_whitelist on the go)



- Enable/disable authorization requirement for vehicles spawn



< > 195 Comments



AwfulCitizen 6 Jun @ 12:15am



I just wanted to say to Beginner, thank you for writing a dedicated server guide that has pretty much EVERYTHING you need to be documented to be able to run a dedicated server properly. I bought the game just for this guide (well and to run it on my server... My hat off to you. If only every other developer took heed on how to write a proper guide like this one.



Toastypaws_YT 1 Jun @ 2:19pm



where is the server folder



Greysunn 7 May @ 3:45pm



where is server.exe?



WeeAkuAku 4 May @ 9:18am



Hello do you know how to add the research tree to the server ? I cant seem to add it to the server just like it is in classic mode



Beginner [author] 5 Apr @ 8:17pm



Issue with server_config will be fixed in this week update v1.4.15.



As for the validate issue then I cannot reproduce it. All files are downloaded correctly. Steamcmd now throws a warning: Please use force_install_dir before logon! But it still works. I'll change commands order in the guide just in case.



Was:



login anonymousforce_install_dir c:\swds\app_update 1247090 validate



Now:



force_install_dir c:\swds\login anonymousapp_update 1247090 validate



muhammedexplosive911 27 Mar @ 9:52am



when i paste login anonymousforce_install_dir c:\swds\app_update 1247090 validate into steamcmd every file but server.exe generates



BMW M3 Competition 21 Mar @ 6:13pm



in server_config i can see only half of settings (i cant change name) and other thingsCan someone help?



Yarik6126 24 Feb @ 5:58am



in server_config settings don't appear fully, its like theres only half of them but not all



OffTheGridCG 11 Feb @ 1:08am



Heyo, tried to run the server with Wine on linux but received an error about it not being able to open a window. Is there a way to run the server headless?