Insurgency: Sandstorm

Insurgency: Sandstorm

43 Bewertungen
Insurgency: Sandstorm Dedicated Server on Windows with Powershell
Von Robomikel
Creates a default checkpoint server.
Creates Mapcycle.txt
Creates Admins.txt
Creates complete Game.ini

Downloads SteamCMD, Creates Server Folder, Installs server, Manage Server including Install, Check process, Backup, monitoring with Discord Alerts, Starting, Stopping, Restart, Validate, Update, Pull Gamedig details. All Done from a PS terminal. >_

This is a Powershell version of my 2-click install. I added several features. Some input is required. It does create a Checkpoint server if you keep the default values.
   
Preis verleihen
Favorisieren
Favorisiert
Entfernen
Prerequisites
Required prerequisites on your Host.

- Visual C++ 2015 Redistributable: https://www.microsoft.com/en-us/download/details.aspx?id=53587
- VIsual C++ 2017 Redistributable: https://aka.ms/vs/15/release/vc_redist.x64.exe

create a windows user: non-admin to install, run steam-server-manager, and game server.

Open and forward ports for game server. Server port, Query Port and Rcon (optional)
27102 - server port
27131 - query port
27103 - rcon port
Download and Extract Steam-Server-Manager
Download and Extract
https://github.com/Robomikel/Steam-Server-Manager

OR

Install with PS:
open PowerShell and change the directory to where you want SSM to be installed.
Default Server files will be in the Steam-Server-Manager folder.

cd G:\Downloads\servers\

Command install instructions[github.com]


Run SSM to create config-local\local_settings.ps1
./ssm
you should see the help menu appear

Optional:
SSM to Path
You can add SSM to PowerShell Path. meaning you can run SSM commands from any directory.
SSM to Path[github.com] You also will not need dot forward slash ( ./ssm).
ssm


Custom Backup and ServerFiles Directories

you can specify server files location and separate backup locations, like separate drives.
custom backup and server files directories[github.com]
Default settings used during install/s
During install will prompt for Vars




Default settings used during install

Steam-Server-Manager\config-local\Sandstorm_default.ps1




################## Change Default Variables ################# # Server Scenario $global:scenario = "Scenario_Tideway_Checkpoint_Security" # Server Map $global:defaultmap = "Buhriz" # Server max Players $global:maxplayers = "8" # Server Port $global:port = "27102" # Server Query Port $global:queryport = "27131" # Server Name $global:hostname = "SERVERNAME" # Server Password $global:serverpassword = "" # Server Rcon Port $global:rconport = "27103" # Server Rcon Password $global:rconpassword = "$RANDOMPASSWORD" # Server Admin Steam ID 64 $global:steamid64 = "" # Map Lighting $global:lighting = "Night" # Game Server Token $global:gslt = "" # Mods Enabled? $true / Leave Empty $global:modsenabled = "" # OAuth 2 Management, Generate Access Token $global:oauthtoken = "" ##############################/\##############################
Install Sandstorm Server
Open a PowerShell terminal NOT as admin.

cd Path\To\Steam-Server-Manager

From Path\To\Steam-Server-Manager

./ssm install inssserver


It will ask if using Anonymous login for steamCMD.
Use Anonymous Login?
Press Enter for Anonymous

Launch Param Vars
changing ports and server after install
Changing hostname here will auto-update the game.ini
Path\To\Steam-Server-Manager\inssserver\Variables-inssserver.ps1 - Launch param and editable Vars unique to instance.
Steam-Server-Manager Commands
ssm Menu ->
./ssm menu
- Use interactive Menu instead of commands

start server ->
./ssm start inssserver
- Starts sandstorm server process

stop server ->
./ssm stop inssserver
- stop process for sandstorm server

restart server ->
./ssm restart inssserver
- restarts process for sandstorm server]

Daily restart ->
./ssm install-restart inssserver
- Creates a Task to Restart/Update server once a day

validate server ->
./ssm validate inssserver
- Validate App ID files
monitor server ->
./ssm monitor inssserver
- checks process for sandstorm server, starts if porocess not running. =used by install-monitor

install monitor ->
./ssm install-monitor inssserver
- Creates Scheduled Task to check if server is running every 15 minutes


update server ->
./ssm update inssserver
- updates server files

backup server ->
./ssm backup inssserver
- Creates zip folder of server files in backups folder

restore server ->
./ssm restore inssserver
- Creates zip folder of server files in backups folder

details server ->
./ssm details inssserver
Get details on server and host

query server ->
./ssm query inssserver
Get gamedig details on server


Update ssm -
./ssm ssm update
- Downloads and overwrites ssm github files
Locations of folder and config files
Default Vars before first run

Path\To\Steam-Server-Manager\config-local\Sandstorm_default.ps1

Server FIles
Path\To\Steam-Server-Manager\inssserver\*


Mapcycle
Path\To\Steam-Server-Manager\inssserver\Insurgency\Config\Server\Mapcycle.txt


Game.ini
Path\To\Steam-Server-Manager\inssserver\Insurgency\Config\Server\WindowsServer\Game.ini

Launch Param Vars
changing ports and server after install
Changing hostname here will auto-update the game.ini
Path\To\Steam-Server-Manager\inssserver\Variables-inssserver.ps1 - Launch param and editable Vars unique to instance.

ssm settings
Change default ssm settings in
Path\To\Steam-Server-Manager\config-local\local_settings.ps1
add Discord Webhook
change Custom Backup and Server files location
Mods
1. Create an account at https://mod.io
2. in API access under your profile generate OAuth Token
3. After ssm install, Before Sandstrom install. Set config-local\Sandstorm_default.ps1
Note: if installed sandstorm already. rename variables-inssserver.ps1 and run install command again to get updated version.
# Mods Enabled? $true / Leave Empty $global:modsenabled = "$true" # OAuth 2 Management, Generate Access Token $global:oauthtoken = "OAUTH TOKEN HERE"

4. After install add mod IDs in
PATH\TO\Steam-Server-Manager\inssserver\Insurgency\Config\Server\Mods.txt

5. Start server. Mods will download and install in Insurgency\Mods
6. ./ssm mcrcon inssserver - to use rcon to use travel command to change to modded map or add to Mapcycle.txt
More info
After installing and running. Can edit Variables-inssserver.ps1 to edit launch params like Ports or mutators, adding GSLT. Locate and edit Mapcycle, game.ini , enabling rcon, and admins.txt.

Steam-Server-Manager
https://github.com/Robomikel/Steam-Server-Manager#steam-server-manager

Guide:
https://sandstorm-support.newworldinteractive.com/hc/en-us/articles/360049211072-Server-Admin-Guide

https://insurgencysandstorm.mod.io/guides/server-admin-guide

Comparison install, mutators and rcon info:
https://steamcommunity.com/sharedfiles/filedetails/?id=1582357608

20 Kommentare
Robomikel  [Autor] 21. Sep. 2024 um 7:37 
@Kaltenborn - yes, I just tested it.
Kaltenborn 18. Juli 2024 um 11:08 
Hello Robomikel, is this server creation method still valid?
Robomikel  [Autor] 17. Aug. 2021 um 16:22 
A list of all the modes doesn't help to much because you also need to know the map that supports that Scenario.

I would use the Admin Manual
https://sandstorm-support.newworldinteractive.com/hc/en-us/articles/360049211072-Server-Admin-Guide

scroll down to "Scenario List"
it will show all the Maps and the Scenario it supports is in Description. Quick google search for that mode and you can find out if its Co-op.
Rudolf Fischer 16. Aug. 2021 um 13:50 
thank you, do you have an example for the different pve-types?
how do i change the map, i can´t write anything in the console

Robomikel  [Autor] 15. Aug. 2021 um 23:12 
This is the default config for a checkpoint (PVE) server. If you want to add Outpost , or another PVE mode. just add them to the mapcycle . use the launch params for the first mode and map, then mapcycle.txt for the rest after the initial map.
Rudolf Fischer 10. Aug. 2021 um 14:16 
How can i set up a PVE only Server?

Robomikel  [Autor] 19. Okt. 2020 um 20:48 
Master branch has been updated - lots of goodies check out the README.md
Robomikel  [Autor] 18. Okt. 2020 um 11:48 
pre-release 1.6.2 Branch has an updated "$version 0". changing the $version variable to "0" in core_settings.ps1 or local_settings.ps1 in the pre-relase branch will force ssm to prompt for each variable during install. working on a lot of issues but I am hoping to merge with main branch soon. make sure to read the pre-release branch README.md. I have been making a lot changes. hopefully to make it easier use and bring some cool features as well as some stability.
Robomikel  [Autor] 12. Okt. 2020 um 17:44 
you want to add it before the install. Because if it's empty during the install it will remove it from the launch params.

No worries if you installed already. add it the default-config\Sandstorm_default.ps1 and run the install again. no need to delete the files. it will just validate them. Then it will rebuild the variables-*.ps1. if you made changes in the Game.ini. you may want to copy it somewhere outside the serverfolder as a backup.

I went ahead and added the new map as well. ./ssm ssm update to get the new config.
white conter 11. Okt. 2020 um 22:33 
How to apply gslt token to server? Edit to Variables-[myfoldername].ps1 ?