211 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			211 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
| {
 | |
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
 | |
|     "meta": {
 | |
|         "version": "PTDL_v2",
 | |
|         "update_url": null
 | |
|     },
 | |
|     "exported_at": "2024-06-01T00:04:58+00:00",
 | |
|     "name": "The Isle",
 | |
|     "author": "fredrik.johansenfuun@gmail.com",
 | |
|     "uuid": "6fbfb5fe-d337-44b9-bcc7-5bad094b4df8",
 | |
|     "description": "The Isle is an open beta with an open-world survival game where players choose from three factions in an attempt to survive a fierce island. Hunt. Prey. Survive.",
 | |
|     "features": [
 | |
|         "steam_disk_space"
 | |
|     ],
 | |
|     "docker_images": {
 | |
|         "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian"
 | |
|     },
 | |
|     "file_denylist": [],
 | |
|     "startup": "\/home\/container\/TheIsle\/Binaries\/Linux\/TheIsleServer-Linux-Shipping -Port=$SERVER_PORT -ini:Engine:[EpicOnlineServices]:DedicatedServerClientId=xyza7891gk5PRo3J7G9puCJGFJjmEguW -ini:Engine:[EpicOnlineServices]:DedicatedServerClientSecret=pKWl6t5i9NJK8gTpVlAxzENZ65P8hYzodV8Dqe5Rlc8",
 | |
|     "config": {
 | |
|         "files": "{\r\n    \"\/TheIsle\/Saved\/Config\/LinuxServer\/Game.ini\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"ServerName\": \"ServerName={{server.build.env.SERVER_NAME}}\",\r\n            \"MaxPlayerCount\": \"MaxPlayerCount={{server.build.env.PLAYER_COUNT}}\",\r\n            \"MaxPlayers\": \"MaxPlayers={{server.build.env.PLAYER_COUNT}}\",\r\n            \"bRconEnabled\": \"bRconEnabled={{server.build.env.RCON}}\",\r\n            \"RconPort\": \"RconPort={{server.build.env.RCON_PORT}}\",\r\n            \"RconPassword\": \"RconPassword={{server.build.env.RCON_PASSWORD}}\",\r\n            \"bQueueEnabled\": \"bQueueEnabled={{server.build.env.ENABLE_QUEUE}}\",\r\n            \"QueuePort\": \"QueuePort={{server.build.env.QUEUE_PORT}}\",\r\n            \"discord\": \"discord={{server.build.env.DISCORD}}\",\r\n            \"bEnableHumans\": \"bEnableHumans={{server.build.env.HUMANS}}\",\r\n            \"bServerPassword\": \"bServerPassword={{server.build.env.SERVER_PASSWORD_ENABLED}}\",\r\n            \"ServerPassword\": \"ServerPassword={{server.build.env.SERVER_PASSWORD}}\",\r\n            \"bAllowReplay\": \"bAllowReplay={{server.build.env.ALLOW_REPLAY}}\",\r\n            \"bServerDynamicWeather\": \"bServerDynamicWeather={{server.build.env.DYNAMIC_WEATHER}}\"\r\n        }\r\n    }\r\n}",
 | |
|         "startup": "{\r\n    \"done\": \"Display: Session started succesfully!\"\r\n}",
 | |
|         "logs": "{}",
 | |
|         "stop": "^^C"
 | |
|     },
 | |
|     "scripts": {
 | |
|         "installation": {
 | |
|             "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\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# The Isle\r\nmkdir -p \/mnt\/server\/TheIsle\/Saved\/Config\/LinuxServer\r\n#Config File\r\ncat > \/mnt\/server\/TheIsle\/Saved\/Config\/LinuxServer\/Game.ini << ENDOFFILE\r\n[\/Script\/TheIsle.TIGameSession]\r\nServerName=${SERVER_NAME}\r\nMaxPlayerCount=${PLAYER_COUNT}\r\nMapName=Gateway\r\nbRconEnabled=${RCON}\r\nRconPort=${RCON_PORT}\r\nRconPassword=${RCON_PASSWORD}\r\nbServerPassword=${SERVER_PASSWORD_ENABLED}\r\nServerPassword=${SERVER_PASSWORD}\r\nbServerDynamicWeather=${DYNAMIC_WEATHER}\r\nbAllowReplay=${ALLOW_REPLAY}\r\nbEnableHumans=${HUMANS}\r\nbQueueEnabled=${ENABLE_QUEUE}\r\nQueuePort=${QUEUE_PORT}\r\n-\r\n[\/Script\/TheIsle.TIGameStateBase]\r\nAdminsSteamIDs=${ADMINSTEAMID}\r\nENDOFFILE\r\n#Hotfix\r\ncat > \/mnt\/server\/TheIsle\/Saved\/Config\/LinuxServer\/Engine.ini << ENDOFFILE\r\n[Core.System]\r\nPaths=..\/..\/..\/Engine\/Content\r\nPaths=%GAMEDIR%Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/SoundUtilities\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/Synthesis\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/AudioSynesthesia\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/WebBrowserWidget\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/FX\/Niagara\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/PythonScriptPlugin\/Content\r\nPaths=..\/..\/..\/TheIsle\/Plugins\/SteamCore\/Content\r\nPaths=..\/..\/..\/TheIsle\/Plugins\/RVTObjectLandscapeBlending\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/Nvidia\/DLSS\/Content\r\nPaths=..\/..\/..\/TheIsle\/Plugins\/DonMeshPainting\/Content\r\nPaths=..\/..\/..\/TheIsle\/Plugins\/UIPF\/Content\r\nPaths=..\/..\/..\/TheIsle\/Plugins\/EOSCore\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/ControlRig\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/Nvidia\/DLSSMoviePipelineSupport\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/MovieScene\/MovieRenderPipeline\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Compositing\/OpenColorIO\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/MovieScene\/SequencerScripting\/Content\r\nPaths=..\/..\/..\/TheIsle\/Plugins\/ImpostorBaker\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/2D\/Paper2D\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Developer\/AnimationSharing\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Editor\/GeometryMode\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Editor\/SpeedTreeImporter\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Enterprise\/DatasmithContent\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/ChaosClothEditor\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/GeometryProcessing\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/GeometryCollectionPlugin\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/ChaosSolverPlugin\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/ChaosNiagara\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Experimental\/MotoSynth\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Media\/MediaCompositing\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/OpenXREyeTracker\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/OpenXR\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/Runtime\/OpenXRHandTracking\/Content\r\nPaths=..\/..\/..\/Engine\/Plugins\/VirtualProduction\/Takes\/Content\r\n\r\n[EpicOnlineServices]\r\nDedicatedServerClientId=xyza7891gk5PRo3J7G9puCJGFJjmEguW\r\nDedicatedServerClientSecret=pKWl6t5i9NJK8gTpVlAxzENZ65P8hYzodV8Dqe5Rlc8\r\nENDOFFILE\r\n\r\nchmod -R 777 \/mnt\/server\/TheIsle\/Saved\/Config\/LinuxServer\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
 | |
|             "container": "ghcr.io\/parkervcp\/installers:debian",
 | |
|             "entrypoint": "bash"
 | |
|         }
 | |
|     },
 | |
|     "variables": [
 | |
|         {
 | |
|             "name": "Server Name",
 | |
|             "description": "Sets the name for the server",
 | |
|             "env_variable": "SERVER_NAME",
 | |
|             "default_value": "A Pterodactyl server",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string|max:70",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Player Count",
 | |
|             "description": "",
 | |
|             "env_variable": "PLAYER_COUNT",
 | |
|             "default_value": "100",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|numeric|digits_between:1,100",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Allow Replay",
 | |
|             "description": "Enable or disable Replay",
 | |
|             "env_variable": "ALLOW_REPLAY",
 | |
|             "default_value": "false",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string|in:true,false",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Humans",
 | |
|             "description": "Enable or disable humans",
 | |
|             "env_variable": "HUMANS",
 | |
|             "default_value": "false",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string|in:true,false",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Enable Dynamic weather",
 | |
|             "description": "Enable or disable dynamic weather",
 | |
|             "env_variable": "DYNAMIC_WEATHER",
 | |
|             "default_value": "true",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string|in:true,false",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "RCON",
 | |
|             "description": "Enable RCON",
 | |
|             "env_variable": "RCON",
 | |
|             "default_value": "false",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string|in:true,false",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Rcon Port",
 | |
|             "description": "",
 | |
|             "env_variable": "RCON_PORT",
 | |
|             "default_value": "44000",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": false,
 | |
|             "rules": "required|numeric",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "RCON Password",
 | |
|             "description": "",
 | |
|             "env_variable": "RCON_PASSWORD",
 | |
|             "default_value": "",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Enable Queue",
 | |
|             "description": "Enable the queue",
 | |
|             "env_variable": "ENABLE_QUEUE",
 | |
|             "default_value": "true",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string|in:true,false",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Queue Port",
 | |
|             "description": "",
 | |
|             "env_variable": "QUEUE_PORT",
 | |
|             "default_value": "44000",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": false,
 | |
|             "rules": "required|numeric",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Discord",
 | |
|             "description": "",
 | |
|             "env_variable": "DISCORD",
 | |
|             "default_value": "norden",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": false,
 | |
|             "rules": "nullable|string|max:20",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Server Password",
 | |
|             "description": "Enable server password",
 | |
|             "env_variable": "SERVER_PASSWORD_ENABLED",
 | |
|             "default_value": "false",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|string|in:true,false",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Server Password",
 | |
|             "description": "The password of the server",
 | |
|             "env_variable": "SERVER_PASSWORD",
 | |
|             "default_value": "No password",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "nullable|string|max:20",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Auto Update",
 | |
|             "description": "Auto update on restart",
 | |
|             "env_variable": "AUTO_UPDATE",
 | |
|             "default_value": "1",
 | |
|             "user_viewable": true,
 | |
|             "user_editable": true,
 | |
|             "rules": "required|boolean",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "Beta branch of a steam app.",
 | |
|             "description": "",
 | |
|             "env_variable": "SRCDS_BETAID",
 | |
|             "default_value": "evrima",
 | |
|             "user_viewable": false,
 | |
|             "user_editable": false,
 | |
|             "rules": "required|string|max:20",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         },
 | |
|         {
 | |
|             "name": "App id",
 | |
|             "description": "",
 | |
|             "env_variable": "SRCDS_APPID",
 | |
|             "default_value": "412680",
 | |
|             "user_viewable": false,
 | |
|             "user_editable": false,
 | |
|             "rules": "required|string|in:412680",
 | |
|             "sort": null,
 | |
|             "field_type": "text"
 | |
|         }
 | |
|     ]
 | |
| } |