diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml new file mode 100644 index 00000000..5ef1390c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -0,0 +1,78 @@ +name: 🐛 Bug Report +description: Report an issue for an egg +title: "[Bug]: " +labels: [Bug] +body: + - type: markdown + attributes: + value: | + If you see any of the following, go to [Discord](https://discord.gg/pterodactyl) and report your error in a support channel. + * `A fatal error was encountered while starting this server.` + * `No server egg configuration could be located; aborting startup.` + - type: input + id: panel-version + attributes: + label: Panel Version + description: Version number of your Panel (latest is not a version) + placeholder: 1.x.x + validations: + required: true + - type: input + id: wings-version + attributes: + label: Wings Version + description: Version number of your Wings (latest is not a version) + placeholder: 1.x.x + validations: + required: true + - type: input + id: service + attributes: + label: Service + description: Service you are experiencing issues with + placeholder: minecraft/factorio/etc + validations: + required: true + - type: dropdown + id: modified + attributes: + label: Modified + description: Did you add or change things, this includes startup configs/install scripts/variables + options: + - Yes, I modified the egg (will provide details below) + - No, I did not modify the egg + validations: + required: true + - type: textarea + id: expected-behavior + attributes: + label: Expected Behavior + description: What did you expect to happen + placeholder: Install the server, start it, play + validations: + required: true + - type: textarea + id: actual-behavior + attributes: + label: Actual Behavior + description: What actually happened instead + placeholder: Server crashed with error X + validations: + required: true + - type: textarea + id: reproduce-steps + attributes: + label: Steps To Reproduce + description: Step by step what to do to cause the issue + placeholder: | + Step 1 Set version to latest + Step 2 install + Step 3 Receive error X or Y + validations: + required: true + - type: textarea + id: logs + attributes: + label: Relevant log output + description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks. + render: shell \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bugs.md b/.github/ISSUE_TEMPLATE/bugs.md deleted file mode 100644 index 759830d8..00000000 --- a/.github/ISSUE_TEMPLATE/bugs.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -name: "\U0001F41B Bug Report" -about: Report an issue for an egg - ---- - -# If you are seeing any of the following go to Discord and port your error in a support channel. - * `A fatal error was encountered while starting this server.` - * `No server egg configuration could be located; aborting startup.` - -Please fill out the information bellow and remove from the line up -If you just submit a bug with no info I will close out your bug. ---------------- - -Panel Version: (version number) -Daemon Version: (version number) -Service: (minecraft/factorio/etc) -Modified: (yes/no) (did you add or change things, this includes startup configs/install scripts/variables) - -Expected Behavior: - -Actual Behavior: - -Steps to Reproduce: (Step by step what to do to cause the issue) \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..51392286 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: ❓ Discord + url: https://discord.gg/pterodactyl + about: Please visit our Discord for support with configuration issues. diff --git a/.github/ISSUE_TEMPLATE/egg-request.yml b/.github/ISSUE_TEMPLATE/egg-request.yml new file mode 100644 index 00000000..4a144ed2 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/egg-request.yml @@ -0,0 +1,49 @@ +name: 🎮 Game Request +description: Suggest a server to build an egg for +title: "[Egg Request]: " +body: + - type: markdown + attributes: + value: | + Make sure there are no existing egg requests by searching the repository issues. Please understand how Pterodactyl works when you are requesting an egg. (ie. docker-compose doesn't work for a pterodactyl server) + - type: input + id: service + attributes: + label: Service + description: Service you are experiencing issues with + placeholder: minecraft/factorio/etc + validations: + required: true + - type: dropdown + id: expand + attributes: + label: Does this expand an already existing service + options: + - "Yes" + - "No" + validations: + required: true + - type: input + id: game-link + attributes: + label: Link to game + placeholder: minecraft.net/factorio.com/etc + validations: + required: true + - type: input + id: download-link + attributes: + label: Links for server downloads + description: This needs to be an official link and not one that is hosted on some forum page or a personal Github page. + validations: + required: true + validations: + required: true + - type: input + id: instruction-link + attributes: + label: Links for the install docs + description: Link to install instructions or documentation based on which the server can be created + placeholder: Install the server, start it, play + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/request.md b/.github/ISSUE_TEMPLATE/request.md deleted file mode 100644 index 1590d3a8..00000000 --- a/.github/ISSUE_TEMPLATE/request.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -name: "\U0001F3AE Game Request" -about: Suggest a server to build an egg for - ---- - -Please fill out the information bellow and remove from the line up -Please understand how Pterodactyl works when you are requesting an egg. (ie. docker-compose doesn't work for a pterodactyl server) ---------------- - -Service: (Ex. minecraft/factorio/etc) - -Does this expand an already existing service: Y/N - -Link to game: (Ex. minecraft.net/factorio.com/etc) - -Links for server downloads: This needs to be an official link and not one that is hosted on some forum page or a personal github page. - -Links for install steps/docs: diff --git a/game_eggs/minecraft/README.md b/game_eggs/minecraft/README.md index 1cd6d519..eec1eeec 100644 --- a/game_eggs/minecraft/README.md +++ b/game_eggs/minecraft/README.md @@ -32,6 +32,7 @@ It’s set in infinitely-generated worlds of wide open terrain - icy mountains, * [Travertine](/minecraft/proxy/java/travertine) * [TyphoonLimbo](/minecraft/proxy/java/typhoonlimbo) * [Velocity](/minecraft/proxy/java/velocity) + * [VIAaaS](/minecraft/proxy/java/viaaas) * [Waterfall](/minecraft/proxy/java/waterfall) * [Cross Platform](/minecraft/proxy/cross_platform) * [GeyserMC](/minecraft/proxy/cross_platform/geyser) diff --git a/game_eggs/minecraft/bedrock/bedrock/egg-vanilla-bedrock.json b/game_eggs/minecraft/bedrock/bedrock/egg-vanilla-bedrock.json index c14216e1..31507ac9 100644 --- a/game_eggs/minecraft/bedrock/bedrock/egg-vanilla-bedrock.json +++ b/game_eggs/minecraft/bedrock/bedrock/egg-vanilla-bedrock.json @@ -4,7 +4,7 @@ "version": "PTDL_v1", "update_url": null }, - "exported_at": "2021-04-07T08:57:04+03:00", + "exported_at": "2021-07-04T00:38:57+03:00", "name": "Vanilla Bedrock", "author": "parker@parkervcp.com", "description": "Bedrock Edition (also known as the Bedrock Version, Bedrock Codebase, Bedrock Engine or just Bedrock) refers to the multi-platform family of editions of Minecraft developed by Mojang AB, Microsoft Studios, 4J Studios, and SkyBox Labs. Prior to this term, as the engine originated with Pocket Edition, this entire product family was referred to as \"Pocket Edition\", \"MCPE\", or \"Pocket\/Windows 10 Edition\".", @@ -22,7 +22,7 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y zip unzip wget curl\r\n\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\nif [ -z \"${BEDROCK_VERSION}\" ] || [ \"${BEDROCK_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n DOWNLOAD_URL=$(curl -sSL https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\/ | grep azureedge | grep linux | grep -Eo \"(http|https):\/\/[a-zA-Z0-9.\/?=_-]*\")\r\nelse \r\n echo -e \"\\n Downloading ${BEDROCK_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-linux\/bedrock-server-$BEDROCK_VERSION.zip\r\nfi\r\n\r\necho -e \"backing up config files\"\r\nrm *.bak\r\ncp server.properties server.properties.bak\r\ncp permissions.json permissions.json.bak\r\ncp whitelist.json whitelist.json.bak\r\n\r\necho -e \"Downloading files from https:\/\/minecraft.azureedge.net\/bin-linux\/bedrock-server-$BEDROCK_VERSION.zip\"\r\n\r\nwget ${DOWNLOAD_URL}\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5)\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5)\r\n\r\necho -e \"restoring config files\"\r\ncp -rf server.properties.bak server.properties\r\ncp -rf permissions.json.bak permissions.json\r\ncp -rf whitelist.json.bak whitelist.json\r\nchmod +x bedrock_server\r\n\r\necho -e \"Done\"", + "script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y zip unzip wget curl\r\n\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\n# Minecraft CDN Akamai blocks script user-agents\r\nRANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n\r\nif [ -z \"${BEDROCK_VERSION}\" ] || [ \"${BEDROCK_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n curl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -H \"Accept-Encoding: gzip, deflate\" -o versions.html.gz https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\r\n DOWNLOAD_URL=$(zgrep -o 'https:\/\/minecraft.azureedge.net\/bin-linux\/[^\"]*' versions.html.gz)\r\nelse \r\n echo -e \"\\n Downloading ${BEDROCK_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-linux\/bedrock-server-$BEDROCK_VERSION.zip\r\nfi\r\n\r\nDOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5) # Retrieve archive name\r\n\r\necho -e \"backing up config files\"\r\nrm *.bak versions.html.gz\r\ncp server.properties server.properties.bak\r\ncp permissions.json permissions.json.bak\r\ncp whitelist.json whitelist.json.bak\r\n\r\necho -e \"Downloading files from: $DOWNLOAD_URL\"\r\n\r\ncurl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $DOWNLOAD_FILE\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $DOWNLOAD_FILE\r\n\r\necho -e \"restoring backup config files - on first install there will be file not found errors which you can ignore.\"\r\ncp -rf server.properties.bak server.properties\r\ncp -rf permissions.json.bak permissions.json\r\ncp -rf whitelist.json.bak whitelist.json\r\n\r\nchmod +x bedrock_server\r\n\r\necho -e \"Install Completed\"", "container": "debian:buster-slim", "entrypoint": "bash" } @@ -83,4 +83,4 @@ "rules": "required|string|in:true,false" } ] -} +} \ No newline at end of file diff --git a/game_eggs/minecraft/proxy/README.md b/game_eggs/minecraft/proxy/README.md index 0ade0eb7..b0364aaa 100644 --- a/game_eggs/minecraft/proxy/README.md +++ b/game_eggs/minecraft/proxy/README.md @@ -2,10 +2,11 @@ * [Java](/minecraft/proxy/java/) * [FlameCord](/minecraft/proxy/java/flamecord) - * [Waterfall](/minecraft/proxy/java/waterfall) * [Travertine](/minecraft/proxy/java/travertine) - * [Velocity](/minecraft/proxy/java/velocity) * [TyphoonLimbo](/minecraft/proxy/java/typhoonlimbo) + * [Velocity](/minecraft/proxy/java/velocity) + * [VIAaaS](/minecraft/proxy/java/viaaas) + * [Waterfall](/minecraft/proxy/java/waterfall) * [Cross Platform](/minecraft/proxy/cross_platform) * [GeyserMC](/minecraft/proxy/cross_platform/geyser) * [Waterdog](/minecraft/proxy/cross_platform/waterdog) diff --git a/game_eggs/minecraft/proxy/java/README.md b/game_eggs/minecraft/proxy/java/README.md index b9be1296..b546c9c4 100644 --- a/game_eggs/minecraft/proxy/java/README.md +++ b/game_eggs/minecraft/proxy/java/README.md @@ -17,6 +17,9 @@ A limbo server is a fallback server able to handle a massive amount of simultane [Velocity](https://velocitypowered.com) Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility. +#### VIAaaS +[VIAaaS](https://github.com/ViaVersion/VIAaaS) is the Minecraft plugin ViaVersion made standalone as a proxy. + #### Waterfall [Waterfall](https://papermc.io/downloads#Waterfall) Paper fork of the BungeeCord software, with improved Forge support and more features. \ No newline at end of file diff --git a/game_eggs/minecraft/proxy/java/viaaas/README.md b/game_eggs/minecraft/proxy/java/viaaas/README.md new file mode 100644 index 00000000..d84615e9 --- /dev/null +++ b/game_eggs/minecraft/proxy/java/viaaas/README.md @@ -0,0 +1,12 @@ +# VIAaaS +VIAaaS is the Minecraft plugin ViaVersion made standalone as a proxy. + +More information is available here: https://github.com/ViaVersion/VIAaaS + +## Server Ports +The minecraft server requires a single port for access (default 25565), and one TCP port 25543, to be used for HTTPS and WebSocket connections. + +| Port | default | +|------------|---------| +| Game | 25565 | +| WS & HTTPS | 25543 | diff --git a/game_eggs/minecraft/proxy/java/viaaas/egg-v-i-aaa-s.json b/game_eggs/minecraft/proxy/java/viaaas/egg-v-i-aaa-s.json new file mode 100644 index 00000000..19837abd --- /dev/null +++ b/game_eggs/minecraft/proxy/java/viaaas/egg-v-i-aaa-s.json @@ -0,0 +1,50 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1", + "update_url": null + }, + "exported_at": "2021-06-28T11:55:37-04:00", + "name": "VIAaaS", + "author": "regulad@outlook.com", + "description": "VIAaaS - ViaVersion as a Service - Standalone ViaVersion proxy", + "features": null, + "images": [ + "ghcr.io\/pterodactyl\/yolks:java_16" + ], + "file_denylist": [], + "startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}} -sslPort={{WEBSERVER_PORT}}", + "config": { + "files": "{\r\n \"config\/viaaas.yml\": {\r\n \"parser\": \"yaml\",\r\n \"find\": {\r\n \"port\": \"{{server.build.default.port}}\",\r\n \"bind-address\": \"0.0.0.0\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Application started:\"\r\n}", + "logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}", + "stop": "end" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\n# VIAaaS Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -Lf -o ${SERVER_JARFILE} \"https:\/\/jitpack.io\/com\/github\/ViaVersion\/VIAaaS\/master-SNAPSHOT\/VIAaaS-master-SNAPSHOT-all.jar\"", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "VIAaaS Jar File", + "description": "The name of the jarfile to be used when downloading & running VIAaaS.", + "env_variable": "SERVER_JARFILE", + "default_value": "VIAaaS-all.jar", + "user_viewable": true, + "user_editable": true, + "rules": "required|string" + }, + { + "name": "Webserver Port", + "description": "The port to listen to webserver connections on.", + "env_variable": "WEBSERVER_PORT", + "default_value": "25543", + "user_viewable": true, + "user_editable": true, + "rules": "required|string" + } + ] +} \ No newline at end of file diff --git a/minecraft/README.md b/minecraft/README.md new file mode 100644 index 00000000..52c0ecaa --- /dev/null +++ b/minecraft/README.md @@ -0,0 +1,3 @@ +## All Minecraft eggs have been migrated to a [new game_eggs folder.](https://github.com/parkervcp/eggs/tree/master/game_eggs/minecraft) + +This folder is only kept for backward compatibility for eggs that are downloading server.properties file from here. \ No newline at end of file diff --git a/minecraft/java/README.md b/minecraft/java/README.md new file mode 100644 index 00000000..52c0ecaa --- /dev/null +++ b/minecraft/java/README.md @@ -0,0 +1,3 @@ +## All Minecraft eggs have been migrated to a [new game_eggs folder.](https://github.com/parkervcp/eggs/tree/master/game_eggs/minecraft) + +This folder is only kept for backward compatibility for eggs that are downloading server.properties file from here. \ No newline at end of file diff --git a/minecraft/java/server.properties b/minecraft/java/server.properties new file mode 100644 index 00000000..00313aec --- /dev/null +++ b/minecraft/java/server.properties @@ -0,0 +1,3 @@ +#Minecraft server properties +server-port=25565 +server-ip=