Merge pull request #3 from pelican-eggs/upstream
Append the forgotten commit
This commit is contained in:
		
						commit
						08c0397b3b
					
				
							
								
								
									
										194
									
								
								astro_colony/egg-astro-colony-wine.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										194
									
								
								astro_colony/egg-astro-colony-wine.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,194 @@ | |||||||
|  | { | ||||||
|  |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|  |     "meta": { | ||||||
|  |         "version": "PTDL_v2", | ||||||
|  |         "update_url": null | ||||||
|  |     }, | ||||||
|  |     "exported_at": "2024-04-12T14:03:30+02:00", | ||||||
|  |     "name": "Astro Colony [wine]", | ||||||
|  |     "author": "limmek@swedon.se", | ||||||
|  |     "description": "Explore endless Universe and create the most efficient constellation of colonies. Build conveyor systems to automate production. Take care of Astronauts and their needs! Establish new colonies as part of intergalactic simulation.", | ||||||
|  |     "features": [ | ||||||
|  |         "steam_disk_space" | ||||||
|  |     ], | ||||||
|  |     "docker_images": { | ||||||
|  |         "wine": "ghcr.io\/parkervcp\/yolks:wine_latest" | ||||||
|  |     }, | ||||||
|  |     "file_denylist": [], | ||||||
|  |     "startup": "wine .\/AstroColony\/Binaries\/Win64\/AstroColonyServer.exe -log -QueryPort={{SERVER_QUERY_PORT}} -SteamServerName=\"{{SERVER_NAME}}\"", | ||||||
|  |     "config": { | ||||||
|  |         "files": "{\r\n    \"AstroColony\/Saved\/Config\/WindowsServer\/ServerSettings.ini\": {\r\n        \"parser\": \"ini\",\r\n        \"find\": {\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].ServerPassword\": \"{{env.SERVER_PASSWORD}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].Seed\": \"{{env.SERVER_MAPSEED}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].MapName\": \"{{env.SERVER_MAPNAME}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].MaxPlayers\": \"{{env.SERVER_MAXPLAYERS}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].ShouldLoadLatestSavegame\": \"{{env.SERVER_LOADLATESTSAVEGAME}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].AdminList\": \"{{env.SERVER_ADMINS}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].SharedTechnologies\": \"{{env.SERVER_SHAREDTECHNOLOGIES}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].OxygenConsumption\": \"{{env.SERVER_OXYGENCONSUMPTION}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].FreeConstruction\": \"{{env.SERVER_FREECONSTRUCTION}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].AutosaveInterval\": \"{{env.SERVER_AUTOSAVEINTERVAL}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].AutosavesCount\": \"{{env.SERVER_AUTOSAVESCOUNT}}\"\r\n        }\r\n    }\r\n}", | ||||||
|  |         "startup": "{\r\n    \"done\": \"server create success\"\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 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server\/AstroColony\/Binaries\/Win64 +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n# set up settings\r\ncreate_server_settings_ini() {\r\n    cat > ServerSettings.ini <<EOF\r\n[\/Script\/AstroColony.EHServerSubsystem]\r\nServerPassword=${SERVER_PASSWORD}\r\nSeed=${SERVER_MAPSEED}\r\nMapName=${SERVER_MAPNAME}\r\nMaxPlayers=${SERVER_MAXPLAYERS}\r\nShouldLoadLatestSavegame=${SERVER_LOADLATESTSAVEGAME}\r\nAdminList=${SERVER_ADMINS} \r\nSharedTechnologies=${SERVER_SHAREDTECHNOLOGIES}\r\nOxygenConsumption=${SERVER_OXYGENCONSUMPTION}\r\nFreeConstruction=${SERVER_FREECONSTRUCTION}\r\nAutosaveInterval=${SERVER_AUTOSAVEINTERVAL}\r\nAutosavesCount=${SERVER_AUTOSAVESCOUNT}\r\nEOF\r\n}\r\n\r\nFILE=\/mnt\/server\/AstroColony\/Saved\/Config\/WindowsServer\/ServerSettings.ini\r\nif [ -f \"$FILE\" ]; then\r\n    echo \"Config already exists, skipping\"\r\nelse \r\n    echo \"Config does not yet exist, making one\"\r\n    mkdir -p \/mnt\/server\/AstroColony\/Saved\/Config\/WindowsServer\/\r\n    cd \/mnt\/server\/AstroColony\/Saved\/Config\/WindowsServer\/\r\n    create_server_settings_ini\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|  |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|  |             "entrypoint": "bash" | ||||||
|  |         } | ||||||
|  |     }, | ||||||
|  |     "variables": [ | ||||||
|  |         { | ||||||
|  |             "name": "[Advanced] Steam App ID", | ||||||
|  |             "description": "steam app id found here - https:\\\/\\\/developer.valvesoftware.com\\\/wiki\\\/Dedicated_Servers_List.", | ||||||
|  |             "env_variable": "SRCDS_APPID", | ||||||
|  |             "default_value": "2662210", | ||||||
|  |             "user_viewable": false, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|string|in:2662210", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "[Advanced] Windows Install Flag", | ||||||
|  |             "description": "Required for windows game server installs", | ||||||
|  |             "env_variable": "WINDOWS_INSTALL", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": false, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Server Query Port", | ||||||
|  |             "description": "UDP port for Steam server list features.", | ||||||
|  |             "env_variable": "SERVER_QUERY_PORT", | ||||||
|  |             "default_value": "27015", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|integer", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Server Name", | ||||||
|  |             "description": "Change the server name.", | ||||||
|  |             "env_variable": "SERVER_NAME", | ||||||
|  |             "default_value": "Astro Colony Dedicated Server", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|string|max:30", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Server Password", | ||||||
|  |             "description": "Set the game password. Leave empty to make server public.", | ||||||
|  |             "env_variable": "SERVER_PASSWORD", | ||||||
|  |             "default_value": "", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "nullable|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Max Players", | ||||||
|  |             "description": "Amount of max allowed players.", | ||||||
|  |             "env_variable": "SERVER_MAXPLAYERS", | ||||||
|  |             "default_value": "5", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|between:1,10", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Map Seed", | ||||||
|  |             "description": "Set the map seed.", | ||||||
|  |             "env_variable": "SERVER_MAPSEED", | ||||||
|  |             "default_value": "1337", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|integer|digits_between:1,10", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Map Name", | ||||||
|  |             "description": "Set the name of the save file.", | ||||||
|  |             "env_variable": "SERVER_MAPNAME", | ||||||
|  |             "default_value": "YourMapName", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|string|max:30", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Autosave Interval", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SERVER_AUTOSAVEINTERVAL", | ||||||
|  |             "default_value": "5.0", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Autosaves Count", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SERVER_AUTOSAVESCOUNT", | ||||||
|  |             "default_value": "10", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|integer", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Admin List", | ||||||
|  |             "description": "List of server administrators only (steamID64s) allowed, separatet by comma.", | ||||||
|  |             "env_variable": "SERVER_ADMINS", | ||||||
|  |             "default_value": "", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "nullable|string", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Should Load Latest Savegame", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SERVER_LOADLATESTSAVEGAME", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Shared Technologies", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SERVER_SHAREDTECHNOLOGIES", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Oxygen Consumption", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SERVER_OXYGENCONSUMPTION", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Free Construction", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SERVER_FREECONSTRUCTION", | ||||||
|  |             "default_value": "0", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Disabling or enabling automated updates on boot", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|  |         } | ||||||
|  |     ] | ||||||
|  | } | ||||||
| @ -4,50 +4,38 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2023-11-06T17:38:07+01:00", |     "exported_at": "2024-04-12T14:04:24+02:00", | ||||||
|     "name": "Astro Colony", |     "name": "Astro Colony", | ||||||
|     "author": "limmek@swedon.se", |     "author": "limmek@swedon.se", | ||||||
|     "description": "Explore endless Universe and create the most efficient constellation of colonies. Build conveyor systems to automate production. Take care of Astronauts and their needs! Establish new colonies as part of intergalactic simulation.", |     "description": "Explore endless Universe and create the most efficient constellation of colonies. Build conveyor systems to automate production. Take care of Astronauts and their needs! Establish new colonies as part of intergalactic simulation.", | ||||||
|     "features": [ |     "features": null, | ||||||
|         "steam_disk_space" |  | ||||||
|     ], |  | ||||||
|     "docker_images": { |     "docker_images": { | ||||||
|         "wine": "ghcr.io\/parkervcp\/yolks:wine_latest" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     }, |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": "wine .\/AstroColony\/Binaries\/Win64\/AstroColonyServer.exe -log -SteamServerName=\\\"${SERVER_NAME}\\\" -QueryPort=${SERVER_QUERY_PORT}", |     "startup": ".\/AstroColony\/Binaries\/Linux\/AstroColonyServer -log -QueryPort={{SERVER_QUERY_PORT}} -SteamServerName=\\\"{{SERVER_NAME}}\\\"", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{\r\n    \"AstroColony\/Saved\/Config\/WindowsServer\/ServerSettings.ini\": {\r\n        \"parser\": \"ini\",\r\n        \"find\": {\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].ServerPassword\": \"{{env.SERVER_PASSWORD}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].MapName\": \"{{env.SERVER_MAP}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].MaxPlayers\": \"{{env.SERVER_MAXPLAYERS}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].SavegameName\": \"{{env.SERVER_GAMESAVE}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].ShouldLoadLatestSavegame\": \"{{env.SERVER_LOADLATESTSAVEGAME}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].AdminList\": \"{{env.SERVER_ADMINS}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].SharedTechnologies\": \"{{env.SERVER_SHAREDTECHNOLOGIES}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].OxygenConsumption\": \"{{env.SERVER_OXYGENCONSUMPTION}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].FreeConstruction\": \"{{env.SERVER_FREECONSTRUCTION}}\"\r\n        }\r\n    }\r\n}", |         "files": "{\r\n    \"AstroColony\/Saved\/Config\/LinuxServer\/ServerSettings.ini\": {\r\n        \"parser\": \"ini\",\r\n        \"find\": {\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].ServerPassword\": \"{{env.SERVER_PASSWORD}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].Seed\": \"{{env.SERVER_MAPSEED}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].MapName\": \"{{env.SERVER_MAPNAME}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].MaxPlayers\": \"{{env.SERVER_MAXPLAYERS}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].ShouldLoadLatestSavegame\": \"{{env.SERVER_LOADLATESTSAVEGAME}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].AdminList\": \"{{env.SERVER_ADMINS}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].SharedTechnologies\": \"{{env.SERVER_SHAREDTECHNOLOGIES}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].OxygenConsumption\": \"{{env.SERVER_OXYGENCONSUMPTION}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].FreeConstruction\": \"{{env.SERVER_FREECONSTRUCTION}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].AutosaveInterval\": \"{{env.SERVER_AUTOSAVEINTERVAL}}\",\r\n            \"[\/Script\/AstroColony.EHServerSubsystem].AutosavesCount\": \"{{env.SERVER_AUTOSAVESCOUNT}}\"\r\n        }\r\n    }\r\n}", | ||||||
|         "startup": "{\r\n    \"done\": \"server create success\"\r\n}", |         "startup": "{\r\n    \"done\": \"server create success\"\r\n}", | ||||||
|         "logs": "{}", |         "logs": "{}", | ||||||
|         "stop": "^^C" |         "stop": "^C" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n# set up settings\r\ncreate_server_settings_ini() {\r\n    cat > ServerSettings.ini <<EOF\r\n[\/Script\/AstroColony.EHServerSubsystem]\r\nServerPassword=${SERVER_PASSWORD}\r\nMapName=${SERVER_MAP}\r\nMaxPlayers=${SERVER_MAXPLAYERS}\r\nSavegameName=${SERVER_GAMESAVE}\r\nShouldLoadLatestSavegame=${SERVER_LOADLATESTSAVEGAME}\r\nAdminList=${SERVER_ADMINS}\r\nSharedTechnologies=${SERVER_SHAREDTECHNOLOGIES}\r\nOxygenConsumption=${SERVER_OXYGENCONSUMPTION}\r\nFreeConstruction=${SERVER_FREECONSTRUCTION}\r\nEOF\r\n}\r\n\r\nFILE=\/mnt\/server\/AstroColony\/Saved\/Config\/WindowsServer\/ServerSettings.ini\r\nif [ -f \"$FILE\" ]; then\r\n    echo \"Config already exists, skipping\"\r\nelse \r\n    echo \"Config does not yet exist, making one\"\r\n    mkdir -p \/mnt\/server\/AstroColony\/Saved\/Config\/WindowsServer\/\r\n    cd \/mnt\/server\/AstroColony\/Saved\/Config\/WindowsServer\/\r\n    create_server_settings_ini\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates tar unzip lib32gcc-s1 wget\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n# set up settings\r\ncreate_server_settings_ini() {\r\n    cat > ServerSettings.ini <<EOF\r\n[\/Script\/AstroColony.EHServerSubsystem]\r\nServerPassword=${SERVER_PASSWORD}\r\nSeed=${SERVER_MAPSEED}\r\nMapName=${SERVER_MAPNAME}\r\nMaxPlayers=${SERVER_MAXPLAYERS}\r\nShouldLoadLatestSavegame=${SERVER_LOADLATESTSAVEGAME}\r\nAdminList=${SERVER_ADMINS} \r\nSharedTechnologies=${SERVER_SHAREDTECHNOLOGIES}\r\nOxygenConsumption=${SERVER_OXYGENCONSUMPTION}\r\nFreeConstruction=${SERVER_FREECONSTRUCTION}\r\nAutosaveInterval=${SERVER_AUTOSAVEINTERVAL}\r\nAutosavesCount=${SERVER_AUTOSAVESCOUNT}\r\nEOF\r\n}\r\n\r\nFILE=\/mnt\/server\/AstroColony\/Saved\/Config\/LinuxServer\/ServerSettings.ini\r\nif [ -f \"$FILE\" ]; then\r\n    echo \"Config already exists, skipping\"\r\nelse \r\n    echo \"Config does not yet exist, making one\"\r\n    mkdir -p \/mnt\/server\/AstroColony\/Saved\/Config\/LinuxServer\/\r\n    cd \/mnt\/server\/AstroColony\/Saved\/Config\/LinuxServer\/\r\n    create_server_settings_ini\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io\/parkervcp\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "\/bin\/bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
|     "variables": [ |     "variables": [ | ||||||
|         { |         { | ||||||
|             "name": "Steam App ID", |             "name": "[Advanced] Steam App ID", | ||||||
|             "description": "steam app id found here - https:\\\/\\\/developer.valvesoftware.com\\\/wiki\\\/Dedicated_Servers_List.", |             "description": "Steam App ID used for installation and updates. Rarely needs to be changed.", | ||||||
|             "env_variable": "SRCDS_APPID", |             "env_variable": "SRCDS_APPID", | ||||||
|             "default_value": "2662210", |             "default_value": "2934900", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|in:2662210", |             "rules": "required|string|in:2934900", | ||||||
|             "field_type": "text" |  | ||||||
|         }, |  | ||||||
|         { |  | ||||||
|             "name": "Server Name", |  | ||||||
|             "description": "Change the server name.", |  | ||||||
|             "env_variable": "SERVER_NAME", |  | ||||||
|             "default_value": "Astro Colony Dedicated Server", |  | ||||||
|             "user_viewable": true, |  | ||||||
|             "user_editable": true, |  | ||||||
|             "rules": "required|string|max:30", |  | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
| @ -60,6 +48,16 @@ | |||||||
|             "rules": "required|integer", |             "rules": "required|integer", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Server Name", | ||||||
|  |             "description": "Change the server name.", | ||||||
|  |             "env_variable": "SERVER_NAME", | ||||||
|  |             "default_value": "Astro Colony Dedicated Server", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|string|max:30", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Password", |             "name": "Server Password", | ||||||
|             "description": "Set the game password. Leave empty to make server public.", |             "description": "Set the game password. Leave empty to make server public.", | ||||||
| @ -70,16 +68,6 @@ | |||||||
|             "rules": "nullable|string|max:20", |             "rules": "nullable|string|max:20", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |  | ||||||
|             "name": "Map Name", |  | ||||||
|             "description": "Set the map seed.", |  | ||||||
|             "env_variable": "SERVER_MAP", |  | ||||||
|             "default_value": "SomeMapName", |  | ||||||
|             "user_viewable": true, |  | ||||||
|             "user_editable": true, |  | ||||||
|             "rules": "required|string|max:20", |  | ||||||
|             "field_type": "text" |  | ||||||
|         }, |  | ||||||
|         { |         { | ||||||
|             "name": "Max Players", |             "name": "Max Players", | ||||||
|             "description": "Amount of max allowed players.", |             "description": "Amount of max allowed players.", | ||||||
| @ -87,14 +75,44 @@ | |||||||
|             "default_value": "5", |             "default_value": "5", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|between:1,5", |             "rules": "required|between:1,10", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Savegame Name", |             "name": "Map Seed", | ||||||
|             "description": "Set the name of the save file.", |             "description": "Set the map seed.", | ||||||
|             "env_variable": "SERVER_GAMESAVE", |             "env_variable": "SERVER_MAPSEED", | ||||||
|             "default_value": "SomeSavegameName", |             "default_value": "7300", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|integer|digits_between:1,10", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Map Name", | ||||||
|  |             "description": "Map name displayed in serverlist", | ||||||
|  |             "env_variable": "SERVER_MAPNAME", | ||||||
|  |             "default_value": "YourMapName", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|string|max:30", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Autosave Interval", | ||||||
|  |             "description": "Minutes between auto save (5.0 = 5 minutes)", | ||||||
|  |             "env_variable": "SERVER_AUTOSAVEINTERVAL", | ||||||
|  |             "default_value": "5.0", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Autosaves Count", | ||||||
|  |             "description": "How many auto save files to keep.", | ||||||
|  |             "env_variable": "SERVER_AUTOSAVESCOUNT", | ||||||
|  |             "default_value": "10", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:20", |             "rules": "required|string|max:20", | ||||||
| @ -150,16 +168,6 @@ | |||||||
|             "rules": "required|boolean", |             "rules": "required|boolean", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |  | ||||||
|             "name": "Windows Install Flag", |  | ||||||
|             "description": "Required for windows game server installs", |  | ||||||
|             "env_variable": "WINDOWS_INSTALL", |  | ||||||
|             "default_value": "1", |  | ||||||
|             "user_viewable": false, |  | ||||||
|             "user_editable": false, |  | ||||||
|             "rules": "required|boolean", |  | ||||||
|             "field_type": "text" |  | ||||||
|         }, |  | ||||||
|         { |         { | ||||||
|             "name": "Auto Update", |             "name": "Auto Update", | ||||||
|             "description": "Disabling or enabling automated updates on boot", |             "description": "Disabling or enabling automated updates on boot", | ||||||
|  | |||||||
| @ -4,25 +4,27 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2022-08-07T17:56:38+02:00", |     "exported_at": "2024-04-01T12:25:08+02:00", | ||||||
|     "name": "Black Mesa", |     "name": "Black Mesa", | ||||||
|     "author": "avalongamecs@gmail.com", |     "author": "avalongamecs@gmail.com", | ||||||
|     "description": "Black Mesa is a 2020 first-person shooter game. It is a third-party remake of Half-Life (1998) made in the Source game engine.", |     "description": "Black Mesa is a 2020 first-person shooter game. It is a third-party remake of Half-Life (1998) made in the Source game engine.", | ||||||
|     "features": null, |     "features": [ | ||||||
|  |         "steam_disk_space" | ||||||
|  |     ], | ||||||
|     "docker_images": { |     "docker_images": { | ||||||
|         "quay.io\/pterodactyl\/core:source": "quay.io\/pterodactyl\/core:source" |         "ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source" | ||||||
|     }, |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/srcds_run -game {{SRCDS_GAME}} -strictportbind -ip 0.0.0.0 -port {{SERVER_PORT}} +clientport {{SRCDS_CPORT}} +tv_port {{SRCDS_STV}} +map {{SRCDS_MAP}} +servercfgfile server.cfg -maxplayers {{MAX_PLAYERS}}", |     "startup": ".\/srcds_run -game {{SRCDS_GAME}} -strictportbind -ip 0.0.0.0 -port {{SERVER_PORT}} +clientport {{SRCDS_CPORT}} +tv_port {{SRCDS_STV}} +map {{SRCDS_MAP}} +servercfgfile server.cfg -maxplayers {{MAX_PLAYERS}}", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"gameserver Steam ID\"\r\n}", |         "startup": "{\r\n    \"done\": \"gameserver Steam ID\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": true,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{\r\n}", | ||||||
|         "stop": "quit" |         "stop": "quit" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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#\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\n\r\napt -y update\r\napt -y --no-install-recommends install 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} validate +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", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io\/parkervcp\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
| @ -35,7 +37,7 @@ | |||||||
|             "default_value": "346680", |             "default_value": "346680", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20", |             "rules": "required|string|in:346680", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
| @ -87,6 +89,16 @@ | |||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|integer|max:128", |             "rules": "required|integer|max:128", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,30 +1,30 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-11-26T14:44:12+01:00", |     "exported_at": "2024-04-02T11:29:33+02:00", | ||||||
|     "name": "Citadel: Forged with Fire", |     "name": "Citadel: Forged with Fire", | ||||||
|     "author": "eggs@goover.dev", |     "author": "eggs@goover.dev", | ||||||
|     "description": "Citadel: Forged With Fire is a massive online sandbox RPG set in the mystical world of Ignus. Featuring magic, spellcasting, building, exploring and crafting as you fight to make a name for yourself and achieve notoriety across the land.", |     "description": "Citadel: Forged With Fire is a massive online sandbox RPG set in the mystical world of Ignus. Featuring magic, spellcasting, building, exploring and crafting as you fight to make a name for yourself and achieve notoriety across the land.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "ghcr.io\/parkervcp\/games:source" |         "ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/CitadelServer.sh", |     "startup": ".\/CitadelServer.sh", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{\r\n    \"Config\/Game.ini\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"ConnectionPort=\": \"ConnectionPort={{server.build.default.port}}\",\r\n            \"QueryPort=\": \"QueryPort={{server.build.env.QPORT}}\",\r\n            \"Password\": \"Password={{server.build.env.ADMIN_PASSWD}}\"\r\n        }\r\n    }\r\n}", |         "files": "{\r\n    \"Config\/Game.ini\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"ConnectionPort=\": \"ConnectionPort={{server.build.default.port}}\",\r\n            \"QueryPort=\": \"QueryPort={{server.build.env.QPORT}}\",\r\n            \"Password\": \"Password={{server.build.env.ADMIN_PASSWD}}\"\r\n        }\r\n    }\r\n}", | ||||||
|         "startup": "{\r\n    \"done\": \"Steam Server initialized and registered with UWorks\",\r\n    \"userInteraction\": []\r\n}", |         "startup": "{\r\n    \"done\": \"Steam Server initialized and registered with UWorks\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": true,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{}", | ||||||
|         "stop": "^C" |         "stop": "^C" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc-s1 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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +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\n##Copy steamclient.so to correct Dir\r\nmkdir -p $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\r\nchmod -R a+w,a+x $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\r\nif [[ ! -f $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\/steamclient.so ]]; then \r\n\tln -s ..\/..\/..\/..\/..\/..\/linux64\/steamclient.so $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\/steamclient.so\r\n\r\nfi\r\n\r\n## Create Game.ini\r\nmkdir $HOME\/Config\r\n\r\nif [[ -d $HOME\/Citadel\/Saved\/Config\/LinuxServer ]]; then \r\n\trm -rf $HOME\/Citadel\/Saved\/Config\/LinuxServer\r\nfi\r\n\r\nif [[ -d $HOME\/Engine\/Saved\/Config\/LinuxServer ]]; then \r\n\trm -rf $HOME\/Engine\/Saved\/Config\/LinuxServer\r\nfi\r\n\r\nmkdir -p $HOME\/Citadel\/Saved\/Config\r\nmkdir -p $HOME\/Engine\/Saved\/Config\r\n\r\nln -s ..\/..\/..\/Config $HOME\/Citadel\/Saved\/Config\/LinuxServer\r\nln -s ..\/..\/..\/Config $HOME\/Engine\/Saved\/Config\/LinuxServer\r\n\r\n#rm -fR $HOME\/Citadel\/Saved\/Config\/LinuxServer\/Game.ini\r\ncat <<EOT > $HOME\/Config\/Game.ini\r\n[UWorks]\r\nConnectionPort=7777\r\nQueryPort=27015\r\n\r\n[\/Script\/Citadel.SocialManager]\r\nPassword=changeme\r\n\r\n[\/Script\/Citadel.CitadelGameInstance]\r\nWorldCreationSettings=(ServerName=\"CitadelServer\",Password=\"YourServerPassword\",ServerType=PVP,PlayerLimit=20,bPrivate=true,ExperienceMultiplier=1.000000,InventoryCapacityMultipler=1.000000,KnowledgePointEarnedMultiplier=1.000000,CharacterPointEarnedMultiplier=1.000000,bUnlimitedResources=false,PlayerDamageMultiplier=1.000000,ArmorMultiplier=1.000000,BaseManaRegen=1.000000,bInventoryWeightRestrictions=true,MagicFindMultiplier=1.000000,CraftingMagicFindChanceMultiplier=1.000000,FlyingCostMultiplier=1.000000,FlyingSpeedMultiplier=1.000000,ResourceCollectionMultiplier=1.000000,StructureDamageMultiplier=1.000000,bRespectNoBuildZones=true,MagicStructureManaRegenerationMultiplier=1.000000,MagicStructureManaConsumptionMultiplier=0.000000,bFreeBuildMode=false,TimeOfDayLock=Auto,NPCPopulationMultiplier=1.000000,StructureDecayMultiplier=2.000000,bThronesDecay=true)\r\nEOT\r\n\r\nchmod +x $HOME\/CitadelServer.sh", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +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\n##Copy steamclient.so to correct Dir\r\nmkdir -p $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\r\nchmod -R a+w,a+x $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\r\nif [[ ! -f $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\/steamclient.so ]]; then \r\n\tln -s ..\/..\/..\/..\/..\/..\/linux64\/steamclient.so $HOME\/Citadel\/Plugins\/UWorks\/Source\/ThirdParty\/Linux\/steamclient.so\r\n\r\nfi\r\n\r\n## Create Game.ini\r\nmkdir $HOME\/Config\r\n\r\nif [[ -d $HOME\/Citadel\/Saved\/Config\/LinuxServer ]]; then \r\n\trm -rf $HOME\/Citadel\/Saved\/Config\/LinuxServer\r\nfi\r\n\r\nif [[ -d $HOME\/Engine\/Saved\/Config\/LinuxServer ]]; then \r\n\trm -rf $HOME\/Engine\/Saved\/Config\/LinuxServer\r\nfi\r\n\r\nmkdir -p $HOME\/Citadel\/Saved\/Config\r\nmkdir -p $HOME\/Engine\/Saved\/Config\r\n\r\nln -s ..\/..\/..\/Config $HOME\/Citadel\/Saved\/Config\/LinuxServer\r\nln -s ..\/..\/..\/Config $HOME\/Engine\/Saved\/Config\/LinuxServer\r\n\r\n#rm -fR $HOME\/Citadel\/Saved\/Config\/LinuxServer\/Game.ini\r\ncat <<EOT > $HOME\/Config\/Game.ini\r\n[UWorks]\r\nConnectionPort=7777\r\nQueryPort=27015\r\n\r\n[\/Script\/Citadel.SocialManager]\r\nPassword=changeme\r\n\r\n[\/Script\/Citadel.CitadelGameInstance]\r\nWorldCreationSettings=(ServerName=\"CitadelServer\",Password=\"YourServerPassword\",ServerType=PVP,PlayerLimit=20,bPrivate=true,ExperienceMultiplier=1.000000,InventoryCapacityMultipler=1.000000,KnowledgePointEarnedMultiplier=1.000000,CharacterPointEarnedMultiplier=1.000000,bUnlimitedResources=false,PlayerDamageMultiplier=1.000000,ArmorMultiplier=1.000000,BaseManaRegen=1.000000,bInventoryWeightRestrictions=true,MagicFindMultiplier=1.000000,CraftingMagicFindChanceMultiplier=1.000000,FlyingCostMultiplier=1.000000,FlyingSpeedMultiplier=1.000000,ResourceCollectionMultiplier=1.000000,StructureDamageMultiplier=1.000000,bRespectNoBuildZones=true,MagicStructureManaRegenerationMultiplier=1.000000,MagicStructureManaConsumptionMultiplier=0.000000,bFreeBuildMode=false,TimeOfDayLock=Auto,NPCPopulationMultiplier=1.000000,StructureDecayMultiplier=2.000000,bThronesDecay=true)\r\nEOT\r\n\r\nchmod +x $HOME\/CitadelServer.sh\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io\/parkervcp\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "489650", |             "default_value": "489650", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric|digits_between:1,6" |             "rules": "required|numeric|in:489650", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Query Port", |             "name": "Query Port", | ||||||
| @ -45,17 +46,19 @@ | |||||||
|             "env_variable": "QPORT", |             "env_variable": "QPORT", | ||||||
|             "default_value": "27015", |             "default_value": "27015", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:100" |             "rules": "required|string|max:100", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Admin Password", |             "name": "Admin Password", | ||||||
|             "description": "", |             "description": "", | ||||||
|             "env_variable": "ADMIN_PASSWD", |             "env_variable": "ADMIN_PASSWD", | ||||||
|             "default_value": "changeme", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:100" |             "rules": "required|string|max:100", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Auto Update", |             "name": "Auto Update", | ||||||
| @ -64,7 +67,8 @@ | |||||||
|             "default_value": "1", |             "default_value": "1", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,19 +1,19 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-11-19T11:47:49+01:00", |     "exported_at": "2024-04-02T11:31:20+02:00", | ||||||
|     "name": "CryoFall", |     "name": "CryoFall", | ||||||
|     "author": "contact@zennodes.dk", |     "author": "contact@zennodes.dk", | ||||||
|     "description": "NOTE: For now you have to change SettingsServer.xml under CryoFall_Server_v(Version)_NetCore\/Data\/SettingsServer.xml\r\n\r\nCryoFall is a sci-fi multiplayer colony simulation survival game set on a forgotten planet in a distant future.\r\n\r\nJoin the vast world of CryoFall together with other survivors to rebuild your civilization from scratch. Start with primitive technology and simple tools and use them to progress towards modern industrial might and even beyond, eventually reaching space-age technology only seen in science fiction.\r\n\r\nCryoFall can be played either as a relaxed PvE experience with no competition or as a brutal and unforgiving PvP. Make your choice and join one of many available servers with different game modes or host your own and invite your friends to join you!\r\n\r\nBuild your house or a large base together with other players. Dig wells and create farms to sustain basic needs. Build vehicles to explore the world faster. Establish basics of science, all the way from medicine and chemistry to fuel creation and even lithium extraction to create electronic devices. Cook food or prepare drinks to sell them from vending machines in your store.\r\n\r\nBuild factories to produce on an industrial scale: Weapons and defense systems, bionic implants to augment yourself, even large war machines and artillery guns to use against the biggest of opponents", |     "description": "NOTE: For now you have to change SettingsServer.xml under CryoFall_Server_v(Version)_NetCore\/Data\/SettingsServer.xml\r\n\r\nCryoFall is a sci-fi multiplayer colony simulation survival game set on a forgotten planet in a distant future.\r\n\r\nJoin the vast world of CryoFall together with other survivors to rebuild your civilization from scratch. Start with primitive technology and simple tools and use them to progress towards modern industrial might and even beyond, eventually reaching space-age technology only seen in science fiction.\r\n\r\nCryoFall can be played either as a relaxed PvE experience with no competition or as a brutal and unforgiving PvP. Make your choice and join one of many available servers with different game modes or host your own and invite your friends to join you!\r\n\r\nBuild your house or a large base together with other players. Dig wells and create farms to sustain basic needs. Build vehicles to explore the world faster. Establish basics of science, all the way from medicine and chemistry to fuel creation and even lithium extraction to create electronic devices. Cook food or prepare drinks to sell them from vending machines in your store.\r\n\r\nBuild factories to produce on an industrial scale: Weapons and defense systems, bionic implants to augment yourself, even large war machines and artillery guns to use against the biggest of opponents", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "ghcr.io\/parkervcp\/yolks:dotnet_6" |         "ghcr.io\/parkervcp\/yolks:dotnet_6": "ghcr.io\/parkervcp\/yolks:dotnet_6" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": "dotnet Binaries\/Server\/CryoFall_Server.dll loadOrNew", |     "startup": "dotnet Binaries\/Server\/CryoFall_Server.dll loadOrNew", | ||||||
|     "config": { |     "config": { | ||||||
| @ -24,7 +24,7 @@ | |||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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#\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# INSTALL_FLAGS - when a server has extra glas for things like beta installs or updates.\r\n#\r\n##\r\n\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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} ${INSTALL_FLAGS} validate +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", |             "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#\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# INSTALL_FLAGS - when a server has extra glas for things like beta installs or updates.\r\n#\r\n##\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io\/parkervcp\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
| @ -37,7 +37,18 @@ | |||||||
|             "default_value": "1061710", |             "default_value": "1061710", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|in:1061710", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -25,7 +25,7 @@ | |||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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\napt -y update\r\napt -y --no-install-recommends install 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} +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +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\n## DST specific\r\n## cluster token file\r\necho -e \"getting cluster configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster_token.txt ]; then\r\n    echo \"${SERVER_TOKEN}\" >> \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster_token.txt\r\nfi\r\n\r\n## cluster configs \r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster.ini ]; then\r\n    curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.cluster.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster.ini\r\nfi\r\n\r\n## master configs\r\necho -e \"getting master configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/\r\n## master ini\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/server.ini ]; then\r\n    curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.master.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/server.ini\r\nfi\r\n\r\n## master worldgen override\r\nif [ ! -z ${MASTER_WORLDGEN}  ] && [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/worldgenoverride.lua ]; then\r\n    curl -sSL ${MASTER_WORLDGEN} -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/worldgenoverride.lua\r\nfi\r\n\r\n## caves configs\r\necho -e \"getting cave configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/\r\n## caves ini\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/server.ini ]; then\r\n    curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.caves.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/server.ini\r\nfi\r\n\r\n## caves worldgen override\r\nif [ ! -z ${CAVES_WORLDGEN} ] && [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/worldgenoverride.lua ]; then\r\n    curl -sSL ${CAVES_WORLDGEN} -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/worldgenoverride.lua\r\nfi\r\n\r\necho -e \"install complete\"", |             "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\napt -y update\r\napt -y --no-install-recommends install 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} +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +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\n## DST specific\r\n## cluster token file\r\necho -e \"getting cluster configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster_token.txt ]; then\r\n    echo \"${SERVER_TOKEN}\" >> \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster_token.txt\r\nfi\r\n\r\n## cluster configs \r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster.ini ]; then\r\n    curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.cluster.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster.ini\r\nfi\r\n\r\n## master configs\r\necho -e \"getting master configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/\r\n## master ini\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/server.ini ]; then\r\n    curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.master.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/server.ini\r\nfi\r\n\r\n## master worldgen override\r\nif [ ! -z ${MASTER_WORLDGEN}  ] && [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/worldgenoverride.lua ]; then\r\n    curl -sSL ${MASTER_WORLDGEN} -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/worldgenoverride.lua\r\nfi\r\n\r\n## caves configs\r\necho -e \"getting cave configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/\r\n## caves ini\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/server.ini ]; then\r\n    curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.caves.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/server.ini\r\nfi\r\n\r\n## caves worldgen override\r\nif [ ! -z ${CAVES_WORLDGEN} ] && [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/worldgenoverride.lua ]; then\r\n    curl -sSL ${CAVES_WORLDGEN} -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/worldgenoverride.lua\r\nfi\r\n\r\necho -e \"install complete\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
|  | |||||||
| @ -1,31 +1,31 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-04-15T17:23:35+02:00", |     "exported_at": "2024-04-01T12:23:21+02:00", | ||||||
|     "name": "Fof", |     "name": "Fof", | ||||||
|     "author": "avalongamecs@gmail.com", |     "author": "avalongamecs@gmail.com", | ||||||
|     "description": "Fistful of Frags", |     "description": "Fistful of Frags", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/pterodactyl\/core:source" |         "ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/srcds_run -game {{SRCDS_GAME}} -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", |     "startup": ".\/srcds_run -game {{SRCDS_GAME}} -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"gameserver Steam ID\",\r\n    \"userInteraction\": []\r\n}", |         "startup": "{\r\n    \"done\": \"gameserver Steam ID\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": true,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{\r\n}", | ||||||
|         "stop": "quit" |         "stop": "quit" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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#\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\n\r\napt -y update\r\napt -y --no-install-recommends install 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} validate +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", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "295230", |             "default_value": "295230", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|regex:\/^(295230)$\/" |             "rules": "required|string|in:295230", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Game Name", |             "name": "Game Name", | ||||||
| @ -46,7 +47,8 @@ | |||||||
|             "default_value": "fof", |             "default_value": "fof", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|regex:\/^(fof)$\/" |             "rules": "required|regex:\/^(fof)$\/", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Default Map", |             "name": "Default Map", | ||||||
| @ -55,7 +57,18 @@ | |||||||
|             "default_value": "fof_revenge", |             "default_value": "fof_revenge", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|regex:\/^(\\w{1,20})$\/" |             "rules": "required|regex:\/^(\\w{1,20})$\/", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -24,7 +24,7 @@ | |||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n\r\n## File: Pterodactyl Ground Branch Egg - egg-ground-branch.json\r\n## Authors: David Wolfe (Red-Thirten)\r\n## Date: 2023\/08\/01\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/pterodactyl\/installers:debian'\r\n\r\n# Download and install SteamCMD\r\nexport HOME=\/mnt\/server\r\ncd \/tmp\r\nmkdir -p $HOME\/steamcmd $HOME\/steamapps\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 $HOME\/steamcmd\r\ncd $HOME\/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\n\r\n# Install game server using SteamCMD\r\n.\/steamcmd.sh +force_install_dir $HOME +login anonymous $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) validate +quit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p $HOME\/.steam\/sdk{32,64}\r\ncp -v linux32\/steamclient.so $HOME\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so $HOME\/.steam\/sdk64\/steamclient.so\r\n\r\n## Ground Branch setup\r\n# Make ServerConfig directory and default Server.ini file (since they are not initially present before first server start)\r\nmkdir -p $HOME\/GroundBranch\/ServerConfig\/ && cd \"$_\"\r\n\r\nif [[ ! -f Server.ini ]]; then\r\n    echo -e '\\nCreating default \"Server.ini\" configuration file...'\r\n    cat > Server.ini << EOF\r\n[\/Script\/RBZooKeeper.ZKServer]\r\n; Name of the server 64 characters max)\r\nServerName=Unnamed Ground Branch Server\r\n\r\n; The message of the day (512 characters max)\r\n; e.g. ServerMOTD=This text here is displayed<br>with the 'admin motd' command.\r\nServerMOTD=\"Welcome!\"\r\n\r\n; Set to a jpg image to act as a server banner in-game where possible.\r\n; (recommended resolution: 788 x 386)\r\nServerWebBanner=\"\"\r\n; e.g. ServerWebPage=www.images.com\/myimage.jpeg\r\n\r\n; Password required to join the server.\r\n;ServerPassword=\r\n\r\n; Password required to join the server as a permanent spectator.\r\n;SpectatorOnlyPassword=\r\n\r\n; Maximum number of players allowed on this server.\r\nMaxPlayers=16\r\nMaxSpectators=0\r\n\r\n; Set default match types for game modes and round limits:\r\n; Match types: Continuous, BestOf, FirstTo, Play, PlayUntilWin, TimeLimit.\r\n; Round limits = number of rounds, except Time Limit match type (minutes).\r\n; PVE \/ Co-op:\r\nPVEMatchType=Continuous\r\nPVERoundLimit=2\r\n; PVP:\r\nPVPMatchType=Continuous\r\nPVPRoundLimit=3\r\n; PVP FFA (Free-for-all):\r\nPVPFFAMatchType=Continuous\r\nPVPFFARoundLimit=1\r\nGameRules=((\"AllowCheats\", False),(\"AllowDeadChat\", True),(\"AllowUnrestrictedRadio\", False),(\"AllowUnrestrictedVoice\", False),(\"SpectateEnemies\", True),(\"SpectateForceFirstPerson\", False),(\"SpectateFreeCam\", True),(\"UseTeamRestrictions\", False))\r\nEOF\r\nfi\r\n\r\necho -e \"\\nGround Branch Dedicated Server successfully installed!\\n\"", |             "script": "#!\/bin\/bash\r\n\r\n## File: Pterodactyl Ground Branch Egg - egg-ground-branch.json\r\n## Authors: David Wolfe (Red-Thirten)\r\n## Date: 2023\/08\/01\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/pterodactyl\/installers:debian'\r\n\r\n# Download and install SteamCMD\r\nexport HOME=\/mnt\/server\r\ncd \/tmp\r\nmkdir -p $HOME\/steamcmd $HOME\/steamapps\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 $HOME\/steamcmd\r\ncd $HOME\/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\n\r\n# Install game server using SteamCMD\r\n.\/steamcmd.sh +force_install_dir $HOME +login anonymous $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) validate +quit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p $HOME\/.steam\/sdk{32,64}\r\ncp -v linux32\/steamclient.so $HOME\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so $HOME\/.steam\/sdk64\/steamclient.so\r\n\r\n## Ground Branch setup\r\n# Make ServerConfig directory and default Server.ini file (since they are not initially present before first server start)\r\nmkdir -p $HOME\/GroundBranch\/ServerConfig\/ && cd \"$_\"\r\n\r\nif [[ ! -f Server.ini ]]; then\r\n    echo -e '\\nCreating default \"Server.ini\" configuration file...'\r\n    cat > Server.ini << EOF\r\n[\/Script\/RBZooKeeper.ZKServer]\r\n; Name of the server 64 characters max)\r\nServerName=Unnamed Ground Branch Server\r\n\r\n; The message of the day (512 characters max)\r\n; e.g. ServerMOTD=This text here is displayed<br>with the 'admin motd' command.\r\nServerMOTD=\"Welcome!\"\r\n\r\n; Set to a jpg image to act as a server banner in-game where possible.\r\n; (recommended resolution: 788 x 386)\r\nServerWebBanner=\"\"\r\n; e.g. ServerWebPage=www.images.com\/myimage.jpeg\r\n\r\n; Password required to join the server.\r\n;ServerPassword=\r\n\r\n; Password required to join the server as a permanent spectator.\r\n;SpectatorOnlyPassword=\r\n\r\n; Maximum number of players allowed on this server.\r\nMaxPlayers=16\r\nMaxSpectators=0\r\n\r\n; Set default match types for game modes and round limits:\r\n; Match types: Continuous, BestOf, FirstTo, Play, PlayUntilWin, TimeLimit.\r\n; Round limits = number of rounds, except Time Limit match type (minutes).\r\n; PVE \/ Co-op:\r\nPVEMatchType=Continuous\r\nPVERoundLimit=2\r\n; PVP:\r\nPVPMatchType=Continuous\r\nPVPRoundLimit=3\r\n; PVP FFA (Free-for-all):\r\nPVPFFAMatchType=Continuous\r\nPVPFFARoundLimit=1\r\nGameRules=((\"AllowCheats\", False),(\"AllowDeadChat\", True),(\"AllowUnrestrictedRadio\", False),(\"AllowUnrestrictedVoice\", False),(\"SpectateEnemies\", True),(\"SpectateForceFirstPerson\", False),(\"SpectateFreeCam\", True),(\"UseTeamRestrictions\", False))\r\nEOF\r\nfi\r\n\r\necho -e \"\\nGround Branch Dedicated Server successfully installed!\\n\"", | ||||||
|             "container": "ghcr.io\/pterodactyl\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "\/bin\/bash" |             "entrypoint": "\/bin\/bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
|  | |||||||
| @ -1,19 +1,19 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2022-01-20T12:53:50-05:00", |     "exported_at": "2024-04-02T11:36:37+02:00", | ||||||
|     "name": "Holdfast NaW", |     "name": "Holdfast NaW", | ||||||
|     "author": "ankit@bmghosting.com", |     "author": "ankit@bmghosting.com", | ||||||
|     "description": "Holdfast: Nations at War", |     "description": "Holdfast: Nations at War", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "bmghosting\/pterodactyl-holdfast" |         "bmghosting\/pterodactyl-holdfast": "bmghosting\/pterodactyl-holdfast" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": "\".\/holdfastnaw-dedicated\/Holdfast NaW\" -startserver -batchmode -nographics -screen-width 320 -screen-height 240 -screen-quality Fastest -framerate {{FPSMAX}} --serverheadless -serverConfigFilePath holdfastnaw-dedicated\/configs\/{{SERVER_CONFIG_PATH}} -logFile holdfastnaw-dedicated\/logs_output\/output_{{SERVER_CONFIG_PATH}} -logArchivesDirectory holdfastnaw-dedicated\/{{SERVER_LOG_ARCHIVE_PATH}}\/ -adminCommandsLogFilePath holdfastnaw-dedicated\/logs_adminactions\/admin_{{SERVER_CONFIG_PATH}} -playersLogFilePath holdfastnaw-dedicated\/logs_playerlogin\/players_{{SERVER_CONFIG_PATH}} -scoreboardLogFilePath holdfastnaw-dedicated\/logs_score\/scorelog_{{SERVER_CONFIG_PATH}} -chatLogFilePath holdfastnaw-dedicated\/logs_chat\/chatlog_{{SERVER_CONFIG_PATH}} -workshopDataPath holdfastnaw-dedicated\/workshop -micSpammersPlayersFilePath holdfastnaw-dedicated\/micspammers.txt -mutedVoipPlayersFilePath holdfastnaw-dedicated\/mutedplayersvoip.txt -mutedChatPlayersFilePath holdfastnaw-dedicated\/mutedplayerschat.txt -bannedPlayersFilePath holdfastnaw-dedicated\/bannedplayers.txt -p {{SERVER_PORT}} -l \"94.130.66.231\" -o 7101", |     "startup": "\".\/holdfastnaw-dedicated\/Holdfast NaW\" -startserver -batchmode -nographics -screen-width 320 -screen-height 240 -screen-quality Fastest -framerate {{FPSMAX}} --serverheadless -serverConfigFilePath holdfastnaw-dedicated\/configs\/{{SERVER_CONFIG_PATH}} -logFile holdfastnaw-dedicated\/logs_output\/output_{{SERVER_CONFIG_PATH}} -logArchivesDirectory holdfastnaw-dedicated\/{{SERVER_LOG_ARCHIVE_PATH}}\/ -adminCommandsLogFilePath holdfastnaw-dedicated\/logs_adminactions\/admin_{{SERVER_CONFIG_PATH}} -playersLogFilePath holdfastnaw-dedicated\/logs_playerlogin\/players_{{SERVER_CONFIG_PATH}} -scoreboardLogFilePath holdfastnaw-dedicated\/logs_score\/scorelog_{{SERVER_CONFIG_PATH}} -chatLogFilePath holdfastnaw-dedicated\/logs_chat\/chatlog_{{SERVER_CONFIG_PATH}} -workshopDataPath holdfastnaw-dedicated\/workshop -micSpammersPlayersFilePath holdfastnaw-dedicated\/micspammers.txt -mutedVoipPlayersFilePath holdfastnaw-dedicated\/mutedplayersvoip.txt -mutedChatPlayersFilePath holdfastnaw-dedicated\/mutedplayerschat.txt -bannedPlayersFilePath holdfastnaw-dedicated\/bannedplayers.txt -p {{SERVER_PORT}} -l \"94.130.66.231\" -o 7101", | ||||||
|     "config": { |     "config": { | ||||||
| @ -24,8 +24,8 @@ | |||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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#\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\n\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates git\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\/holdfastnaw-dedicated +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +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## copy config to the configs folder - avoid rewrite from steamCMD update\r\ncd \/mnt\/server\/holdfastnaw-dedicated\r\nmkdir -p configs \r\ngit clone https:\/\/github.com\/ankit2951\/holdfast-config.git configs\r\ncp serverconfig_default.txt configs\/serverconfig_default.txt\r\n \r\n## Read\/Write access\r\nchmod -R 777 \/mnt\/server\/*", |             "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#\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\n\r\n\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\/holdfastnaw-dedicated +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +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## copy config to the configs folder - avoid rewrite from steamCMD update\r\ncd \/mnt\/server\/holdfastnaw-dedicated\r\nmkdir -p configs \r\ngit clone https:\/\/github.com\/ankit2951\/holdfast-config.git configs\r\ncp serverconfig_default.txt configs\/serverconfig_default.txt\r\n \r\n## Read\/Write access\r\nchmod -R 777 \/mnt\/server\/*\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ubuntu:18.04", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "serverconfig_default.txt", |             "default_value": "serverconfig_default.txt", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:200" |             "rules": "required|string|max:200", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Name", |             "name": "Server Name", | ||||||
| @ -46,7 +47,8 @@ | |||||||
|             "default_value": "Server Hosted by BMGHosting.com", |             "default_value": "Server Hosted by BMGHosting.com", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:200" |             "rules": "required|string|max:200", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Welcome Message", |             "name": "Welcome Message", | ||||||
| @ -55,7 +57,8 @@ | |||||||
|             "default_value": "Welcome!", |             "default_value": "Welcome!", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:500" |             "rules": "required|string|max:500", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Region", |             "name": "Server Region", | ||||||
| @ -64,16 +67,18 @@ | |||||||
|             "default_value": "europe", |             "default_value": "europe", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:50" |             "rules": "required|string|max:50", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Admin Password", |             "name": "Admin Password", | ||||||
|             "description": "Password for Admin Login (F1).", |             "description": "Password for Admin Login (F1).", | ||||||
|             "env_variable": "ADMIN_PASS", |             "env_variable": "ADMIN_PASS", | ||||||
|             "default_value": "ChangeMe123", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:50" |             "rules": "required|string|max:50", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Password", |             "name": "Server Password", | ||||||
| @ -82,7 +87,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string|max:50" |             "rules": "nullable|string|max:50", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Max Players", |             "name": "Max Players", | ||||||
| @ -91,7 +97,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Comm Port", |             "name": "Server Comm Port", | ||||||
| @ -100,7 +107,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Query Port", |             "name": "Server Query Port", | ||||||
| @ -109,7 +117,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server FPS", |             "name": "Server FPS", | ||||||
| @ -118,7 +127,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Log Archive", |             "name": "Server Log Archive", | ||||||
| @ -127,7 +137,8 @@ | |||||||
|             "default_value": "logs_archive", |             "default_value": "logs_archive", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:200" |             "rules": "required|string|max:200", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Steam App ID", |             "name": "Steam App ID", | ||||||
| @ -136,7 +147,8 @@ | |||||||
|             "default_value": "1424230", |             "default_value": "1424230", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric|in:1424230", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Holdfast Build", |             "name": "Holdfast Build", | ||||||
| @ -145,7 +157,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string|max:100" |             "rules": "nullable|string|max:100", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -25,7 +25,7 @@ | |||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} validate +quit\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\nFILE=\/mnt\/server\/Icarus\/Saved\/Config\/ServerSettings.ini\r\nif [ -f \"$FILE\" ]; then\r\n    echo \"Config already exist skipping\"\r\nelse \r\n    echo \"Config does not yet exist, making one\"\r\n    mkdir -p \/mnt\/server\/Icarus\/Saved\/Config\/\r\n    cd \/mnt\/server\/Icarus\/Saved\/Config\/\r\n    curl -sSL -o ServerSettings.ini https:\/\/raw.githubusercontent.com\/RocketWerkz\/IcarusDedicatedServer\/main\/ServerSettings.ini\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", |             "script": "#!\/bin\/bash\r\n\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} validate +quit\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\nFILE=\/mnt\/server\/Icarus\/Saved\/Config\/ServerSettings.ini\r\nif [ -f \"$FILE\" ]; then\r\n    echo \"Config already exist skipping\"\r\nelse \r\n    echo \"Config does not yet exist, making one\"\r\n    mkdir -p \/mnt\/server\/Icarus\/Saved\/Config\/\r\n    cd \/mnt\/server\/Icarus\/Saved\/Config\/\r\n    curl -sSL -o ServerSettings.ini https:\/\/raw.githubusercontent.com\/RocketWerkz\/IcarusDedicatedServer\/main\/ServerSettings.ini\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io\/pterodactyl\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "\/bin\/bash" |             "entrypoint": "\/bin\/bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
|  | |||||||
| @ -1,19 +1,19 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-04-24T04:44:26+03:00", |     "exported_at": "2024-04-01T12:20:07+02:00", | ||||||
|     "name": "Killing Floor 2", |     "name": "Killing Floor 2", | ||||||
|     "author": "parker@parkervcp.com", |     "author": "parker@parkervcp.com", | ||||||
|     "description": "In KILLING FLOOR 2, players descend into continental Europe after it has been overrun by horrific, murderous clones called Zeds that were created by the corporation Horzine. The Zed outbreak caused by Horzine Biotech\u2019s failed experiments has quickly spread with unstoppable momentum, paralyzing the European Union. Only a month ago, the first Zed outbreak from the original KILLING FLOOR ripped through London; now the specimen clones are everywhere.", |     "description": "In KILLING FLOOR 2, players descend into continental Europe after it has been overrun by horrific, murderous clones called Zeds that were created by the corporation Horzine. The Zed outbreak caused by Horzine Biotech\u2019s failed experiments has quickly spread with unstoppable momentum, paralyzing the European Union. Only a month ago, the first Zed outbreak from the original KILLING FLOOR ripped through London; now the specimen clones are everywhere.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/parkervcp\/pterodactyl-images:debian_source" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": "\/home\/container\/Binaries\/Win64\/KFGameSteamServer.bin.x86_64 {{MAP_NAME}}?Port={{SERVER_PORT}}?QueryPort={{QUERY_PORT}}?AdminPassword={{ADMIN_PASS}}?Difficulty={{DIFFICULTY}}$( [ \"$WEB_ADMIN\" == \"true\" ] || printf %s '??WebAdminPort={{WEB_ADMIN_PORT}}' )", |     "startup": "\/home\/container\/Binaries\/Win64\/KFGameSteamServer.bin.x86_64 {{MAP_NAME}}?Port={{SERVER_PORT}}?QueryPort={{QUERY_PORT}}?AdminPassword={{ADMIN_PASS}}?Difficulty={{DIFFICULTY}}$( [ \"$WEB_ADMIN\" == \"true\" ] || printf %s '??WebAdminPort={{WEB_ADMIN_PORT}}' )", | ||||||
|     "config": { |     "config": { | ||||||
| @ -24,8 +24,8 @@ | |||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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#\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\n\r\napt -y update\r\napt -y --no-install-recommends install 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", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "nullable|string" |             "rules": "nullable|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Steam Password", |             "name": "Steam Password", | ||||||
| @ -46,7 +47,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "nullable|string" |             "rules": "nullable|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Steam Auth", |             "name": "Steam Auth", | ||||||
| @ -55,7 +57,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "nullable|string|max:6" |             "rules": "nullable|string|max:6", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Steam Server App ID", |             "name": "Steam Server App ID", | ||||||
| @ -64,7 +67,8 @@ | |||||||
|             "default_value": "232130", |             "default_value": "232130", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string" |             "rules": "required|string|in:232130", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Extra Flags", |             "name": "Extra Flags", | ||||||
| @ -73,7 +77,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "nullable|string" |             "rules": "nullable|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Map Name", |             "name": "Map Name", | ||||||
| @ -82,7 +87,8 @@ | |||||||
|             "default_value": "kf-bioticslab", |             "default_value": "kf-bioticslab", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string" |             "rules": "required|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Query Port", |             "name": "Query Port", | ||||||
| @ -91,7 +97,8 @@ | |||||||
|             "default_value": "27015", |             "default_value": "27015", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric|max:65535" |             "rules": "required|numeric|max:65535", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Enable WebAdmin (beta)", |             "name": "Enable WebAdmin (beta)", | ||||||
| @ -100,16 +107,18 @@ | |||||||
|             "default_value": "false", |             "default_value": "false", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|in:true,false" |             "rules": "required|string|in:true,false", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Admin Password", |             "name": "Admin Password", | ||||||
|             "description": "An admin password for the server.", |             "description": "An admin password for the server.", | ||||||
|             "env_variable": "ADMIN_PASS", |             "env_variable": "ADMIN_PASS", | ||||||
|             "default_value": "PleaseChangeMe", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string" |             "rules": "required|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Name", |             "name": "Server Name", | ||||||
| @ -118,7 +127,8 @@ | |||||||
|             "default_value": "A Pterodactyl Hosted Server", |             "default_value": "A Pterodactyl Hosted Server", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string" |             "rules": "required|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Difficulty", |             "name": "Server Difficulty", | ||||||
| @ -127,7 +137,8 @@ | |||||||
|             "default_value": "0", |             "default_value": "0", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|numeric|max:3" |             "rules": "required|numeric|in:0,1,2,3", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Web Admin Port", |             "name": "Web Admin Port", | ||||||
| @ -136,7 +147,18 @@ | |||||||
|             "default_value": "8089", |             "default_value": "8089", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,30 +1,30 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-10-13T19:07:48+02:00", |     "exported_at": "2024-04-02T11:38:04+02:00", | ||||||
|     "name": "Left 4 Dead", |     "name": "Left 4 Dead", | ||||||
|     "author": "pterodactyl@mazoyer.eu", |     "author": "pterodactyl@mazoyer.eu", | ||||||
|     "description": "An outbreak of a highly contagious pathogen nicknamed the \"Green Flu\" begins in Pennsylvania. Two weeks after the first infection, four immune survivors, Bill, Zoey, Louis, and Francis make their way out of the city of Fairfield, only to discover that the infection is creating dangerous mutations in some of its hosts.", |     "description": "An outbreak of a highly contagious pathogen nicknamed the \"Green Flu\" begins in Pennsylvania. Two weeks after the first infection, four immune survivors, Bill, Zoey, Louis, and Francis make their way out of the city of Fairfield, only to discover that the infection is creating dangerous mutations in some of its hosts.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "ghcr.io\/parkervcp\/games:source" |         "ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/srcds_run -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", |     "startup": ".\/srcds_run -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"Connection to Steam servers successful.\",\r\n    \"userInteraction\": []\r\n}", |         "startup": "{\r\n    \"done\": \"Connection to Steam servers successful.\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": true,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{}", | ||||||
|         "stop": "quit" |         "stop": "quit" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n# SRCDS Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\r\n\r\nmkdir -p \/mnt\/server\/steamcmd\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\n\r\nexport HOME=\/mnt\/server\r\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} +quit\r\n\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io\/parkervcp\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "222840", |             "default_value": "222840", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|regex:\/^(222840)$\/" |             "rules": "required|in:222840", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Default Map", |             "name": "Default Map", | ||||||
| @ -46,7 +47,18 @@ | |||||||
|             "default_value": "l4d_hospital01_apartment", |             "default_value": "l4d_hospital01_apartment", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:40" |             "rules": "required|string|max:40", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,30 +1,30 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-10-13T23:28:59+02:00", |     "exported_at": "2024-04-02T11:39:38+02:00", | ||||||
|     "name": "Left 4 Dead 2", |     "name": "Left 4 Dead 2", | ||||||
|     "author": "pterodactyl@mazoyer.eu", |     "author": "pterodactyl@mazoyer.eu", | ||||||
|     "description": "Left 4 Dead 2 is set in the aftermath of a worldwide pandemic of a disease nicknamed the \"Green Flu\", which rapidly transforms humans into zombie-like creatures and mutated forms that demonstrate extreme aggression towards non-infected beings. A few humans are immune to the disease, while some of those who are infected have no symptoms. The Civil Emergency and Defense Agency (CEDA) and the U.S. military create safe zones to attempt to evacuate as many survivors as possible.", |     "description": "Left 4 Dead 2 is set in the aftermath of a worldwide pandemic of a disease nicknamed the \"Green Flu\", which rapidly transforms humans into zombie-like creatures and mutated forms that demonstrate extreme aggression towards non-infected beings. A few humans are immune to the disease, while some of those who are infected have no symptoms. The Civil Emergency and Defense Agency (CEDA) and the U.S. military create safe zones to attempt to evacuate as many survivors as possible.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "ghcr.io\/parkervcp\/games:source" |         "ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/srcds_run -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", |     "startup": ".\/srcds_run -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"Connection to Steam servers successful.\",\r\n    \"userInteraction\": []\r\n}", |         "startup": "{\r\n    \"done\": \"Connection to Steam servers successful.\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": true,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{}", | ||||||
|         "stop": "quit" |         "stop": "quit" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n# SRCDS Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\r\n\r\nmkdir -p \/mnt\/server\/steamcmd\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\n\r\nexport HOME=\/mnt\/server\r\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} +quit\r\n\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io\/parkervcp\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "222860", |             "default_value": "222860", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|regex:\/^(222860)$\/" |             "rules": "required|in:222860", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Default Map", |             "name": "Default Map", | ||||||
| @ -46,7 +47,18 @@ | |||||||
|             "default_value": "c1m1_hotel", |             "default_value": "c1m1_hotel", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:40" |             "rules": "required|string|max:40", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,30 +1,31 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-03-02T23:42:26+02:00", |     "exported_at": "2024-04-01T12:17:05+02:00", | ||||||
|     "name": "Modiverse", |     "name": "Modiverse", | ||||||
|     "author": "admin@softwarenoob.com", |     "author": "admin@softwarenoob.com", | ||||||
|     "description": "Modiverse provides a sandbox environment with the ability to create and play mods such as TTT, Deathrun, FortWars, RP, and more! Use the many sandbox tools to build complex worlds with props, lights, thrusters, wheels, and much much more!", |     "description": "Modiverse provides a sandbox environment with the ability to create and play mods such as TTT, Deathrun, FortWars, RP, and more! Use the many sandbox tools to build complex worlds with props, lights, thrusters, wheels, and much much more!", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/parkervcp\/pterodactyl-images:ubuntu_source" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     ], |     }, | ||||||
|  |     "file_denylist": [], | ||||||
|     "startup": ".\/KJMod\/Binaries\/Linux\/KJModServer -port={{SERVER_PORT}} -queryport={{QUERY_PORT}} -SteamServerName=\\\"{{HOSTNAME}}\\\" -KJModBaseUGCFolder=ServerData -DoNotRestartOnEmpty -InitUGCs -maxplayers={{MAX_PLAYERS}}", |     "startup": ".\/KJMod\/Binaries\/Linux\/KJModServer -port={{SERVER_PORT}} -queryport={{QUERY_PORT}} -SteamServerName=\\\"{{HOSTNAME}}\\\" -KJModBaseUGCFolder=ServerData -DoNotRestartOnEmpty -InitUGCs -maxplayers={{MAX_PLAYERS}}", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"listening on port\"\r\n}", |         "startup": "{\r\n    \"done\": \"listening on port\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": true,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{\r\n\r\n}", | ||||||
|         "stop": "^C" |         "stop": "^C" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n# Modiverse install\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\nAPP_ID=1549820\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n    STEAM_USER=anonymous\r\n    STEAM_PASS=\"\"\r\n    STEAM_AUTH=\"\"\r\nelse\r\n    echo -e \"Downloading the game as Steam user ${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} +force_install_dir \/mnt\/server +app_update ${APP_ID} ${EXTRA_FLAGS} +quit\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\n# Server Configuration \r\nif [ -f \/mnt\/server\/KJModServer.sh ]; then\r\n    rm \/mnt\/server\/KJModServer.sh\r\n    echo \"Removing default script\"\r\nfi\r\nif [ ! -d \"\/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData\" ]; then\r\n        echo \"ServerData folder missing....Creating ServerData Folder\"\r\n        mkdir -p \/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData\r\n    fi\r\n    if [ -f \/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData\/ServerConfiguration.json ]; then\r\n            echo \"Config file exists already, skipping config file download\"\r\n    else\r\n        echo \"Config file missing...Downloading default ServerConfiguration file\"\r\n        cd \/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData || exit\r\n        curl -sS -o ServerConfiguration.json https:\/\/github.com\/\/parkervcp\/eggs\/raw\/master\/steamcmd_servers\/modiverse\/ServerConfiguration.json\r\nfi\r\nchmod +x \/mnt\/server\/KJMod\/Binaries\/Linux\/KJModServer\r\necho \"\"\r\necho \"Installation completed, have fun!\"", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n\r\n\r\n# Server Configuration \r\nif [ -f \/mnt\/server\/KJModServer.sh ]; then\r\n    rm \/mnt\/server\/KJModServer.sh\r\n    echo \"Removing default script\"\r\nfi\r\nif [ ! -d \"\/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData\" ]; then\r\n        echo \"ServerData folder missing....Creating ServerData Folder\"\r\n        mkdir -p \/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData\r\n    fi\r\n    if [ -f \/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData\/ServerConfiguration.json ]; then\r\n            echo \"Config file exists already, skipping config file download\"\r\n    else\r\n        echo \"Config file missing...Downloading default ServerConfiguration file\"\r\n        cd \/mnt\/server\/KJMod\/Binaries\/Linux\/ServerData || exit\r\n        curl -sS -o ServerConfiguration.json https:\/\/github.com\/\/parkervcp\/eggs\/raw\/master\/steamcmd_servers\/modiverse\/ServerConfiguration.json\r\nfi\r\nchmod +x \/mnt\/server\/KJMod\/Binaries\/Linux\/KJModServer\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -36,7 +37,8 @@ | |||||||
|             "default_value": "Pterodactyl Server", |             "default_value": "Pterodactyl Server", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:32" |             "rules": "required|string|max:32", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Query Port", |             "name": "Query Port", | ||||||
| @ -45,7 +47,8 @@ | |||||||
|             "default_value": "27015", |             "default_value": "27015", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Max Players", |             "name": "Max Players", | ||||||
| @ -54,7 +57,8 @@ | |||||||
|             "default_value": "128", |             "default_value": "128", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|integer|between:2,128" |             "rules": "required|integer|between:2,128", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Auto Update", |             "name": "Auto Update", | ||||||
| @ -63,7 +67,18 @@ | |||||||
|             "default_value": "1", |             "default_value": "1", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|boolean" |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "App ID", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SRCDS_APPID", | ||||||
|  |             "default_value": "1549820", | ||||||
|  |             "user_viewable": false, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|string|in:1549820", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,31 +1,31 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-08-28T18:01:27+00:00", |     "exported_at": "2024-04-01T12:12:35+02:00", | ||||||
|     "name": "Mordhau Wine", |     "name": "Mordhau Wine", | ||||||
|     "author": "parker@parkervcp.com", |     "author": "parker@parkervcp.com", | ||||||
|     "description": "Mordhau is a multiplayer medieval hack 'n slash video game, developed by Slovenian independent studio Triternion, with a prominent aspect of skill-based competitive play and customization.", |     "description": "Mordhau is a multiplayer medieval hack 'n slash video game, developed by Slovenian independent studio Triternion, with a prominent aspect of skill-based competitive play and customization.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/parkervcp\/pterodactyl-images:debian_wine" |         "ghcr.io\/parkervcp\/yolks:wine_latest": "ghcr.io\/parkervcp\/yolks:wine_latest" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": "xvfb-run --auto-servernum wine MordhauServer.exe {{DEFAULT_MAP}} -log MaxSlots={{MAX_PLAYERS}} -USEALLAVAILABLECORES -Port={{SERVER_PORT}} -QueryPort={{QUERY_PORT}} -Beaconport={{BEACON_PORT}}", |     "startup": "xvfb-run --auto-servernum wine MordhauServer.exe {{DEFAULT_MAP}} -log MaxSlots={{MAX_PLAYERS}} -USEALLAVAILABLECORES -Port={{SERVER_PORT}} -QueryPort={{QUERY_PORT}} -Beaconport={{BEACON_PORT}}", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{\r\n    \"Mordhau\/Saved\/Config\/WindowsServer\/Game.ini\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"AdminPassword\": \"AdminPassword={{server.build.env.ADMIN_PASSWORD}}\",\r\n            \"ServerName\": \"ServerName={{server.build.env.SERVER_NAME}}\",\r\n            \"ServerPassword\": \"ServerPassword={{server.build.env.GAME_PASSWORD}}\"\r\n        }\r\n    }\r\n}", |         "files": "{\r\n    \"Mordhau\/Saved\/Config\/WindowsServer\/Game.ini\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"AdminPassword\": \"AdminPassword={{server.build.env.ADMIN_PASSWORD}}\",\r\n            \"ServerName\": \"ServerName={{server.build.env.SERVER_NAME}}\",\r\n            \"ServerPassword\": \"ServerPassword={{server.build.env.GAME_PASSWORD}}\"\r\n        }\r\n    }\r\n}", | ||||||
|         "startup": "{\"done\": \"Session GameSession successfully created\"}", |         "startup": "{\r\n    \"done\": \"Session GameSession successfully created\"\r\n}", | ||||||
|         "logs": "{}", |         "logs": "{}", | ||||||
|         "stop": "^C" |         "stop": "^C" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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#\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\nexport DEBIAN_FRONTEND=noninteractive\r\n\r\napt -y update\r\ndpkg --add-architecture i386\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates gnupg wget software-properties-common\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} ${INSTALL_FLAGS} validate +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\n## Mordhau specific because reasons\r\ncd \/tmp\r\n\r\n## install latest wine\r\nwget -nc https:\/\/dl.winehq.org\/wine-builds\/winehq.key\r\napt-key add winehq.key\r\necho \"deb https:\/\/dl.winehq.org\/wine-builds\/debian\/ buster main\" >> \/etc\/apt\/sources.list\r\napt update\r\n\r\n## libfaudio needed to install wine\r\nwget -nc https:\/\/download.opensuse.org\/repositories\/Emulators:\/Wine:\/Debian\/Debian_10\/amd64\/libfaudio0_20.01-0~buster_amd64.deb\r\nwget -nc https:\/\/download.opensuse.org\/repositories\/Emulators:\/Wine:\/Debian\/Debian_10\/i386\/libfaudio0_20.01-0~buster_i386.deb\r\n\r\napt install -y .\/libfaudio0_20.01-0~buster_*\r\n\r\n## install wine, cabextract, and xvfb for winetricks\r\napt install -y --install-recommends winehq-stable cabextract xvfb\r\n\r\nexport WINEPREFIX=\/mnt\/server\/.wine\r\nexport WINEDLLOVERRIDES=\"mscoree,mshtml=\"\r\nexport DISPLAY=:0\r\nexport DISPLAY_WIDTH=1024\r\nexport DISPLAY_HEIGHT=768\r\nexport DISPLAY_DEPTH=16\r\nexport AUTO_UPDATE=1\r\nexport XVFB=1\r\n\r\n## install winetricks\r\nwget -q -O \/usr\/sbin\/winetricks https:\/\/raw.githubusercontent.com\/Winetricks\/winetricks\/master\/src\/winetricks \\\r\n&& chmod +x \/usr\/sbin\/winetricks\r\n\r\n## install vc redistributable\r\nxvfb-run --auto-servernum winetricks -q vcrun2019\r\n\r\n## fix issues with startup.\r\nif [[ ! -d \".wine\/drive_c\/users\/container\/My Documents\" ]]; then\r\n    mkdir -p \"\/mnt\/server\/.wine\/drive_c\/users\/container\/My Documents\"\r\nfi", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## fix issues with startup.\r\nif [[ ! -d \".wine\/drive_c\/users\/container\/My Documents\" ]]; then\r\n    mkdir -p \"\/mnt\/server\/.wine\/drive_c\/users\/container\/My Documents\"\r\nfi\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "629800", |             "default_value": "629800", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric|in:629800", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Query Port", |             "name": "Query Port", | ||||||
| @ -46,7 +47,8 @@ | |||||||
|             "default_value": "27015", |             "default_value": "27015", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric|max:65535" |             "rules": "required|numeric|max:65535", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Beacon Port", |             "name": "Beacon Port", | ||||||
| @ -55,7 +57,8 @@ | |||||||
|             "default_value": "15000", |             "default_value": "15000", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric|max:65535" |             "rules": "required|numeric|max:65535", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Windows Install Flag", |             "name": "Windows Install Flag", | ||||||
| @ -64,7 +67,8 @@ | |||||||
|             "default_value": "1", |             "default_value": "1", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|boolean" |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Admin Password", |             "name": "Admin Password", | ||||||
| @ -73,7 +77,8 @@ | |||||||
|             "default_value": "aP@55word", |             "default_value": "aP@55word", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string" |             "rules": "required|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Name", |             "name": "Server Name", | ||||||
| @ -82,7 +87,8 @@ | |||||||
|             "default_value": "A Pterodactyl Hosted Server", |             "default_value": "A Pterodactyl Hosted Server", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string" |             "rules": "required|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Game Password", |             "name": "Game Password", | ||||||
| @ -91,7 +97,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string" |             "rules": "nullable|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Default Map", |             "name": "Default Map", | ||||||
| @ -100,7 +107,8 @@ | |||||||
|             "default_value": "\/Game\/Mordhau\/Maps\/Contraband\/FFA_Contraband", |             "default_value": "\/Game\/Mordhau\/Maps\/Contraband\/FFA_Contraband", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string" |             "rules": "nullable|string", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Max Players", |             "name": "Max Players", | ||||||
| @ -109,7 +117,8 @@ | |||||||
|             "default_value": "24", |             "default_value": "24", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric|between:1,60", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Auto Update", |             "name": "Auto Update", | ||||||
| @ -118,7 +127,8 @@ | |||||||
|             "default_value": "0", |             "default_value": "0", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|boolean" |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Extra variables for install", |             "name": "Extra variables for install", | ||||||
| @ -127,7 +137,28 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "nullable|string" |             "rules": "nullable|string", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "WINDOWS_INSTALL", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "WINDOWS_INSTALL", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": false, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|string|in:1", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "[System] WINETRICKS_RUN", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "WINETRICKS_RUN", | ||||||
|  |             "default_value": "vcrun2022", | ||||||
|  |             "user_viewable": false, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,31 +1,31 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-04-24T15:48:02+03:00", |     "exported_at": "2024-04-01T12:09:44+02:00", | ||||||
|     "name": "Mordhau", |     "name": "Mordhau", | ||||||
|     "author": "trey@chazx.cc", |     "author": "trey@chazx.cc", | ||||||
|     "description": "Mordhau is a multiplayer medieval hack 'n slash video game, developed by Slovenian independent studio Triternion, with a prominent aspect of skill-based competitive play and customization.", |     "description": "Mordhau is a multiplayer medieval hack 'n slash video game, developed by Slovenian independent studio Triternion, with a prominent aspect of skill-based competitive play and customization.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/parkervcp\/pterodactyl-images:game_mordhau" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/Mordhau\/Binaries\/Linux\/MordhauServer-Linux-Shipping \/Game\/Mordhau\/Maps\/{{DEFAULT_MAP}} -MaxSlots={{MAX_PLAYERS}} -USEALLAVAILABLECORES -Port={{SERVER_PORT}} -queryport={{QUERY_PORT}} -beaconport={{BEACON_PORT}}", |     "startup": ".\/Mordhau\/Binaries\/Linux\/MordhauServer-Linux-Shipping \/Game\/Mordhau\/Maps\/{{DEFAULT_MAP}} -MaxSlots={{MAX_PLAYERS}} -USEALLAVAILABLECORES -Port={{SERVER_PORT}} -queryport={{QUERY_PORT}} -beaconport={{BEACON_PORT}}", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{\r\n    \"Mordhau\/Saved\/Config\/LinuxServer\/Game.ini\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"AdminPassword=\": \"AdminPassword={{server.build.env.ADMIN_PASSWORD}}\",\r\n            \"ServerName=\": \"ServerName={{server.build.env.SERVER_NAME}}\",\r\n            \"ServerPassword=\": \"ServerPassword={{server.build.env.GAME_PASSWORD}}\"\r\n        }\r\n    }\r\n}", |         "files": "{\r\n    \"Mordhau\/Saved\/Config\/LinuxServer\/Game.ini\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"AdminPassword=\": \"AdminPassword={{server.build.env.ADMIN_PASSWORD}}\",\r\n            \"ServerName=\": \"ServerName={{server.build.env.SERVER_NAME}}\",\r\n            \"ServerPassword=\": \"ServerPassword={{server.build.env.GAME_PASSWORD}}\"\r\n        }\r\n    }\r\n}", | ||||||
|         "startup": "{\r\n    \"done\": \"Session GameSession successfully created\",\r\n    \"userInteraction\": []\r\n}", |         "startup": "{\r\n    \"done\": \"Session GameSession successfully created\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": false,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{}", | ||||||
|         "stop": "^C" |         "stop": "^C" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n# Mordhau Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\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.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} +quit\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\nchmod +x \/mnt\/server\/Mordhau\/Binaries\/Linux\/MordhauServer-Linux-Shipping", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\nchmod +x \/mnt\/server\/Mordhau\/Binaries\/Linux\/MordhauServer-Linux-Shipping\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "48", |             "default_value": "48", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|numeric|between:1,60", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Query Port", |             "name": "Query Port", | ||||||
| @ -46,16 +47,18 @@ | |||||||
|             "default_value": "27015", |             "default_value": "27015", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "nullable|string|max:20" |             "rules": "nullable|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Admin Password", |             "name": "Admin Password", | ||||||
|             "description": "Password for managing server from in game", |             "description": "Password for managing server from in game", | ||||||
|             "env_variable": "ADMIN_PASSWORD", |             "env_variable": "ADMIN_PASSWORD", | ||||||
|             "default_value": "password123", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string|max:20" |             "rules": "nullable|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Name", |             "name": "Server Name", | ||||||
| @ -64,7 +67,8 @@ | |||||||
|             "default_value": "Pterodactyl Server", |             "default_value": "Pterodactyl Server", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:40" |             "rules": "required|string|max:40", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Password", |             "name": "Server Password", | ||||||
| @ -73,7 +77,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string|max:20" |             "rules": "nullable|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "DEFAULT_MAP", |             "name": "DEFAULT_MAP", | ||||||
| @ -82,7 +87,8 @@ | |||||||
|             "default_value": "Grad\/FL_Grad", |             "default_value": "Grad\/FL_Grad", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:40" |             "rules": "required|string|max:40", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Beacon Port", |             "name": "Beacon Port", | ||||||
| @ -91,7 +97,8 @@ | |||||||
|             "default_value": "15000", |             "default_value": "15000", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Source APP ID", |             "name": "Source APP ID", | ||||||
| @ -100,7 +107,8 @@ | |||||||
|             "default_value": "629800", |             "default_value": "629800", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|in:629800", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Auto Update", |             "name": "Auto Update", | ||||||
| @ -109,7 +117,8 @@ | |||||||
|             "default_value": "1", |             "default_value": "1", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|boolean" |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,31 +1,31 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-04-15T16:54:17+02:00", |     "exported_at": "2024-04-01T12:07:23+02:00", | ||||||
|     "name": "nmrih", |     "name": "nmrih", | ||||||
|     "author": "avalongamecs@gmail.com", |     "author": "avalongamecs@gmail.com", | ||||||
|     "description": "No More Room In Hell", |     "description": "No More Room In Hell", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/pterodactyl\/core:source" |         "ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/srcds_run -game {{SRCDS_GAME}} -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", |     "startup": ".\/srcds_run -game {{SRCDS_GAME}} -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"gameserver Steam ID\",\r\n    \"userInteraction\": []\r\n}", |         "startup": "{\r\n    \"done\": \"gameserver Steam ID\"}", | ||||||
|         "logs": "{\r\n    \"custom\": true,\r\n    \"location\": \"logs\/latest.log\"\r\n}", |         "logs": "{\r\n}", | ||||||
|         "stop": "quit" |         "stop": "quit" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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#\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\n\r\napt -y update\r\napt -y --no-install-recommends install 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} validate +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", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "317670", |             "default_value": "317670", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|regex:\/^(317670)$\/" |             "rules": "required|string|in:317670", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Game Name", |             "name": "Game Name", | ||||||
| @ -46,7 +47,8 @@ | |||||||
|             "default_value": "nmrih", |             "default_value": "nmrih", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|regex:\/^(nmrih)$\/" |             "rules": "required|regex:\/^(nmrih)$\/", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Default Map", |             "name": "Default Map", | ||||||
| @ -55,7 +57,18 @@ | |||||||
|             "default_value": "nms_northway", |             "default_value": "nms_northway", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|regex:\/^(\\w{1,20})$\/" |             "rules": "required|regex:\/^(\\w{1,20})$\/", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -1,19 +1,19 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2022-01-20T12:56:32-05:00", |     "exported_at": "2024-04-01T12:05:07+02:00", | ||||||
|     "name": "Onset", |     "name": "Onset", | ||||||
|     "author": "parker@parkervcp.com", |     "author": "parker@parkervcp.com", | ||||||
|     "description": "Onset is an open world multiplayer sandbox without predefined goals. Create and host your very own experience in Onset using scripting functions. Whether that is Roleplay, Cops and Robbers or classic Freeroam. Or just enjoy the different gamemodes created by other players.", |     "description": "Onset is an open world multiplayer sandbox without predefined goals. Create and host your very own experience in Onset using scripting functions. Whether that is Roleplay, Cops and Robbers or classic Freeroam. Or just enjoy the different gamemodes created by other players.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/parkervcp\/pterodactyl-images:ubuntu_source" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/OnsetServer --noinput", |     "startup": ".\/OnsetServer --noinput", | ||||||
|     "config": { |     "config": { | ||||||
| @ -24,8 +24,8 @@ | |||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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 'ubuntu:18.04'\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n    STEAM_USER=anonymous\r\n    STEAM_PASS=\"\"\r\n    STEAM_AUTH=\"\"\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} +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", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ubuntu:18.04", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -35,9 +35,10 @@ | |||||||
|             "description": "ARK steam app id for auto updates. Leave blank to avoid auto update.", |             "description": "ARK steam app id for auto updates. Leave blank to avoid auto update.", | ||||||
|             "env_variable": "SRCDS_APPID", |             "env_variable": "SRCDS_APPID", | ||||||
|             "default_value": "1204170", |             "default_value": "1204170", | ||||||
|             "user_viewable": true, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|in:1204170", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "ld lib path", |             "name": "ld lib path", | ||||||
| @ -46,7 +47,8 @@ | |||||||
|             "default_value": ".", |             "default_value": ".", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Auto Update Server", |             "name": "Auto Update Server", | ||||||
| @ -55,7 +57,8 @@ | |||||||
|             "default_value": "1", |             "default_value": "1", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -4,7 +4,7 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2024-03-01T13:53:42+01:00", |     "exported_at": "2024-04-04T09:33:27+02:00", | ||||||
|     "name": "Palworld Proton", |     "name": "Palworld Proton", | ||||||
|     "author": "josdekurk@gmail.com", |     "author": "josdekurk@gmail.com", | ||||||
|     "description": "Fight, farm, build and work alongside mysterious creatures called \"Pals\" in this completely new multiplayer, open world survival and crafting game!", |     "description": "Fight, farm, build and work alongside mysterious creatures called \"Pals\" in this completely new multiplayer, open world survival and crafting game!", | ||||||
| @ -15,7 +15,7 @@ | |||||||
|         "Proton": "ghcr.io\/parkervcp\/steamcmd:proton" |         "Proton": "ghcr.io\/parkervcp\/steamcmd:proton" | ||||||
|     }, |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/PalworldServerConfigParser; (while read cmd; do rcon -s -a \"localhost:$RCON_PORT\" -p \"$ADMIN_PASSWORD\" \"$cmd\";done) < \/dev\/stdin & proton run \/home\/container\/Pal\/Binaries\/Win64\/PalServer-Win64-Test.exe -publiclobby -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -port={{SERVER_PORT}} -publicport={{SERVER_PORT}} -servername=\"{{SERVER_NAME}}\" -players={{MAX_PLAYERS}} $(if [ -n \"$SERVER_PASSWORD\" ]; then echo \"-serverpassword=\\\"${SERVER_PASSWORD}\\\"\"; fi) -adminpassword=\"{{ADMIN_PASSWORD}}\" -rcon", |     "startup": ".\/PalworldServerConfigParser; (while read cmd; do rcon -s -a \"localhost:$RCON_PORT\" -p \"$ADMIN_PASSWORD\" \"$cmd\";done) < \/dev\/stdin & proton run \/home\/container\/Pal\/Binaries\/Win64\/PalServer-Win64-Shipping.exe -publiclobby -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -port={{SERVER_PORT}} -publicport={{SERVER_PORT}} -servername=\"{{SERVER_NAME}}\" -players={{MAX_PLAYERS}} $(if [ -n \"$SERVER_PASSWORD\" ]; then echo \"-serverpassword=\\\"${SERVER_PASSWORD}\\\"\"; fi) -adminpassword=\"{{ADMIN_PASSWORD}}\" -rcon", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"up and running.\"\r\n}", |         "startup": "{\r\n    \"done\": \"up and running.\"\r\n}", | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2024-03-18T22:04:10+01:00", |     "exported_at": "2024-04-04T09:32:39+02:00", | ||||||
|     "name": "Palworld", |     "name": "Palworld", | ||||||
|     "author": "admin@ballaual.de", |     "author": "admin@ballaual.de", | ||||||
|     "description": "Fight, farm, build and work alongside mysterious creatures called \"Pals\" in this completely new multiplayer, open world survival and crafting game!", |     "description": "Fight, farm, build and work alongside mysterious creatures called \"Pals\" in this completely new multiplayer, open world survival and crafting game!", | ||||||
| @ -17,7 +17,7 @@ | |||||||
|     "file_denylist": [ |     "file_denylist": [ | ||||||
|         "PalServer.sh" |         "PalServer.sh" | ||||||
|     ], |     ], | ||||||
|     "startup": ".\/PalworldServerConfigParser; (while read cmd; do rcon -s -a \"localhost:$RCON_PORT\" -p \"$ADMIN_PASSWORD\" \"$cmd\";done) < \/dev\/stdin & \/home\/container\/Pal\/Binaries\/Linux\/PalServer-Linux-Test Pal -publiclobby -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -port={{SERVER_PORT}} -publicport={{SERVER_PORT}} -servername=\"{{SERVER_NAME}}\" -players={{MAX_PLAYERS}} $(if [ -n \"$SERVER_PASSWORD\" ]; then echo \"-serverpassword=\\\"${SERVER_PASSWORD}\\\"\"; fi) -adminpassword=\"{{ADMIN_PASSWORD}}\" -rcon", |     "startup": ".\/PalworldServerConfigParser; (while read cmd; do rcon -s -a \"localhost:$RCON_PORT\" -p \"$ADMIN_PASSWORD\" \"$cmd\";done) < \/dev\/stdin & \/home\/container\/Pal\/Binaries\/Linux\/PalServer-Linux-Shipping Pal -publiclobby -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -port={{SERVER_PORT}} -publicport={{SERVER_PORT}} -servername=\"{{SERVER_NAME}}\" -players={{MAX_PLAYERS}} $(if [ -n \"$SERVER_PASSWORD\" ]; then echo \"-serverpassword=\\\"${SERVER_PASSWORD}\\\"\"; fi) -adminpassword=\"{{ADMIN_PASSWORD}}\" -rcon", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"Setting breakpad minidump AppID = 2394010\"\r\n}", |         "startup": "{\r\n    \"done\": \"Setting breakpad minidump AppID = 2394010\"\r\n}", | ||||||
|  | |||||||
| @ -1,30 +1,31 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2021-02-22T13:23:01+04:00", |     "exported_at": "2024-04-01T12:02:57+02:00", | ||||||
|     "name": "Post Scriptum", |     "name": "Post Scriptum", | ||||||
|     "author": "admin@softwarenoob.com", |     "author": "admin@softwarenoob.com", | ||||||
|     "description": "Post Scriptum is a WW2-themed first-person tactical shooter that provides an authentic WWII combat experience. Focusing on historical accuracy, large-scale battles, and a challenging battlefield demands an intense need for cohesion, communication, and teamwork.", |     "description": "Post Scriptum is a WW2-themed first-person tactical shooter that provides an authentic WWII combat experience. Focusing on historical accuracy, large-scale battles, and a challenging battlefield demands an intense need for cohesion, communication, and teamwork.", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/pterodactyl\/core:source" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     ], |     }, | ||||||
|     "startup": ".\/PostScriptumServer.sh Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}} -RCONPORT={{RCON_PORT}} -RCONPASSWORD={{RCON_PASSWORD}} -fullcrashdump -log", |     "file_denylist": [], | ||||||
|  |     "startup": "PostScriptum\/Binaries\/Linux\/PostScriptumServer Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}} -RCONPORT={{RCON_PORT}} -RCONPASSWORD={{RCON_PASSWORD}} -fullcrashdump -log", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{\r\n    \"PostScriptum\/ServerConfig\/Server.cfg\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"ServerName\": \"ServerName={{server.build.env.hostname}}\",\r\n            \"MaxPlayers\": \"MaxPlayers={{server.build.env.maxplayers}}\",\r\n            \"AllowTeamChanges\": \"AllowTeamChanges={{server.build.env.allowteamchange}}\",\r\n            \"ShouldAdvertise\": \"ShouldAdvertise={{server.build.env.advertise}}\",\r\n            \"NumReservedSlots\": \"NumReservedSlots={{server.build.env.reservedslots}}\",\r\n            \"PreventTeamChangeIfUnbalanced\": \"PreventTeamChangeIfUnbalanced={{server.build.env.team_change}}\",\r\n            \"EnforceTeamBalance\": \"EnforceTeamBalance={{server.build.env.teambalance}}\",\r\n            \"RecordDemos\": \"RecordDemos={{server.build.env.demo_recording}}\"\r\n        }\r\n    }\r\n}", |         "files": "{\r\n    \"PostScriptum\/ServerConfig\/Server.cfg\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"ServerName\": \"ServerName={{server.build.env.hostname}}\",\r\n            \"MaxPlayers\": \"MaxPlayers={{server.build.env.maxplayers}}\",\r\n            \"AllowTeamChanges\": \"AllowTeamChanges={{server.build.env.allowteamchange}}\",\r\n            \"ShouldAdvertise\": \"ShouldAdvertise={{server.build.env.advertise}}\",\r\n            \"NumReservedSlots\": \"NumReservedSlots={{server.build.env.reservedslots}}\",\r\n            \"PreventTeamChangeIfUnbalanced\": \"PreventTeamChangeIfUnbalanced={{server.build.env.team_change}}\",\r\n            \"EnforceTeamBalance\": \"EnforceTeamBalance={{server.build.env.teambalance}}\",\r\n            \"RecordDemos\": \"RecordDemos={{server.build.env.demo_recording}}\"\r\n        }\r\n    }\r\n}", | ||||||
|         "startup": "{\r\n    \"done\": \"Engine Initialization\",\r\n    \"userInteraction\": []\r\n}", |         "startup": "{\r\n    \"done\": \"Engine Initialization\"\r\n}", | ||||||
|         "logs": "{\r\n    \"custom\": false,\r\n    \"location\": \"latest.log\"\r\n}", |         "logs": "{\r\n}", | ||||||
|         "stop": "^C" |         "stop": "^C" | ||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\napt update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\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 anonymous +force_install_dir \/mnt\/server +app_update 746200 ${EXTRA_FLAGS} +quit\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", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -36,7 +37,8 @@ | |||||||
|             "default_value": "10037", |             "default_value": "10037", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "RCON Port", |             "name": "RCON Port", | ||||||
| @ -45,7 +47,8 @@ | |||||||
|             "default_value": "21114", |             "default_value": "21114", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "RCON Password", |             "name": "RCON Password", | ||||||
| @ -54,7 +57,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|regex:\/^[a-zA-Z0-9]*$\/" |             "rules": "nullable|regex:\/^[a-zA-Z0-9]*$\/", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Auto Update", |             "name": "Auto Update", | ||||||
| @ -63,7 +67,8 @@ | |||||||
|             "default_value": "1", |             "default_value": "1", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|boolean" |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Name", |             "name": "Server Name", | ||||||
| @ -72,7 +77,8 @@ | |||||||
|             "default_value": "Pterodactyl Server", |             "default_value": "Pterodactyl Server", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:32" |             "rules": "required|string|max:32", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Max Players", |             "name": "Max Players", | ||||||
| @ -81,7 +87,8 @@ | |||||||
|             "default_value": "80", |             "default_value": "80", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|numeric" |             "rules": "required|numeric", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Allow Team Change", |             "name": "Allow Team Change", | ||||||
| @ -90,7 +97,8 @@ | |||||||
|             "default_value": "true", |             "default_value": "true", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|in:true,false" |             "rules": "required|string|in:true,false", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Advertise Server", |             "name": "Advertise Server", | ||||||
| @ -99,7 +107,8 @@ | |||||||
|             "default_value": "true", |             "default_value": "true", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|in:true,false" |             "rules": "required|string|in:true,false", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Reserved Slots", |             "name": "Reserved Slots", | ||||||
| @ -108,7 +117,8 @@ | |||||||
|             "default_value": "0", |             "default_value": "0", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|numeric|max:80" |             "rules": "required|numeric|max:80", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Prevent team change", |             "name": "Prevent team change", | ||||||
| @ -117,7 +127,8 @@ | |||||||
|             "default_value": "true", |             "default_value": "true", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|in:true,false" |             "rules": "required|string|in:true,false", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Enforce Team Balance", |             "name": "Enforce Team Balance", | ||||||
| @ -126,7 +137,8 @@ | |||||||
|             "default_value": "true", |             "default_value": "true", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|in:true,false" |             "rules": "required|string|in:true,false", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Record Demos", |             "name": "Record Demos", | ||||||
| @ -135,7 +147,8 @@ | |||||||
|             "default_value": "true", |             "default_value": "true", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|in:true,false" |             "rules": "required|string|in:true,false", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "ld lib path", |             "name": "ld lib path", | ||||||
| @ -144,7 +157,18 @@ | |||||||
|             "default_value": ".", |             "default_value": ".", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string" |             "rules": "required|string", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "App ID", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SRCDS_APPID", | ||||||
|  |             "default_value": "746200", | ||||||
|  |             "user_viewable": false, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|string|in:746200", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -4,7 +4,7 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2023-11-11T08:33:24-05:00", |     "exported_at": "2024-04-01T09:52:45+00:00", | ||||||
|     "name": "Resonite", |     "name": "Resonite", | ||||||
|     "author": "espeon@espeon.dev", |     "author": "espeon@espeon.dev", | ||||||
|     "description": "Enter a novel digital universe with infinite possibilities. Whether you resonate with people around the world in a casual conversation, playing games and socializing or you riff off each other when creating anything from art to programming complex games, you'll find your place here.", |     "description": "Enter a novel digital universe with infinite possibilities. Whether you resonate with people around the world in a casual conversation, playing games and socializing or you riff off each other when creating anything from art to programming complex games, you'll find your place here.", | ||||||
| @ -13,7 +13,7 @@ | |||||||
|         "Mono": "ghcr.io\/parkervcp\/yolks:mono_latest" |         "Mono": "ghcr.io\/parkervcp\/yolks:mono_latest" | ||||||
|     }, |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": "mono Headless\/Resonite.exe -c .\/Config\/Config.json -l .\/Logs $(if {{ENABLE_MODLOADER}}; then echo \"-LoadAssembly \".\/Libraries\/ResoniteModLoader.dll\"\"; fi)", |     "startup": "mono Headless\/Resonite.exe -HeadlessConfig Headless\/Config\/Config.json -Logs Headless\/Logs $(if {{ENABLE_MODLOADER}}; then echo \"-LoadAssembly \"Libraries\/ResoniteModLoader.dll\"\"; fi)", | ||||||
|     "config": { |     "config": { | ||||||
|         "files": "{}", |         "files": "{}", | ||||||
|         "startup": "{\r\n    \"done\": \"World running...\"\r\n}", |         "startup": "{\r\n    \"done\": \"World running...\"\r\n}", | ||||||
| @ -109,4 +109,4 @@ | |||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
|  | |||||||
| @ -25,7 +25,7 @@ | |||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n\r\n# File: Pterodactyl Satisfactory Egg - egg-satisfactory.json\r\n# Authors: Red-Thirten, Kubi, matthewp, Software-Noob, and Zarklord\r\n# Date: 2023\/06\/13\r\n# License: MIT License\r\n\r\n## Download and install SteamCMD\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\nmkdir -p \/mnt\/server\/steamcmd\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\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n# Install game server using SteamCMD\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login anonymous +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) validate +exit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk{32,64}\r\ncp -v linux32\/steamclient.so \/mnt\/server\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so \/mnt\/server\/.steam\/sdk64\/steamclient.so\r\n\r\n## Satisfactory setup\r\n# Check for successful installation and make the server binary executable.\r\n# Use `find` to see if a valid server binary exists using a wildcard, because\r\n# the binary name can differ between UE4 and UE5.\r\ncd \/mnt\/server\/Engine\/Binaries\/Linux\r\ncount=$(find . -maxdepth 1 -name '*-Linux-Shipping' -type f -executable | wc -l)\r\nif [[ $count -eq 0 ]]; then\r\n    echo -e \"\\n\\nSteamCMD failed to install the Satisfactory Dedicated Server!\"\r\n    echo -e \"\\tTry reinstalling the server again.\\n\"\r\n    exit 1\r\nelse\r\n    chmod +x *-Linux-Shipping\r\nfi\r\n\r\n# Make Config directory and default .ini files (since they are not initially present before first server start)\r\nmkdir -p \/mnt\/server\/FactoryGame\/Saved\/Config\/LinuxServer\/ && cd \"$_\"\r\n# Currently, this will delete & re-create certain .ini files during a re-install if they are already present.\r\n# While undesirable, this is required due to a current Pterodactyl ini config parser limitation.\r\n# When the patch to this limitation hits the production branch, this will be updated.\r\nrm -f Engine.ini Game.ini GameUserSettings.ini\r\n\r\necho -e '\\nCreating default \"Engine.ini\" configuration file...'\r\ncat > Engine.ini << EOF\r\n[\/Script\/FactoryGame.FGSaveSession]\r\nmNumRotatingAutosaves=${NUM_AUTOSAVES}\r\n\r\n[CrashReportClient]\r\nbImplicitSend=${UPLOAD_CRASH_REPORT}\r\n\r\n[\/Script\/OnlineSubsystemUtils.IpNetDriver]\r\nInitialConnectTimeout=${INIT_CONNECT_TIMEOUT}\r\nConnectionTimeout=${CONNECT_TIMEOUT}\r\nEOF\r\n\r\necho -e 'Creating default \"Game.ini\" configuration file...'\r\ncat > Game.ini << EOF\r\n[\/Script\/Engine.GameSession]\r\nMaxPlayers=${MAX_PLAYERS}\r\nEOF\r\n\r\necho -e 'Creating default \"GameUserSettings.ini\" configuration file...'\r\ncat > GameUserSettings.ini << EOF\r\n[\/Script\/FactoryGame.FGGameUserSettings]\r\nmIntValues=((\"FG.NetworkQuality\", ${NETWORK_QUALITY}))\r\nmFloatValues=((\"FG.AutosaveInterval\", ${AUTOSAVE_INTERVAL}))\r\nmAutoDetectSettingsHandled=False\r\nmPrimaryLanguage=\r\nCurrentFGGameUserSettingsVersion=0\r\nbUseVSync=False\r\nbUseDynamicResolution=False\r\nResolutionSizeX=1280\r\nResolutionSizeY=720\r\nLastUserConfirmedResolutionSizeX=1280\r\nLastUserConfirmedResolutionSizeY=720\r\nWindowPosX=-1\r\nWindowPosY=-1\r\nFullscreenMode=1\r\nLastConfirmedFullscreenMode=1\r\nPreferredFullscreenMode=1\r\nVersion=5\r\nAudioQualityLevel=0\r\nLastConfirmedAudioQualityLevel=0\r\nFrameRateLimit=0.000000\r\nDesiredScreenWidth=1280\r\nDesiredScreenHeight=720\r\nLastUserConfirmedDesiredScreenWidth=1280\r\nLastUserConfirmedDesiredScreenHeight=720\r\nLastRecommendedScreenWidth=-1.000000\r\nLastRecommendedScreenHeight=-1.000000\r\nLastCPUBenchmarkResult=-1.000000\r\nLastGPUBenchmarkResult=-1.000000\r\nLastGPUBenchmarkMultiplier=1.000000\r\nbUseHDRDisplayOutput=False\r\nHDRDisplayOutputNits=1000\r\n\r\n[ScalabilityGroups]\r\nsg.ResolutionQuality=100.000000\r\nsg.ViewDistanceQuality=3\r\nsg.AntiAliasingQuality=3\r\nsg.ShadowQuality=3\r\nsg.PostProcessQuality=3\r\nsg.TextureQuality=3\r\nsg.EffectsQuality=3\r\nsg.FoliageQuality=3\r\nsg.ShadingQuality=3\r\n\r\n[\/Script\/Engine.GameUserSettings]\r\nbUseDesiredScreenHeight=False\r\n\r\n\r\nEOF\r\n\r\necho -e \"\\nSatisfactory Dedicated Server successfully installed!\\n\"", |             "script": "#!\/bin\/bash\r\n\r\n# File: Pterodactyl Satisfactory Egg - egg-satisfactory.json\r\n# Authors: Red-Thirten, Kubi, matthewp, Software-Noob, and Zarklord\r\n# Date: 2023\/06\/13\r\n# License: MIT License\r\n\r\n## Download and install SteamCMD\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\nmkdir -p \/mnt\/server\/steamcmd\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\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n# Install game server using SteamCMD\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login anonymous +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) validate +exit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk{32,64}\r\ncp -v linux32\/steamclient.so \/mnt\/server\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so \/mnt\/server\/.steam\/sdk64\/steamclient.so\r\n\r\n## Satisfactory setup\r\n# Check for successful installation and make the server binary executable.\r\n# Use `find` to see if a valid server binary exists using a wildcard, because\r\n# the binary name can differ between UE4 and UE5.\r\ncd \/mnt\/server\/Engine\/Binaries\/Linux\r\ncount=$(find . -maxdepth 1 -name '*-Linux-Shipping' -type f -executable | wc -l)\r\nif [[ $count -eq 0 ]]; then\r\n    echo -e \"\\n\\nSteamCMD failed to install the Satisfactory Dedicated Server!\"\r\n    echo -e \"\\tTry reinstalling the server again.\\n\"\r\n    exit 1\r\nelse\r\n    chmod +x *-Linux-Shipping\r\nfi\r\n\r\n# Make Config directory and default .ini files (since they are not initially present before first server start)\r\nmkdir -p \/mnt\/server\/FactoryGame\/Saved\/Config\/LinuxServer\/ && cd \"$_\"\r\n# Currently, this will delete & re-create certain .ini files during a re-install if they are already present.\r\n# While undesirable, this is required due to a current Pterodactyl ini config parser limitation.\r\n# When the patch to this limitation hits the production branch, this will be updated.\r\nrm -f Engine.ini Game.ini GameUserSettings.ini\r\n\r\necho -e '\\nCreating default \"Engine.ini\" configuration file...'\r\ncat > Engine.ini << EOF\r\n[\/Script\/FactoryGame.FGSaveSession]\r\nmNumRotatingAutosaves=${NUM_AUTOSAVES}\r\n\r\n[CrashReportClient]\r\nbImplicitSend=${UPLOAD_CRASH_REPORT}\r\n\r\n[\/Script\/OnlineSubsystemUtils.IpNetDriver]\r\nInitialConnectTimeout=${INIT_CONNECT_TIMEOUT}\r\nConnectionTimeout=${CONNECT_TIMEOUT}\r\nEOF\r\n\r\necho -e 'Creating default \"Game.ini\" configuration file...'\r\ncat > Game.ini << EOF\r\n[\/Script\/Engine.GameSession]\r\nMaxPlayers=${MAX_PLAYERS}\r\nEOF\r\n\r\necho -e 'Creating default \"GameUserSettings.ini\" configuration file...'\r\ncat > GameUserSettings.ini << EOF\r\n[\/Script\/FactoryGame.FGGameUserSettings]\r\nmIntValues=((\"FG.NetworkQuality\", ${NETWORK_QUALITY}))\r\nmFloatValues=((\"FG.AutosaveInterval\", ${AUTOSAVE_INTERVAL}))\r\nmAutoDetectSettingsHandled=False\r\nmPrimaryLanguage=\r\nCurrentFGGameUserSettingsVersion=0\r\nbUseVSync=False\r\nbUseDynamicResolution=False\r\nResolutionSizeX=1280\r\nResolutionSizeY=720\r\nLastUserConfirmedResolutionSizeX=1280\r\nLastUserConfirmedResolutionSizeY=720\r\nWindowPosX=-1\r\nWindowPosY=-1\r\nFullscreenMode=1\r\nLastConfirmedFullscreenMode=1\r\nPreferredFullscreenMode=1\r\nVersion=5\r\nAudioQualityLevel=0\r\nLastConfirmedAudioQualityLevel=0\r\nFrameRateLimit=0.000000\r\nDesiredScreenWidth=1280\r\nDesiredScreenHeight=720\r\nLastUserConfirmedDesiredScreenWidth=1280\r\nLastUserConfirmedDesiredScreenHeight=720\r\nLastRecommendedScreenWidth=-1.000000\r\nLastRecommendedScreenHeight=-1.000000\r\nLastCPUBenchmarkResult=-1.000000\r\nLastGPUBenchmarkResult=-1.000000\r\nLastGPUBenchmarkMultiplier=1.000000\r\nbUseHDRDisplayOutput=False\r\nHDRDisplayOutputNits=1000\r\n\r\n[ScalabilityGroups]\r\nsg.ResolutionQuality=100.000000\r\nsg.ViewDistanceQuality=3\r\nsg.AntiAliasingQuality=3\r\nsg.ShadowQuality=3\r\nsg.PostProcessQuality=3\r\nsg.TextureQuality=3\r\nsg.EffectsQuality=3\r\nsg.FoliageQuality=3\r\nsg.ShadingQuality=3\r\n\r\n[\/Script\/Engine.GameUserSettings]\r\nbUseDesiredScreenHeight=False\r\n\r\n\r\nEOF\r\n\r\necho -e \"\\nSatisfactory Dedicated Server successfully installed!\\n\"", | ||||||
|             "container": "ghcr.io\/pterodactyl\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "\/bin\/bash" |             "entrypoint": "\/bin\/bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
|  | |||||||
| @ -1,19 +1,19 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2022-01-20T12:58:19-05:00", |     "exported_at": "2024-04-01T11:57:01+02:00", | ||||||
|     "name": "Soldat", |     "name": "Soldat", | ||||||
|     "author": "eggs@goover.dev", |     "author": "eggs@goover.dev", | ||||||
|     "description": "Soldat is a unique 2D (side-view) multiplayer action game. It has been influenced by the best of games such as Liero, Worms, Quake, and Counter-Strike and provides a fast-paced gaming experience with tons of blood and flesh. Soldiers fight against each other in 2D battle arenas using a deadly arsenal of military weapons, across 7 default game modes. It features 18 different weapons and 60 maps to frag away on, with full support for user created content.\r\n\r\nSteam: https:\/\/store.steampowered.com\/app\/638490\/Soldat\/", |     "description": "Soldat is a unique 2D (side-view) multiplayer action game. It has been influenced by the best of games such as Liero, Worms, Quake, and Counter-Strike and provides a fast-paced gaming experience with tons of blood and flesh. Soldiers fight against each other in 2D battle arenas using a deadly arsenal of military weapons, across 7 default game modes. It features 18 different weapons and 60 maps to frag away on, with full support for user created content.\r\n\r\nSteam: https:\/\/store.steampowered.com\/app\/638490\/Soldat\/", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "quay.io\/parkervcp\/pterodactyl-images:base_debian" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/soldatserver", |     "startup": ".\/soldatserver", | ||||||
|     "config": { |     "config": { | ||||||
| @ -24,8 +24,8 @@ | |||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "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\ndpkg --add-architecture i386\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates libstdc++6 lib32stdc++6 util-linux\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} +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +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\ncd \/mnt\/server\r\nchmod +x soldatserver", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\r\n##\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\ncd \/mnt\/server\r\nchmod +x soldatserver\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "debian:buster-slim", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -34,19 +34,21 @@ | |||||||
|             "name": "Admin Passwort", |             "name": "Admin Passwort", | ||||||
|             "description": "Admin Password for the Server", |             "description": "Admin Password for the Server", | ||||||
|             "env_variable": "ADMIN_PASSWD", |             "env_variable": "ADMIN_PASSWD", | ||||||
|             "default_value": "changeme", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Password", |             "name": "Server Password", | ||||||
|             "description": "Password to join Server", |             "description": "Password to join Server", | ||||||
|             "env_variable": "SRV_PWD", |             "env_variable": "SRV_PWD", | ||||||
|             "default_value": "changeme", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|max:20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Name", |             "name": "Server Name", | ||||||
| @ -55,7 +57,8 @@ | |||||||
|             "default_value": "MySoldatServer", |             "default_value": "MySoldatServer", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:100" |             "rules": "required|string|max:100", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Max Players", |             "name": "Max Players", | ||||||
| @ -64,7 +67,8 @@ | |||||||
|             "default_value": "10", |             "default_value": "10", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|numeric|between:1,20", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "ADD IP", |             "name": "ADD IP", | ||||||
| @ -73,7 +77,8 @@ | |||||||
|             "default_value": "638500", |             "default_value": "638500", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string|max:20" |             "rules": "required|string|in:638500", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -4,7 +4,7 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2024-03-09T11:25:43+01:00", |     "exported_at": "2024-04-03T18:32:09+02:00", | ||||||
|     "name": "Space Engineers", |     "name": "Space Engineers", | ||||||
|     "author": "eggs@goover.dev", |     "author": "eggs@goover.dev", | ||||||
|     "description": "Space Engineers is a voxel-based sandbox game set in space and on planets.", |     "description": "Space Engineers is a voxel-based sandbox game set in space and on planets.", | ||||||
| @ -194,7 +194,7 @@ | |||||||
|             "name": "WINETRICKS_RUN", |             "name": "WINETRICKS_RUN", | ||||||
|             "description": "", |             "description": "", | ||||||
|             "env_variable": "WINETRICKS_RUN", |             "env_variable": "WINETRICKS_RUN", | ||||||
|             "default_value": "vcrun2022 dotnet48 corefonts", |             "default_value": "win11 vcrun2022 mono corefonts", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|string", |             "rules": "required|string", | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2023-10-28T19:39:03+02:00", |     "exported_at": "2024-04-05T01:20:18+02:00", | ||||||
|     "name": "Stationeers (BepInEx)", |     "name": "Stationeers (BepInEx)", | ||||||
|     "author": "eggs@goover.dev", |     "author": "eggs@goover.dev", | ||||||
|     "description": "Stationeers Server with very basic BepInEx support", |     "description": "Stationeers Server with very basic BepInEx support", | ||||||
| @ -42,12 +42,12 @@ | |||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "World Name", |             "name": "World Name", | ||||||
|             "description": "Available Maps: moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus", |             "description": "Available Maps: Moon, Mars, Europa, Europa2, Mimas, Vulcan, Vulcan2, Space, Loulan, Venus", | ||||||
|             "env_variable": "WORLD_NAME", |             "env_variable": "WORLD_NAME", | ||||||
|             "default_value": "moon", |             "default_value": "moon", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string|in:,moon,mars,europa,europa2,mimas,vulcan,vulcan2,space,loulan,venus", |             "rules": "nullable|string|in:,Moon,Mars,Europa,Europa2,Mimas,Vulcan,Vulcan2,Space,Loulan,Venus", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ | |||||||
|         "version": "PTDL_v2", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2022-12-30T11:39:51+01:00", |     "exported_at": "2024-04-05T01:19:24+02:00", | ||||||
|     "name": "Stationeers", |     "name": "Stationeers", | ||||||
|     "author": "eggs@goover.dev", |     "author": "eggs@goover.dev", | ||||||
|     "description": "Stationeers Server", |     "description": "Stationeers Server", | ||||||
| @ -42,12 +42,12 @@ | |||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "World Name", |             "name": "World Name", | ||||||
|             "description": "Available Maps: moon, mars, europa, europa2, mimas, vulcan, vulcan2, space, loulan, venus", |             "description": "Available Maps: Moon, Mars, Europa, Europa2, Mimas, Vulcan, Vulcan2, Space, Loulan, Venus", | ||||||
|             "env_variable": "WORLD_NAME", |             "env_variable": "WORLD_NAME", | ||||||
|             "default_value": "moon", |             "default_value": "moon", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "nullable|string|in:,moon,mars,europa,europa2,mimas,vulcan,vulcan2,space,loulan,venus", |             "rules": "nullable|string|in:,Moon,Mars,Europa,Europa2,Mimas,Vulcan,Vulcan2,Space,Loulan,Venus", | ||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
| @ -151,4 +151,4 @@ | |||||||
|             "field_type": "text" |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @ -1,19 +1,19 @@ | |||||||
| { | { | ||||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", |     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||||
|     "meta": { |     "meta": { | ||||||
|         "version": "PTDL_v1", |         "version": "PTDL_v2", | ||||||
|         "update_url": null |         "update_url": null | ||||||
|     }, |     }, | ||||||
|     "exported_at": "2022-01-20T13:03:59-05:00", |     "exported_at": "2024-04-02T11:43:32+02:00", | ||||||
|     "name": "Tower Unite", |     "name": "Tower Unite", | ||||||
|     "author": "teamwuffy@gmail.com", |     "author": "teamwuffy@gmail.com", | ||||||
|     "description": "Tower Unite\r\n\r\nDefault Port: 7778\r\nDefault Query Port: 27016\r\n\r\nConfig Path: Tower\/Saved\/Config\/TowerServer.ini", |     "description": "Tower Unite\r\n\r\nDefault Port: 7778\r\nDefault Query Port: 27016\r\n\r\nConfig Path: Tower\/Saved\/Config\/TowerServer.ini", | ||||||
|     "features": [ |     "features": [ | ||||||
|         "steam_disk_space" |         "steam_disk_space" | ||||||
|     ], |     ], | ||||||
|     "images": [ |     "docker_images": { | ||||||
|         "ghcr.io/pterodactyl/games:source" |         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" | ||||||
|     ], |     }, | ||||||
|     "file_denylist": [], |     "file_denylist": [], | ||||||
|     "startup": ".\/Tower\/Binaries\/Linux\/TowerServer-Linux-Shipping -log -Port={{SERVER_PORT}} -MULTIHOME=0.0.0.0 -TowerServerINI=..\/..\/Saved\/Config\/TowerServer.ini", |     "startup": ".\/Tower\/Binaries\/Linux\/TowerServer-Linux-Shipping -log -Port={{SERVER_PORT}} -MULTIHOME=0.0.0.0 -TowerServerINI=..\/..\/Saved\/Config\/TowerServer.ini", | ||||||
|     "config": { |     "config": { | ||||||
| @ -24,8 +24,8 @@ | |||||||
|     }, |     }, | ||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n# Tower Unite Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --install-recommends install curl ca-certificates lib32gcc-s1\r\n\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\r\n\r\nmkdir -p \/mnt\/server\/steamcmd\r\n\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\n\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\n\r\nexport HOME=\/mnt\/server\r\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update 439660 validate +quit\r\n\r\ncd mnt\/server\r\n\r\nmkdir -p Tower\/Saved\/Config\r\nmkdir -p Tower\/Binaries\/Linux\r\n\r\nmv \/mnt\/server\/steamcmd\/linux64\/steamclient.so \/mnt\/server\/Tower\/Binaries\/Linux\r\n\r\ncat <<EOF >> Tower\/Saved\/Config\/TowerServer.ini\r\n[\/script\/towernetworking.dedicatedserveroptions]\r\nMaxPlayers=$SERVER_MAX_PLAYER\r\nServerTitle=$SERVER_TITLE\r\nSteamLoginToken=$STEAM_LOGIN_TOKEN\r\n\r\n[Administration]\r\nAdminSteamID=$STEAM_ADMIN_ID\r\nEOF", |             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\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 found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; 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\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +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\n## add below your custom commands if needed\r\n\r\ncd mnt\/server\r\n\r\nmkdir -p Tower\/Saved\/Config\r\nmkdir -p Tower\/Binaries\/Linux\r\n\r\nmv \/mnt\/server\/steamcmd\/linux64\/steamclient.so \/mnt\/server\/Tower\/Binaries\/Linux\r\n\r\ncat <<EOF >> Tower\/Saved\/Config\/TowerServer.ini\r\n[\/script\/towernetworking.dedicatedserveroptions]\r\nMaxPlayers=$SERVER_MAX_PLAYER\r\nServerTitle=$SERVER_TITLE\r\nSteamLoginToken=$STEAM_LOGIN_TOKEN\r\n\r\n[Administration]\r\nAdminSteamID=$STEAM_ADMIN_ID\r\nEOF\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", | ||||||
|             "container": "ghcr.io/pterodactyl/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "bash" |             "entrypoint": "bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
| @ -37,7 +37,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:100" |             "rules": "required|string|max:100", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Steam Admin ID", |             "name": "Steam Admin ID", | ||||||
| @ -46,7 +47,8 @@ | |||||||
|             "default_value": "", |             "default_value": "", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|integer|max:76561202255233023" |             "rules": "required|integer|max:76561202255233023", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Server Title", |             "name": "Server Title", | ||||||
| @ -55,7 +57,8 @@ | |||||||
|             "default_value": "Tower Unite Server", |             "default_value": "Tower Unite Server", | ||||||
|             "user_viewable": true, |             "user_viewable": true, | ||||||
|             "user_editable": true, |             "user_editable": true, | ||||||
|             "rules": "required|string|max:512" |             "rules": "required|string|max:512", | ||||||
|  |             "field_type": "text" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "Max Players", |             "name": "Max Players", | ||||||
| @ -64,7 +67,28 @@ | |||||||
|             "default_value": "40", |             "default_value": "40", | ||||||
|             "user_viewable": false, |             "user_viewable": false, | ||||||
|             "user_editable": false, |             "user_editable": false, | ||||||
|             "rules": "required|integer|max:512" |             "rules": "required|integer|max:512", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "App ID", | ||||||
|  |             "description": "", | ||||||
|  |             "env_variable": "SRCDS_APPID", | ||||||
|  |             "default_value": "439660", | ||||||
|  |             "user_viewable": false, | ||||||
|  |             "user_editable": false, | ||||||
|  |             "rules": "required|string|in:439660", | ||||||
|  |             "field_type": "text" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |             "name": "Auto Update", | ||||||
|  |             "description": "Auto update the server on startup.", | ||||||
|  |             "env_variable": "AUTO_UPDATE", | ||||||
|  |             "default_value": "1", | ||||||
|  |             "user_viewable": true, | ||||||
|  |             "user_editable": true, | ||||||
|  |             "rules": "required|boolean", | ||||||
|  |             "field_type": "text" | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
| } | } | ||||||
| @ -25,7 +25,7 @@ | |||||||
|     "scripts": { |     "scripts": { | ||||||
|         "installation": { |         "installation": { | ||||||
|             "script": "#!\/bin\/bash\r\n\r\n## File: Pterodactyl V Rising Egg - egg-v-rising.json\r\n## Authors: David Wolfe (Red-Thirten), Kapatheus\r\n## Date: 2023\/05\/18\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/pterodactyl\/installers:debian'\r\n\r\n# Install required packages.\r\napt -y update && apt -y --no-install-recommends install dos2unix\r\n\r\n# Download and install SteamCMD\r\nexport HOME=\/mnt\/server\r\ncd \/tmp\r\nmkdir -p $HOME\/steamcmd $HOME\/steamapps\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 $HOME\/steamcmd\r\ncd $HOME\/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\n\r\n# Install game server using SteamCMD\r\n.\/steamcmd.sh +force_install_dir $HOME +login anonymous $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} +quit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p $HOME\/.steam\/sdk{32,64}\r\ncp -v linux32\/steamclient.so $HOME\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so $HOME\/.steam\/sdk64\/steamclient.so\r\n\r\n## V Rising Setup\r\nmkdir -p $HOME\/save-data\/Settings\r\n# Check for successful installation.\r\ncd $HOME\/VRisingServer_Data\/StreamingAssets\/Settings\r\nif [[ -f ServerHostSettings.json ]]; then\r\n    # Copies default ServerHostSettings file to save-data directory.\r\n    # Also converts the contents to use Unix newlines so Ptero's JSON parser does not fail.\r\n    dos2unix -n ServerHostSettings.json $HOME\/save-data\/Settings\/ServerHostSettings.json\r\nelse\r\n    echo -e \"\\n\\nSteamCMD failed to install the V Rising Dedicated Server!\"\r\n    echo -e \"\\tTry reinstalling the server again.\\n\"\r\n    exit 1\r\nfi\r\n\r\necho -e \"\\nV Rising Dedicated Server successfully installed!\\n\"", |             "script": "#!\/bin\/bash\r\n\r\n## File: Pterodactyl V Rising Egg - egg-v-rising.json\r\n## Authors: David Wolfe (Red-Thirten), Kapatheus\r\n## Date: 2023\/05\/18\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/pterodactyl\/installers:debian'\r\n\r\n# Install required packages.\r\napt -y update && apt -y --no-install-recommends install dos2unix\r\n\r\n# Download and install SteamCMD\r\nexport HOME=\/mnt\/server\r\ncd \/tmp\r\nmkdir -p $HOME\/steamcmd $HOME\/steamapps\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 $HOME\/steamcmd\r\ncd $HOME\/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\n\r\n# Install game server using SteamCMD\r\n.\/steamcmd.sh +force_install_dir $HOME +login anonymous $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} +quit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p $HOME\/.steam\/sdk{32,64}\r\ncp -v linux32\/steamclient.so $HOME\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so $HOME\/.steam\/sdk64\/steamclient.so\r\n\r\n## V Rising Setup\r\nmkdir -p $HOME\/save-data\/Settings\r\n# Check for successful installation.\r\ncd $HOME\/VRisingServer_Data\/StreamingAssets\/Settings\r\nif [[ -f ServerHostSettings.json ]]; then\r\n    # Copies default ServerHostSettings file to save-data directory.\r\n    # Also converts the contents to use Unix newlines so Ptero's JSON parser does not fail.\r\n    dos2unix -n ServerHostSettings.json $HOME\/save-data\/Settings\/ServerHostSettings.json\r\nelse\r\n    echo -e \"\\n\\nSteamCMD failed to install the V Rising Dedicated Server!\"\r\n    echo -e \"\\tTry reinstalling the server again.\\n\"\r\n    exit 1\r\nfi\r\n\r\necho -e \"\\nV Rising Dedicated Server successfully installed!\\n\"", | ||||||
|             "container": "ghcr.io\/pterodactyl\/installers:debian", |             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||||
|             "entrypoint": "\/bin\/bash" |             "entrypoint": "\/bin\/bash" | ||||||
|         } |         } | ||||||
|     }, |     }, | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user