PowerShell Steam Server Manager
Install Any location: Download, Extract, and Open PowerShell and Change Directory to ssm.ps1 to run script. Wiki
Windows 10 may require to unblock downloaded files. In the Steam-Server-Manager folder. Use
gci -r | Unblock-File
commandAdd SSM to Path to use
ssm
command in any directory without./
Wiki
PS Commands:
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12;
Invoke-WebRequest "https://github.com/Robomikel/Steam-Server-Manager/archive/master.zip" -O Steam-Server-Manager.zip
Expand-Archive "Steam-Server-Manager.zip" "Steam-Server-Manager"
Copy-Item Steam-Server-Manager\Steam-Server-Manager-master\* Steam-Server-Manager\ -Recurse -Force
Remove-Item Steam-Server-Manager\Steam-Server-Manager-master -Recurse -Force
Set-Location Steam-Server-Manager
Displays in console menu. Interactive Console Menu for SSM.
./ssm.ps1 menu
open PowerShell as user NOT Admin
ssm accepts 1 or 2 parameters. first param specifies ssm command and the second is server folder name. if server folder name does not exist it creates it. .\ssm.ps1 install insserver
Configure during install :
During server install will download and copy default-config\*_default.ps1
to config-local\*_default.ps1
. Will Prompt for input to change default variables like ports and servername. Wiki
change "$advanced = on" in config-local\local_settings before run to disable prompt for input to change default variables. Pauses to allow manual edit of
\Steam-Server-Manager\config-local\*_default.ps1
change any vars like port/s or server name.
Recommned using Optional name, It will automatically grab APP ID
Example:
Install miscreated server ./ssm install misserver
./ssm <command> <serverFolder>
<serverFolder>
and starts installCreates custom default config for server - if available
Manage Steam server with features
./ssm menu
- Use Interactive SSM console Menu Wiki ./ssm install <serverFolder>
- install server ./ssm start <serverFolder>
- Starts server process ./ssm stop <serverFolder>
- stop process server ./ssm restart <serverFolder>
- stops and starts process for server ./ssm validate <serverFolder>
- Validate App ID files ./ssm monitor <serverFolder>
- checks process server and starts if need with Discord Alert. Optional GameDig query ./ssm update <serverFolder>
- updates App ID, with Discord alert. Stop server as needed, can be disabled in settings ./ssm force-update <serverFolder>
- updates App ID. Force server stop and update ./ssm backup <serverFolder>
- Creates zip folder of server files in backups folder, with Discord alert. purge backups over specfic count. (Downloads portable 7Zip) ./ssm restore <serverFolder>
- Lists zip folder backups of server files in backups folder and overwrites serverfiles with backup files. ./ssm install-monitor <serverFolder>
- Creates Scheduled Task to monitor server ./ssm install-restart <serverFolder>
- create scheduled task to restart server daily. ./ssm install-backup <serverFolder>
- create scheduled task to backup server daily. ./ssm install-mod <serverFolder>
- Install Sourcemod or Oxide for specified servers ./ssm update-mods <serverFolder>
- updates mods and plugins for server ./ssm install-ws <serverFolder>
- Workshop Install ./ssm discord <serverFolder>
- Discord Alert -command will send test alert. requires Discord webhook in \config-local\local_settings.ps1
./ssm mcrcon <serverFolder>
- Uses MCRcon. Rcon to server (Downloads MCRcon) ./ssm query <serverFolder>
- runs gamedig on server (Downloads NodeJS and installs Gamedig) ./ssm ssm update
- Downloads and overwrites ssm github files ./ssm details <serverFolder>
- outputs host and server details. ./ssm stats
- Graphical output of host CPU and Memory details../ssm install-ntop
- htop-like system-monitor with Vi-emulation for Windows. command ./ntop
or ntop
Wikissm start-pode
- will download Pode. start pode and Discord bot. Use ctl-C to stop Wiki\ServerFolder\variables-*.ps1
to change launch vars or edit Launch Params. Wiki \config-local\local_settings.ps1
change some of the default features. Discord Webhook Goes here. local_settings.ps1 will be created on first run. \functions\core_pastebin.ps1
(dev key and creds in local_settings.ps1 and enable) When creating a Schedule task to run Monitor script in background.
If using a user windows account. May need to add user to the "log on as batch job" to run the task in background under that account
wiki
Does not install Dependencies like Visual C++ Redistributable
https://www.techpowerup.com/download/visual-c-redistributable-runtime-package-all-in-one/
Does not install Dependencies like Direct X
https://www.microsoft.com/en-us/download/details.aspx?id=35
Direct X offline installer if above fails
https://www.microsoft.com/en-us/download/details.aspx?id=8109
Does not install Dependencies like Java
https://www.java.com/en/download/
Does not Forward ports
https://portforward.com/
Does not open ports on firewall
https://www.tomshardware.com/news/how-to-open-firewall-ports-in-windows-10,36451.html
https://github.com/csprance/MisRCON/releases
https://github.com/Tiiffi/mcrcon
https://github.com/sonicsnes/node-gamedig
Game server configs from https://github.com/GameServerManagers "open source, open mind"
https://github.com/EvotecIT/PSDiscord
https://github.com/EvotecIT/PSSharedGoods
https://github.com/aaronparker/VcRedist
https://github.com/PrateekKumarSingh/Graphical
https://github.com/chrisseroka/ps-menu
https://github.com/splewis/get5/releases
https://github.com/splewis/csgo-pug-setup/releases
https://github.com/KyleSanderson/SteamWorks
https://github.com/Badgerati/Pode
https://github.com/discordjs/discord.js/
https://github.com/ampreeT/SourceCoop
https://github.com/compujuckel/AssettoServer
https://github.com/Pryaxis/TShock