From edc97e7217887710d6dd911163433eee0c1ee880 Mon Sep 17 00:00:00 2001 From: gOOvER Date: Sat, 31 Dec 2022 16:51:00 +0100 Subject: [PATCH] added autoupdate, updated readme --- game_eggs/steamcmd_servers/eco/README.md | 7 +- game_eggs/steamcmd_servers/eco/egg-eco.json | 99 ++++++++++++++++----- 2 files changed, 83 insertions(+), 23 deletions(-) diff --git a/game_eggs/steamcmd_servers/eco/README.md b/game_eggs/steamcmd_servers/eco/README.md index 4ae287a2..47a9199d 100644 --- a/game_eggs/steamcmd_servers/eco/README.md +++ b/game_eggs/steamcmd_servers/eco/README.md @@ -1,8 +1,13 @@ # Eco -Steam Description +## Steam Description Eco is a community-based game; the players develop laws, government, and an economy to determine the success of their world. We need extensive playtesting to get the balance of our core features just right. Early Access is the perfect fit for finding an audience for this while also funding additional development. +## Author & Contributers +| Name | Github Profile | Buy me a Coffee | +| ------------- |-------------|-------------| +| gOOvER | https://github.com/gOOvER | [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/B0B351D0Q) | + ## Server Ports Eco requires up to 2 ports diff --git a/game_eggs/steamcmd_servers/eco/egg-eco.json b/game_eggs/steamcmd_servers/eco/egg-eco.json index 2427f1c6..415244b4 100644 --- a/game_eggs/steamcmd_servers/eco/egg-eco.json +++ b/game_eggs/steamcmd_servers/eco/egg-eco.json @@ -1,31 +1,29 @@ { "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", "meta": { - "version": "PTDL_v1", + "version": "PTDL_v2", "update_url": null }, - "exported_at": "2021-08-24T17:43:23+02:00", + "exported_at": "2022-12-31T16:45:36+01:00", "name": "Eco", "author": "info@goover.de", "description": "Eco is an online world from Strange Loop Games where players must build civilization using resources from an ecosystem that can be damaged and destroyed. The world of Eco is an incredibly reactive one, and whatever any player does in the world affects the underlying ecosystem.", - "features": [ - "steam_disk_space" - ], - "images": [ - "quay.io\/parkervcp\/pterodactyl-images:debian_dotnet-5" - ], + "features": null, + "docker_images": { + "ghcr.io\/parkervcp\/steamcmd:dotnet": "ghcr.io\/parkervcp\/steamcmd:dotnet" + }, "file_denylist": [], "startup": ".\/EcoServer", "config": { - "files": "{\r\n \"Configs\/Network.eco\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"GameServerPort\": \"{{server.build.default.port}}\",\r\n \"WebServerPort\": \"{{server.build.env.WEB_PORT}}\",\r\n \"PublicServer\": \"{{server.build.env.PUB_SRV}}\",\r\n \"Password\": \"{{server.build.env.SRV_PWD}}\",\r\n \"UPnPEnabled\": \"{{server.build.env.UPNP}}\",\r\n \"Description\": \"{{server.build.env.SRV_DES}}\"\r\n }\r\n }\r\n}", - "startup": "{\r\n \"done\": \" = Unix\",\r\n \"userInteraction\": []\r\n}", - "logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}", + "files": "{\r\n \"Configs\/Network.eco\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"GameServerPort\": \"{{server.build.default.port}}\",\r\n \"WebServerPort\": \"{{server.build.env.WEB_PORT}}\",\r\n \"PublicServer\": \"{{server.build.env.PUB_SRV}}\",\r\n \"Password\": \"{{server.build.env.SRV_PWD}}\",\r\n \"UPnPEnabled\": \"{{server.build.env.UPNP}}\",\r\n \"Description\": \"{{server.build.env.SRV_DES}}\",\r\n \"DetailedDescription\": \"{{server.build.env.DEDES}}\",\r\n \"Playtime\": \"{{server.build.env.PLAYTIME}}\",\r\n \"MaxConnections\": \"{{server.build.env.MAX_CON}}\",\r\n \"WebServerUrl\": \"{{server.build.env.WEBSRVURL}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \" = Unix\"\r\n}", + "logs": "{}", "stop": "exit" }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'debian:buster-slim'\r\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}\" == \"\" ]] || [[ \"${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\r\n\r\ncp -f $HOME\/Configs\/Network.eco.template $HOME\/Configs\/Network.eco", - "container": "debian:buster-slim", + "script": "#!\/bin\/bash\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\ncp -f $HOME\/Configs\/Network.eco.template $HOME\/Configs\/Network.eco", + "container": "ghcr.io\/pteroforge\/installers:debian", "entrypoint": "bash" } }, @@ -35,9 +33,10 @@ "description": "ID", "env_variable": "SRCDS_APPID", "default_value": "739590", - "user_viewable": true, + "user_viewable": false, "user_editable": false, - "rules": "required|numeric|digits_between:1,6" + "rules": "required|numeric|digits_between:1,6", + "field_type": "text" }, { "name": "Web server port", @@ -46,7 +45,8 @@ "default_value": "", "user_viewable": true, "user_editable": true, - "rules": "required|numeric|digits_between:1,6" + "rules": "required|numeric|digits_between:1,6", + "field_type": "text" }, { "name": "Public Server", @@ -55,7 +55,8 @@ "default_value": "false", "user_viewable": true, "user_editable": true, - "rules": "required|string|max:20" + "rules": "boolean|in:true,false", + "field_type": "text" }, { "name": "Server Password", @@ -64,7 +65,8 @@ "default_value": "", "user_viewable": true, "user_editable": true, - "rules": "nullable|string|max:20" + "rules": "nullable|string|max:20", + "field_type": "text" }, { "name": "Server Description", @@ -73,7 +75,8 @@ "default_value": "Hosted by Pterodactyl", "user_viewable": true, "user_editable": true, - "rules": "required|string|max:50" + "rules": "required|string|max:50", + "field_type": "text" }, { "name": "UPNP", @@ -82,7 +85,8 @@ "default_value": "false", "user_viewable": true, "user_editable": false, - "rules": "required|string|max:20" + "rules": "required|string|max:20", + "field_type": "text" }, { "name": "Install Flags", @@ -91,7 +95,58 @@ "default_value": "-beta default", "user_viewable": false, "user_editable": false, - "rules": "required|string|max:50" + "rules": "required|string|max:50", + "field_type": "text" + }, + { + "name": "Auto Update", + "description": "", + "env_variable": "AUTO_UPDATE", + "default_value": "1", + "user_viewable": true, + "user_editable": true, + "rules": "boolean", + "field_type": "text" + }, + { + "name": "Webserver URL", + "description": "", + "env_variable": "WEBSRVURL", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|url", + "field_type": "text" + }, + { + "name": "Max Connections", + "description": "", + "env_variable": "MAX_CON", + "default_value": "-1", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:20", + "field_type": "text" + }, + { + "name": "Playtime", + "description": "", + "env_variable": "PLAYTIME", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string", + "field_type": "text" + }, + { + "name": "DetailedDescription", + "description": "", + "env_variable": "DEDES", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string|max:50", + "field_type": "text" } ] -} +} \ No newline at end of file