diff --git a/README.md b/README.md index a6a598b1..0552ce79 100644 --- a/README.md +++ b/README.md @@ -180,6 +180,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [Mordhau](/steamcmd_servers/mordhau) * [No More Room in Hell](/steamcmd_servers/nmrih) * [Onset](/steamcmd_servers/onset) +* [Pavlov VR](/steamcmd_servers/pavlov_vr) * [PixARK](/steamcmd_servers/pixark) * [Post Scriptum](/steamcmd_servers/post_scriptum) * [Project Zomboid](/steamcmd_servers/project_zomboid) diff --git a/steamcmd_servers/README.md b/steamcmd_servers/README.md index 18e27f7b..54de0f43 100644 --- a/steamcmd_servers/README.md +++ b/steamcmd_servers/README.md @@ -59,6 +59,9 @@ This is a collection of servers that use SteamCMD to install. ## Onset [Onset](onset) +## Pavlov VR +[Pavlov VR](pavlov_vr) + ## PixARK [PixARK](pixark) diff --git a/steamcmd_servers/pavlov_vr/Game.ini b/steamcmd_servers/pavlov_vr/Game.ini new file mode 100644 index 00000000..8e519c32 --- /dev/null +++ b/steamcmd_servers/pavlov_vr/Game.ini @@ -0,0 +1,15 @@ +[/Script/Pavlov.DedicatedServer] +bEnabled=true +ServerName="My dedicated server" +MaxPlayers=50 +bSecured=true +bCustomServer=true +bWhitelist=false +RefreshListTime=120 +LimitedAmmoType=2 +TickRate=90 +TimeLimit=60 +Password=0000 +MapRotation=(MapId="UGC1668673188", GameMode="SND") +MapRotation=(MapId="datacenter", GameMode="SND") +MapRotation=(MapId="sand", GameMode="DM") \ No newline at end of file diff --git a/steamcmd_servers/pavlov_vr/README.md b/steamcmd_servers/pavlov_vr/README.md new file mode 100644 index 00000000..9c475577 --- /dev/null +++ b/steamcmd_servers/pavlov_vr/README.md @@ -0,0 +1,24 @@ +# Pavlov VR +Pavlov VR is a multiplayer shooter in VR with heavy focus on community features. Realistic reloading features and fast paced combat as part of the core experience. + +## Recommended server settings +### Minimum RAM +This server requires about 2048M to run. A 3.2 GHz core will support approximately 24 players. Since Pavlov VR is single threaded, faster clockspeeds will mean higher performance. + +### Tickrate +For stable results, please use a minimum of 50 and a maximum of 120. + +### Multiple Servers on the same host +If you are running multiple servers and have set additional ports (see http://wiki.pavlov-vr.com/index.php?title=Dedicated_server#Running_multiple_servers_on_one_host) then you need to allow access to the defined port plus the port 400 higher. So if you use 7000 as your port, then UDP 7000 and 7400 need to be open. + +For additional help, please see the following - http://wiki.pavlov-vr.com/index.php?title=Dedicated_server + +### Steam Workshop +When downloading a large map from the steam workshop make sure your node has enough RAM assigned to store the map files in its tmpfs! This requires you to modify your wings configuration to have the tmpfs_size value increased. + +## Server Ports +| Port | default | +|-------|---------| +| Game | 7777 | +| Game | 8177 | +| RCON | 8188 | diff --git a/steamcmd_servers/pavlov_vr/RconSettings.txt b/steamcmd_servers/pavlov_vr/RconSettings.txt new file mode 100644 index 00000000..66dbe06b --- /dev/null +++ b/steamcmd_servers/pavlov_vr/RconSettings.txt @@ -0,0 +1,2 @@ +Password= +Port= \ No newline at end of file diff --git a/steamcmd_servers/pavlov_vr/egg-pavlov-v-r.json b/steamcmd_servers/pavlov_vr/egg-pavlov-v-r.json new file mode 100644 index 00000000..26301ce2 --- /dev/null +++ b/steamcmd_servers/pavlov_vr/egg-pavlov-v-r.json @@ -0,0 +1,77 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1", + "update_url": null + }, + "exported_at": "2021-05-29T12:01:27-04:00", + "name": "Pavlov VR", + "author": "admin@devil.wtf", + "description": "Pavlov VR is a multiplayer shooter in VR with heavy focus on community features. Realistic reloading features and fast paced combat as part of the core experience. Play the #1 most popular VR shooter on PC today.", + "features": null, + "images": [ + "quay.io\/parkervcp\/pterodactyl-images:debian_source" + ], + "file_denylist": [], + "startup": ".\/Pavlov\/Binaries\/Linux\/PavlovServer -PORT={{SERVER_PORT}}", + "config": { + "files": "{\r\n \"Pavlov\/Saved\/Config\/RconSettings.txt\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"Password=\": \"Password={{env.RCON_PASSWORD}}\",\r\n \"Port=\": \"Port={{env.RCON_PORT}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"PavlovLog: StartPlay was called\"\r\n}", + "logs": "{}", + "stop": "^C" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'debian:buster-slim'\r\n##\r\n#\r\n# Variables\r\n# STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n# WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n# SRCDS_APPID - steam app id ffound here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# EXTRA_FLAGS - when a server has extra glas for things like beta installs or updates.\r\n#\r\n##\r\napt -y update\r\napt -y --no-install-recommends install wget gdb curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\nchmod +x \"\/mnt\/server\/Pavlov\/Binaries\/Linux\/PavlovServer\"\r\n\r\n# Install Configuration Files\r\nmkdir -p \/mnt\/server\/Pavlov\/Saved\/Logs\r\nmkdir -p \/mnt\/server\/Pavlov\/Saved\/Config\/LinuxServer\r\n\r\ncd \/mnt\/server\/Pavlov\/Saved\/Config\/LinuxServer\r\nif [ ! -f Game.ini ]; then\r\n echo -e \"Downloading Pavlov VR Game.ini\"\r\n curl -ssL -o Game.ini https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/steamcmd_servers\/pavlov_vr\/Game.ini\r\nfi\r\n\r\ncd \/mnt\/server\/Pavlov\/Saved\/Config\r\nif [ ! -f RconSettings.txt ]; then\r\n echo -e \"Downloading Pavlov VR RconSettings.txt\"\r\n curl -ssL -o RconSettings.txt https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/steamcmd_servers\/pavlov_vr\/RconSettings.txt\r\nfi\r\n\r\ncd \/mnt\/server\/\r\nif [ -f PavlovServer.sh ]; then\r\n rm PavlovServer.sh\r\nfi", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "App ID", + "description": "Pavlov VR steam app id", + "env_variable": "SRCDS_APPID", + "default_value": "622970", + "user_viewable": false, + "user_editable": false, + "rules": "nullable|numeric" + }, + { + "name": "Server Type", + "description": "Choose Between Beta or Shack (-beta shack) or (-beta beta_server). Leave blank for the normal build.", + "env_variable": "EXTRA_FLAGS", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string|max:20" + }, + { + "name": "RCON Password", + "description": "Enter a password for your RCON Configuration.", + "env_variable": "RCON_PASSWORD", + "default_value": "CHANGE_ME", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:20" + }, + { + "name": "RCON Port", + "description": "Port for your RCON Configuration.", + "env_variable": "RCON_PORT", + "default_value": "8188", + "user_viewable": true, + "user_editable": true, + "rules": "required|numeric" + }, + { + "name": "Auto-update server", + "description": "This is to enable auto-updating for servers.\r\n\r\nDefault is 0. Set to 1 to update", + "env_variable": "AUTO_UPDATE", + "default_value": "0", + "user_viewable": true, + "user_editable": true, + "rules": "required|boolean" + } + ] +}