eggs/game_eggs/steamcmd_servers/subnautica_nitrox_mod/egg-subnautica.json
TuEye 42c03f1d81
* Added libsdl2-2.0-0:i386 to get rid of the "Failed to init SDL priority manager: SDL not found" warning
* Added a few checks if folders exist before they get deleted/created
2021-08-18 21:33:17 +02:00

149 lines
11 KiB
JSON

{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1",
"update_url": null
},
"exported_at": "2021-08-18T21:29:22+02:00",
"name": "Subnautica",
"author": "tueye@tuworld.de",
"description": "Subnautica is an open world survival action-adventure video game developed and published by Unknown Worlds Entertainment. In it, players are free to explore the ocean on an alien planet, known as planet 4546B, after their spaceship, the Aurora, crashes on the planet's surface.\r\n\r\nNote: NitroxMod version >=1.5.0.0 is required",
"features": null,
"images": [
"quay.io\/pterodactyl\/core:mono"
],
"file_denylist": [],
"startup": "mono .\/nitrox\/NitroxServer-Subnautica.exe",
"config": {
"files": "{\r\n \"server.cfg\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"ServerPort\": \"{{server.build.default.port}}\",\r\n \"SaveInterval\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"DisableAutoSave\": \"{{server.build.env.SAVE_DISABLE}}\",\r\n \"SaveName\": \"{{server.build.env.SAVE_NAME}}\",\r\n \"ServerPassword\": \"{{server.build.env.SUBNAUTICA_PASSWORD}}\",\r\n \"AdminPassword\": \"{{server.build.env.SUBNAUTICA_ADMIN_PASSWORD}}\",\r\n \"GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"AutoPortForward\": \"{{server.build.env.PORTFORWARD_ENABLE}}\",\r\n \"SerializerMode\": \"{{server.build.env.SERIALIZER_MODE}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Server started\"\r\n}",
"logs": "{}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# Installation Script\r\n#\r\n# Install dependencies\r\ndpkg --add-architecture i386\r\napt update\r\napt -y --no-install-recommends install curl unzip libstdc++6 lib32gcc1 ca-certificates libsdl2-2.0-0:i386\r\n\r\n## Get latest Nitrox-Mod build\r\nlatest_NitroxMod=$(curl --silent \"https:\/\/api.github.com\/repos\/SubnauticaNitrox\/Nitrox\/releases\/latest\" | grep '\"tag_name\":' | sed -E 's\/.*\"([^\"]+)\".*\/\\1\/')\r\n\r\nif [ -z \"${NITROX_VERSION}\" ] || [ \"${NITROX_VERSION}\" == \"latest\" ]; then\r\n DL_VERSION=$latest_NitroxMod\r\nelse\r\n DL_VERSION=${NITROX_VERSION}\r\nfi\r\n\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\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n\r\n## Install game using steamcmd\r\nGUARDCODE=\"${STEAM_GUARDCODE}\"\r\nif [ -z $GUARDCODE ]\r\nthen\r\n echo \"\"\r\n echo \"### You did not specify a Steam Guardcode\"\r\n echo \"### A new one should be send to you shortly\"\r\n echo \"### Enter it in the startup-config after this installation is finished and reinstall the Server\"\r\n sleep 10\r\n timeout 60 .\/steamcmd.sh +login ${STEAM_USERNAME} ${STEAM_PASSWORD} +quit\r\n exit 1\r\nfi\r\n\r\n[ ! -d \"$HOME\/subnautica\" ] && mkdir $HOME\/subnautica\r\n.\/steamcmd.sh +set_steam_guard_code ${STEAM_GUARDCODE} +login ${STEAM_USERNAME} ${STEAM_PASSWORD} +@sSteamCmdForcePlatformType windows +force_install_dir $HOME\/subnautica +app_update ${APPID} ${EXTRA_FLAGS} validate +quit\r\nstatus=$?\r\n\r\nif [ $status -ne 0 ]\r\nthen\r\n echo \"\"\r\n echo \"### The Download was not successful\"\r\n echo \"### Probably the entered Guardcode was wrong\"\r\n echo \"### A new one should be send to you shortly\"\r\n echo \"### Enter it in the startup-config after this installation is finished and reinstall the Server\"\r\n sleep 10\r\n sleep 10\r\n timeout 30 .\/steamcmd.sh +login ${STEAM_USERNAME} ${STEAM_PASSWORD} +quit\r\n exit 1\r\nfi\r\n\r\n\r\n## set up 32 bit libraries\r\nmkdir -p $HOME\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p $HOME\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n\r\n## Download and extract Nitrox\r\n[ -d \"$HOME\/nitrox\" ] && rm -r $HOME\/nitrox\r\nmkdir $HOME\/nitrox\r\ncd $HOME\/nitrox\r\ncurl -sL https:\/\/github.com\/SubnauticaNitrox\/Nitrox\/releases\/download\/${DL_VERSION}\/Nitrox.${DL_VERSION}.zip -o Nitrox.${DL_VERSION}.zip\r\nunzip $HOME\/nitrox\/Nitrox.${DL_VERSION}.zip\r\n\r\n\r\n## Create path files to Subnautica Install-Dir\r\necho \"\/home\/container\/subnautica\" > $HOME\/path.txt\r\n\r\n\r\n## Create config\r\nif [ -e $HOME\/server.cfg ]; then\r\n echo \"server settings exists\"\r\nelse\r\n echo \"writing server default settings\"\r\n cat <<EOT > $HOME\/server.cfg\r\n # Server settings can be changed here\r\n # Leave blank for a random spawn position\r\n Seed=\r\n ServerPort=11000\r\n # Measured in milliseconds\r\n SaveInterval=120000\r\n # Command to run following a successful world save (e.g. .exe, .bat, or PowerShell script). \r\n PostSaveCommandPath=\r\n MaxConnections=100\r\n DisableConsole=False\r\n DisableAutoSave=False\r\n SaveName=world\r\n ServerPassword=\r\n AdminPassword=PleaseChangeMe\r\n # Possible values: SURVIVAL, FREEDOM, HARDCORE, CREATIVE\r\n GameMode=SURVIVAL\r\n # Possible values: PROTOBUF, JSON\r\n SerializerMode=JSON\r\n # Possible values: NONE, PLAYER, MODERATOR, ADMIN, CONSOLE\r\n DefaultPlayerPerm=PLAYER\r\n #\r\n # Default player stats below here\r\n DefaultOxygenValue=45\r\n DefaultMaxOxygenValue=45\r\n DefaultHealthValue=80\r\n DefaultHungerValue=50.5\r\n DefaultThirstValue=90.5\r\n # Recommended to keep at 0.1f which is the default starting value. If set to 0 then new players are cured by default.\r\n DefaultInfectionValue=0.1\r\n # If set to true, the server will try to open port on your router via UPnP\r\n AutoPortForward=False\r\nEOT\r\nfi",
"container": "debian:buster-slim",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "APP ID",
"description": "The ID corresponding to the game to download.",
"env_variable": "APPID",
"default_value": "264710",
"user_viewable": false,
"user_editable": false,
"rules": "required|numeric|digits_between:1,6"
},
{
"name": "Steam-Username",
"description": "Your Steam-Account SUername",
"env_variable": "STEAM_USERNAME",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64"
},
{
"name": "Steam-Password",
"description": "Your Steam Account Password",
"env_variable": "STEAM_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64"
},
{
"name": "Steam-GuardCode",
"description": "Yout Steam Guard Code",
"env_variable": "STEAM_GUARDCODE",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:6"
},
{
"name": "Nitrox Version",
"description": "Which version of Nitrox to install and use. Use the version e.g. 1.5.0.1 or latest for the newest release",
"env_variable": "NITROX_VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|between:3,12"
},
{
"name": "Auto Save Interval",
"description": "Time between auto saves specified in milliseconds",
"env_variable": "SAVE_INTERVAL",
"default_value": "120000",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|digits_between:6,7"
},
{
"name": "Disable Auto Save",
"description": "Disables Auto Save: False \/ True",
"env_variable": "SAVE_DISABLE",
"default_value": "False",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:True,False"
},
{
"name": "Save Name",
"description": "The save name for the server.",
"env_variable": "SAVE_NAME",
"default_value": "world",
"user_viewable": true,
"user_editable": true,
"rules": "alpha_dash|between:1,100"
},
{
"name": "Server Password",
"description": "Password neccessary for connecting to the Server",
"env_variable": "SUBNAUTICA_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|between:3,12"
},
{
"name": "Admin Password",
"description": "If specified, players must provide this password to gain access to administrator commands on the server.",
"env_variable": "SUBNAUTICA_ADMIN_PASSWORD",
"default_value": "PleaseChangeMe",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|between:3,12"
},
{
"name": "Game Mode",
"description": "Game Mode setting: SURVIVAL, FREEDOM, HARDCORE, CREATIVE",
"env_variable": "SERVER_MODE",
"default_value": "SURVIVAL",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:SURVIVAL,FREEDOM,HARDCORE,CREATIVE"
},
{
"name": "Auto Portforward via UPnP",
"description": "If set to true, the server will try to open port on your router via UPnP",
"env_variable": "PORTFORWARD_ENABLE",
"default_value": "False",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:True,False"
},
{
"name": "Serializer Mode",
"description": "Switch between savegame formats.\r\nPossible values: PROTOBUF, JSON",
"env_variable": "SERIALIZER_MODE",
"default_value": "JSON",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:PROTOBUF,JSON"
}
]
}