From e7c5817524844e7665328551a62c7dcffee26197 Mon Sep 17 00:00:00 2001 From: Joshua Walsh Date: Mon, 27 May 2019 02:50:28 +1000 Subject: [PATCH 1/7] Add egg-vanilla-cord.json --- .../vanillacord/egg-vanilla-cord.json | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 minecraft_java/vanillacord/egg-vanilla-cord.json diff --git a/minecraft_java/vanillacord/egg-vanilla-cord.json b/minecraft_java/vanillacord/egg-vanilla-cord.json new file mode 100644 index 00000000..016d6d80 --- /dev/null +++ b/minecraft_java/vanillacord/egg-vanilla-cord.json @@ -0,0 +1,45 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2019-05-26T12:47:26-04:00", + "name": "VanillaCord", + "author": "support@pterodactyl.io", + "description": "Minecraft is a game about placing blocks and going on adventures. Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles. Play in Creative Mode with unlimited resources or mine deep in Survival Mode, crafting weapons and armor to fend off dangerous mobs. Do all this alone or with friends.\r\n\r\nVanillaCord adds support for BungeeCord's ip_forward setting.", + "image": "quay.io\/pterodactyl\/core:java", + "startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}", + "config": { + "files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}", + "logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}", + "stop": "stop" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\n# Vanilla MC Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt-get update\r\napt-get install -y curl jq\r\n\r\ncd \/mnt\/server\r\n\r\nLATEST_VERSION=`curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq -r '.latest.release'`\r\n\r\nif [ -z \"$VANILLA_VERSION\" ] || [ \"$VANILLA_VERSION\" == \"latest\" ]; then\r\n INSTALLING_VERSION=$LATEST_VERSION\r\nelse\r\n INSTALLING_VERSION=$VANILLA_VERSION\r\nfi\r\nMANIFEST_URL=$(curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq .versions | jq -r '.[] | select(.id == \"'$INSTALLING_VERSION'\") | .url')\r\n\r\nDOWNLOAD_URL=`curl $MANIFEST_URL | jq .downloads.server | jq -r '. | .url'`\r\n\r\nMAJOR_VERSION=$(echo $INSTALLING_VERSION | grep -Po '^\\K\\d+(?=\\.\\d+\\.\\d+$)')\r\nMINOR_VERSION=$(echo $INSTALLING_VERSION | grep -Po '^\\d+\\.\\K\\d+(?=\\.\\d+$)')\r\nPATCH_VERSION=$(echo $INSTALLING_VERSION | grep -Po '^\\d+\\.\\d+\\.\\K\\d+(?=$)')\r\n\r\nVANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.12\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nif [[ MAJOR_VERSION -eq 1 && MINOR_VERSION -lt 12 ]]; then\r\n VANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.7.10\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nfi\r\n\r\nif [[ (MAJOR_VERSION -eq 1 && MINOR_VERSION -eq 7 && PATCH_VERSION -lt 10) || (MAJOR_VERSION -eq 1 && MINOR_VERSION -lt 7) ]]; then\r\n echo \"VanillaCord is only supported on Minecraft 1.7.10 or higher! You cannot use it with $INSTALLING_VERSION.\"\r\n exit 1\r\nfi\r\n\r\ncurl -o vanillacord.jar $VANILLACORD_URL\r\njava -jar vanillacord.jar $INSTALLING_VERSION\r\n\r\nrm -f vanillacord.jar\r\nrm -rf in\r\nmv out\/*.jar $SERVER_JARFILE\r\nrm -rf out", + "container": "openjdk:8-jre-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Server Jar File", + "description": "The name of the server jarfile to run the server with.", + "env_variable": "SERVER_JARFILE", + "default_value": "server.jar", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/" + }, + { + "name": "Server Version", + "description": "The version of Minecraft Vanilla to install. Use \"latest\" to install the latest version.", + "env_variable": "VANILLA_VERSION", + "default_value": "latest", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|between:3,15" + } + ] +} From 0ca9507e1942ff826d31fce7efbb67e86aff4ce0 Mon Sep 17 00:00:00 2001 From: Joshua Walsh Date: Mon, 27 May 2019 02:53:09 +1000 Subject: [PATCH 2/7] Add VanillaCord to main README --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 13807133..048bc676 100644 --- a/README.md +++ b/README.md @@ -72,6 +72,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [Spigot](/minecraft_java/spigot/) * [Paper](/minecraft_java/paper) * [Technic](/minecraft_java/technic/) +* [VanillaCord](/minecraft_java/vanillacord/) [Minecraft Proxies](/minecraft_proxy/) (these are for the java version of minecraft) * [Waterfall](/minecraft_proxy/waterfall/) From ff7e18365d362b7d63f28b61cf3c41c4acdb6b52 Mon Sep 17 00:00:00 2001 From: Joshua Walsh Date: Mon, 27 May 2019 02:56:11 +1000 Subject: [PATCH 3/7] Create README.MD for VanillaCord --- minecraft_java/vanillacord/README.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 minecraft_java/vanillacord/README.md diff --git a/minecraft_java/vanillacord/README.md b/minecraft_java/vanillacord/README.md new file mode 100644 index 00000000..b76396a6 --- /dev/null +++ b/minecraft_java/vanillacord/README.md @@ -0,0 +1,5 @@ +# VanillaCord + +A patch for vanilla servers to work with BungeeCord's ip_forward setting. + +[Details](https://www.spigotmc.org/resources/vanillacord.952/) From 5ee10e995c639c914d5116f1bc681a087de91bee Mon Sep 17 00:00:00 2001 From: Joshua Walsh Date: Mon, 27 May 2019 11:08:46 +1000 Subject: [PATCH 4/7] Update VanillaCord link to point to ME1312's fork --- minecraft_java/vanillacord/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/minecraft_java/vanillacord/README.md b/minecraft_java/vanillacord/README.md index b76396a6..d1544799 100644 --- a/minecraft_java/vanillacord/README.md +++ b/minecraft_java/vanillacord/README.md @@ -2,4 +2,4 @@ A patch for vanilla servers to work with BungeeCord's ip_forward setting. -[Details](https://www.spigotmc.org/resources/vanillacord.952/) +This uses [ME1312's fork](https://github.com/ME1312/VanillaCord) of VanillaCord which has been updated for modern Minecraft. From 32b614802eb29e437554ab70a341c15d716e7d86 Mon Sep 17 00:00:00 2001 From: Joshua Walsh Date: Mon, 27 May 2019 11:25:03 +1000 Subject: [PATCH 5/7] Add some notes about online-mode --- minecraft_java/vanillacord/README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/minecraft_java/vanillacord/README.md b/minecraft_java/vanillacord/README.md index d1544799..c5d91e0e 100644 --- a/minecraft_java/vanillacord/README.md +++ b/minecraft_java/vanillacord/README.md @@ -3,3 +3,7 @@ A patch for vanilla servers to work with BungeeCord's ip_forward setting. This uses [ME1312's fork](https://github.com/ME1312/VanillaCord) of VanillaCord which has been updated for modern Minecraft. + +## Note: + +If you've set up Spigot, Paper or some other server with BungeeCord's IP forwarding you might know that you have to set online-mode to false. Due to the way that VanillaCord works this is not necessary with this Egg, you can (and should) leave online-mode as true. From 7e2c37769218faa0f35b95d99c9632181fdad8aa Mon Sep 17 00:00:00 2001 From: Joshua Walsh Date: Thu, 6 Jun 2019 14:41:40 +1000 Subject: [PATCH 6/7] Use Alpine instead of Debian for install image Required using `sed` instead of `grep` due to BusyBox `grep` not supporting PCRE. Also required rewriting the conditions for the if statements, as `ash` does not support Bash's Conditional Expressions. --- minecraft_java/vanillacord/egg-vanilla-cord.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/minecraft_java/vanillacord/egg-vanilla-cord.json b/minecraft_java/vanillacord/egg-vanilla-cord.json index 016d6d80..9927e189 100644 --- a/minecraft_java/vanillacord/egg-vanilla-cord.json +++ b/minecraft_java/vanillacord/egg-vanilla-cord.json @@ -3,7 +3,7 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2019-05-26T12:47:26-04:00", + "exported_at": "2019-06-06T00:39:33-04:00", "name": "VanillaCord", "author": "support@pterodactyl.io", "description": "Minecraft is a game about placing blocks and going on adventures. Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles. Play in Creative Mode with unlimited resources or mine deep in Survival Mode, crafting weapons and armor to fend off dangerous mobs. Do all this alone or with friends.\r\n\r\nVanillaCord adds support for BungeeCord's ip_forward setting.", @@ -17,9 +17,9 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n# Vanilla MC Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt-get update\r\napt-get install -y curl jq\r\n\r\ncd \/mnt\/server\r\n\r\nLATEST_VERSION=`curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq -r '.latest.release'`\r\n\r\nif [ -z \"$VANILLA_VERSION\" ] || [ \"$VANILLA_VERSION\" == \"latest\" ]; then\r\n INSTALLING_VERSION=$LATEST_VERSION\r\nelse\r\n INSTALLING_VERSION=$VANILLA_VERSION\r\nfi\r\nMANIFEST_URL=$(curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq .versions | jq -r '.[] | select(.id == \"'$INSTALLING_VERSION'\") | .url')\r\n\r\nDOWNLOAD_URL=`curl $MANIFEST_URL | jq .downloads.server | jq -r '. | .url'`\r\n\r\nMAJOR_VERSION=$(echo $INSTALLING_VERSION | grep -Po '^\\K\\d+(?=\\.\\d+\\.\\d+$)')\r\nMINOR_VERSION=$(echo $INSTALLING_VERSION | grep -Po '^\\d+\\.\\K\\d+(?=\\.\\d+$)')\r\nPATCH_VERSION=$(echo $INSTALLING_VERSION | grep -Po '^\\d+\\.\\d+\\.\\K\\d+(?=$)')\r\n\r\nVANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.12\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nif [[ MAJOR_VERSION -eq 1 && MINOR_VERSION -lt 12 ]]; then\r\n VANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.7.10\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nfi\r\n\r\nif [[ (MAJOR_VERSION -eq 1 && MINOR_VERSION -eq 7 && PATCH_VERSION -lt 10) || (MAJOR_VERSION -eq 1 && MINOR_VERSION -lt 7) ]]; then\r\n echo \"VanillaCord is only supported on Minecraft 1.7.10 or higher! You cannot use it with $INSTALLING_VERSION.\"\r\n exit 1\r\nfi\r\n\r\ncurl -o vanillacord.jar $VANILLACORD_URL\r\njava -jar vanillacord.jar $INSTALLING_VERSION\r\n\r\nrm -f vanillacord.jar\r\nrm -rf in\r\nmv out\/*.jar $SERVER_JARFILE\r\nrm -rf out", - "container": "openjdk:8-jre-slim", - "entrypoint": "bash" + "script": "#!\/bin\/ash\r\n\r\napk --no-cache --update add curl jq\r\n\r\ncd \/mnt\/server\r\n\r\necho $VANILLA_VERSION\r\n\r\nLATEST_VERSION=`curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq -r '.latest.release'`\r\n\r\nif { [ -z \"$VANILLA_VERSION\" ] || [ \"$VANILLA_VERSION\" == \"latest\" ]; } then\r\n INSTALLING_VERSION=$LATEST_VERSION\r\nelse\r\n INSTALLING_VERSION=$VANILLA_VERSION\r\nfi\r\nMANIFEST_URL=$(curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq .versions | jq -r '.[] | select(.id == \"'$INSTALLING_VERSION'\") | .url')\r\n\r\nDOWNLOAD_URL=`curl $MANIFEST_URL | jq .downloads.server | jq -r '. | .url'`\r\n\r\nMAJOR_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^([0-9]*)\\.[0-9]*\\.[0-9]*$\/\\1\/p')\r\nMINOR_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^[0-9]*\\.([0-9]*)\\.[0-9]*$\/\\1\/p')\r\nPATCH_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^[0-9]*\\.[0-9]*\\.([0-9]*)$\/\\1\/p')\r\n\r\nVANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.12\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nif [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -lt 12 ]; then\r\n VANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.7.10\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nfi\r\n\r\nif { [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -eq 7 ] && [ $PATCH_VERSION -lt 10 ]; } || { [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -lt 7 ]; } then\r\n echo \"VanillaCord is only supported on Minecraft 1.7.10 or higher! You cannot use it with $INSTALLING_VERSION.\"\r\n exit 1\r\nfi\r\n\r\ncurl -o vanillacord.jar $VANILLACORD_URL\r\njava -jar vanillacord.jar $INSTALLING_VERSION\r\n\r\nrm -f vanillacord.jar\r\nrm -rf in\r\nmv out\/*.jar $SERVER_JARFILE\r\nrm -rf out", + "container": "openjdk:8-jre-alpine", + "entrypoint": "ash" } }, "variables": [ From cd74e81d05fe678d722e6f9f36369a3f8d79e72c Mon Sep 17 00:00:00 2001 From: Joshua Walsh Date: Thu, 6 Jun 2019 23:34:08 +1000 Subject: [PATCH 7/7] Remove unused environment variables --- minecraft_java/vanillacord/egg-vanilla-cord.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/minecraft_java/vanillacord/egg-vanilla-cord.json b/minecraft_java/vanillacord/egg-vanilla-cord.json index 9927e189..7df2d5c5 100644 --- a/minecraft_java/vanillacord/egg-vanilla-cord.json +++ b/minecraft_java/vanillacord/egg-vanilla-cord.json @@ -3,7 +3,7 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2019-06-06T00:39:33-04:00", + "exported_at": "2019-06-06T09:33:27-04:00", "name": "VanillaCord", "author": "support@pterodactyl.io", "description": "Minecraft is a game about placing blocks and going on adventures. Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles. Play in Creative Mode with unlimited resources or mine deep in Survival Mode, crafting weapons and armor to fend off dangerous mobs. Do all this alone or with friends.\r\n\r\nVanillaCord adds support for BungeeCord's ip_forward setting.", @@ -17,7 +17,7 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/ash\r\n\r\napk --no-cache --update add curl jq\r\n\r\ncd \/mnt\/server\r\n\r\necho $VANILLA_VERSION\r\n\r\nLATEST_VERSION=`curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq -r '.latest.release'`\r\n\r\nif { [ -z \"$VANILLA_VERSION\" ] || [ \"$VANILLA_VERSION\" == \"latest\" ]; } then\r\n INSTALLING_VERSION=$LATEST_VERSION\r\nelse\r\n INSTALLING_VERSION=$VANILLA_VERSION\r\nfi\r\nMANIFEST_URL=$(curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq .versions | jq -r '.[] | select(.id == \"'$INSTALLING_VERSION'\") | .url')\r\n\r\nDOWNLOAD_URL=`curl $MANIFEST_URL | jq .downloads.server | jq -r '. | .url'`\r\n\r\nMAJOR_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^([0-9]*)\\.[0-9]*\\.[0-9]*$\/\\1\/p')\r\nMINOR_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^[0-9]*\\.([0-9]*)\\.[0-9]*$\/\\1\/p')\r\nPATCH_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^[0-9]*\\.[0-9]*\\.([0-9]*)$\/\\1\/p')\r\n\r\nVANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.12\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nif [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -lt 12 ]; then\r\n VANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.7.10\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nfi\r\n\r\nif { [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -eq 7 ] && [ $PATCH_VERSION -lt 10 ]; } || { [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -lt 7 ]; } then\r\n echo \"VanillaCord is only supported on Minecraft 1.7.10 or higher! You cannot use it with $INSTALLING_VERSION.\"\r\n exit 1\r\nfi\r\n\r\ncurl -o vanillacord.jar $VANILLACORD_URL\r\njava -jar vanillacord.jar $INSTALLING_VERSION\r\n\r\nrm -f vanillacord.jar\r\nrm -rf in\r\nmv out\/*.jar $SERVER_JARFILE\r\nrm -rf out", + "script": "#!\/bin\/ash\r\n\r\napk --no-cache --update add curl jq\r\n\r\ncd \/mnt\/server\r\n\r\necho $VANILLA_VERSION\r\n\r\nLATEST_VERSION=`curl https:\/\/launchermeta.mojang.com\/mc\/game\/version_manifest.json | jq -r '.latest.release'`\r\n\r\nif { [ -z \"$VANILLA_VERSION\" ] || [ \"$VANILLA_VERSION\" == \"latest\" ]; } then\r\n INSTALLING_VERSION=$LATEST_VERSION\r\nelse\r\n INSTALLING_VERSION=$VANILLA_VERSION\r\nfi\r\n\r\nMAJOR_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^([0-9]*)\\.[0-9]*\\.[0-9]*$\/\\1\/p')\r\nMINOR_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^[0-9]*\\.([0-9]*)\\.[0-9]*$\/\\1\/p')\r\nPATCH_VERSION=$(echo $INSTALLING_VERSION | sed -En 's\/^[0-9]*\\.[0-9]*\\.([0-9]*)$\/\\1\/p')\r\n\r\nVANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.12\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nif [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -lt 12 ]; then\r\n VANILLACORD_URL=https:\/\/src.me1312.net\/jenkins\/job\/VanillaCord\/job\/1.7.10\/lastSuccessfulBuild\/artifact\/artifacts\/VanillaCord.jar\r\nfi\r\n\r\nif { [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -eq 7 ] && [ $PATCH_VERSION -lt 10 ]; } || { [ $MAJOR_VERSION -eq 1 ] && [ $MINOR_VERSION -lt 7 ]; } then\r\n echo \"VanillaCord is only supported on Minecraft 1.7.10 or higher! You cannot use it with $INSTALLING_VERSION.\"\r\n exit 1\r\nfi\r\n\r\ncurl -o vanillacord.jar $VANILLACORD_URL\r\njava -jar vanillacord.jar $INSTALLING_VERSION\r\n\r\nrm -f vanillacord.jar\r\nrm -rf in\r\nmv out\/*.jar $SERVER_JARFILE\r\nrm -rf out", "container": "openjdk:8-jre-alpine", "entrypoint": "ash" }