From 9de38fbbdd462e88260c9dd9a469f29c05b5e810 Mon Sep 17 00:00:00 2001 From: Michael Parker Date: Tue, 11 Aug 2020 15:30:01 -0400 Subject: [PATCH 1/2] add travertine proxy server. Resolves #644 Adds readme for waterfall too. Basically a find/replace for waterfall. --- minecraft/proxy/travertine/README.md | 10 +++ .../proxy/travertine/egg-travertine.json | 63 +++++++++++++++++++ minecraft/proxy/waterfall/README.md | 10 +++ 3 files changed, 83 insertions(+) create mode 100644 minecraft/proxy/travertine/README.md create mode 100644 minecraft/proxy/travertine/egg-travertine.json diff --git a/minecraft/proxy/travertine/README.md b/minecraft/proxy/travertine/README.md new file mode 100644 index 00000000..8d797744 --- /dev/null +++ b/minecraft/proxy/travertine/README.md @@ -0,0 +1,10 @@ +# Travertine server +Waterfall, with additional support for Minecraft 1.7.10. + +## Server Ports +The minecraft server requires a single port for access (default 25565) but plugins may require extra ports to enabled for the server. + + +| Port | default | +|-------|---------| +| Game | 25565 | \ No newline at end of file diff --git a/minecraft/proxy/travertine/egg-travertine.json b/minecraft/proxy/travertine/egg-travertine.json new file mode 100644 index 00000000..904e4fb9 --- /dev/null +++ b/minecraft/proxy/travertine/egg-travertine.json @@ -0,0 +1,63 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2020-08-11T15:24:12-04:00", + "name": "Travertine", + "author": "parker@parkervcp.com", + "description": "Travertine is a fork of the well-known Waterfall server teleportation suite.", + "image": "quay.io\/pterodactyl\/core:java", + "startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}", + "config": { + "files": "{\r\n \"config.yml\": {\r\n \"parser\": \"yaml\",\r\n \"find\": {\r\n \"listeners[0].host\": \"0.0.0.0:{{server.build.default.port}}\",\r\n \"servers.*.address\": {\r\n \"127.0.0.1\": \"{{config.docker.interface}}\",\r\n \"localhost\": \"{{config.docker.interface}}\"\r\n }\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Listening on \",\r\n \"userInteraction\": [\r\n \"Listening on \/0.0.0.0:\"\r\n ]\r\n}", + "logs": "{\r\n \"custom\": false,\r\n \"location\": \"proxy.log.0\"\r\n}", + "stop": "end" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\n# Paper Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl jq\r\n\r\nmkdir -p \/mnt\/server\/\r\ncd \/mnt\/server\r\n\r\nif [ -n \"${DL_PATH}\" ]; then\r\n echo -e \"using supplied download url\"\r\n DOWNLOAD_URL=`eval echo $(echo ${DL_PATH} | sed -e 's\/{{\/${\/g' -e 's\/}}\/}\/g')`\r\nelse\r\n if [ -z \"$VANILLA_VERSION\" ] || [ \"${MINECRAFT_VERSION}\" == \"latest\" ]; then\r\n echo -e \"getting latest supported mc version and latest paper build\"\r\n MINECRAFT_VERSION=$(curl -s https:\/\/papermc.io\/api\/v1\/travertine | jq -r '.versions[0]')\r\n BUILD_NUMBER=$(curl -sSL https:\/\/papermc.io\/api\/v1\/travertine\/${MINECRAFT_VERSION} | jq -r '.builds.latest')\r\n VER_EXISTS=true\r\n else\r\n echo -e \"checking if version ${MINECRAFT_VERSION} exists\"\r\n VER_EXISTS=$(curl -s https:\/\/papermc.io\/api\/v1\/travertine | jq -r --arg VERSION ${MINECRAFT_VERSION} '.versions[] | contains($VERSION)' | grep true)\r\n fi\r\n \r\n if [ \"${VER_EXISTS}\" == \"true\" ]; then\r\n echo -e \"Version is valid. Using version ${MINECRAFT_VERSION}\"\r\n else\r\n echo -e \"Using the latest travertine version\"\r\n MINECRAFT_VERSION=$(curl -s https:\/\/papermc.io\/api\/v1\/travertine | jq -r '.versions[0]')\r\n fi\r\n \r\n BUILD_EXISTS=$(curl -sSL https:\/\/papermc.io\/api\/v1\/travertine\/${MINECRAFT_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds.all[] | contains($BUILD)' | grep true)\r\n \r\n if [ \"${BUILD_EXISTS}\" == \"true\" ] || [ ${BUILD_NUMBER} == \"latest\" ]; then\r\n echo -e \"Build is valid. Using version ${BUILD_NUMBER}\"\r\n else\r\n echo -e \"Using the latest paper build for version ${MINECRAFT_VERSION}\"\r\n BUILD_NUMBER=$(curl -sSL https:\/\/papermc.io\/api\/v1\/travertine\/${MINECRAFT_VERSION} | jq -r '.builds.latest')\r\n fi\r\n \r\n echo \"Version being downloaded\"\r\n echo -e \"MC Version: ${MINECRAFT_VERSION}\"\r\n echo -e \"Build: ${BUILD_NUMBER}\"\r\n DOWNLOAD_URL=https:\/\/papermc.io\/api\/v1\/travertine\/${MINECRAFT_VERSION}\/${BUILD_NUMBER}\/download \r\nfi\r\n\r\nif [ -z ${SERVER_JARFILE} ]; then\r\n SERVER_JARFILE=server.jar\r\nfi\r\n\r\nif [[ ! $SERVER_JARFILE = *\\.jar ]]; then\r\n SERVER_JARFILE=\"$SERVER_JARFILE.jar\"\r\nfi\r\n\r\necho -e \"running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\r\n\r\ncurl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n\r\nif [ ! -f config.yml ]; then\r\n echo -e \"Downloading travertine config.yml\"\r\n curl -o config.yml https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/proxy\/travertine\/config.yml\r\nelse\r\n echo -e \"Waterfall config.yml exists. Will not pull a new file\"\r\nfi", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Minecraft Version", + "description": "The version of Minecraft that water was built to support.", + "env_variable": "MINECRAFT_VERSION", + "default_value": "latest", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|alpha_num|between:1,6" + }, + { + "name": "Waterfall Jar File", + "description": "The name of the Jarfile to use when running Waterfall.", + "env_variable": "SERVER_JARFILE", + "default_value": "waterfall.jar", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/" + }, + { + "name": "Download Link", + "description": "A link to the server jar to download the waterfall jar.", + "env_variable": "DL_LINK", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "nullable|string" + }, + { + "name": "Waterfall build number", + "description": "Default is latest.\r\n\r\nif set to latest or an invalid version will grab the latest build number.", + "env_variable": "BUILD_NUMBER", + "default_value": "latest", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:20" + } + ] +} \ No newline at end of file diff --git a/minecraft/proxy/waterfall/README.md b/minecraft/proxy/waterfall/README.md index e69de29b..0ca909b9 100644 --- a/minecraft/proxy/waterfall/README.md +++ b/minecraft/proxy/waterfall/README.md @@ -0,0 +1,10 @@ +# Waterfall server +Paper fork of the BungeeCord software, with improved Forge support and more features. + +## Server Ports +The minecraft server requires a single port for access (default 25565) but plugins may require extra ports to enabled for the server. + + +| Port | default | +|-------|---------| +| Game | 25565 | \ No newline at end of file From d0a3e6631a38ab152e7683854d07368c34d3f03d Mon Sep 17 00:00:00 2001 From: Michael Parker Date: Tue, 11 Aug 2020 15:32:17 -0400 Subject: [PATCH 2/2] update generic readmes too --- README.md | 1 + minecraft/README.md | 1 + 2 files changed, 2 insertions(+) diff --git a/README.md b/README.md index 567449cc..c30aa699 100644 --- a/README.md +++ b/README.md @@ -95,6 +95,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [Proxies](/minecraft/proxy/) (these are for the java version of minecraft) * [Waterfall](/minecraft/proxy/waterfall/) * [TyphoonLimbo](/minecraft/proxy/typhoonlimbo/) + * [Travertine](/minecraft/proxy/travertine/) Java * [Velocity](/minecraft/proxy/velocity/) [Red Dead Redemption](/rdr/) diff --git a/minecraft/README.md b/minecraft/README.md index c3b4d80f..06db4c0d 100644 --- a/minecraft/README.md +++ b/minecraft/README.md @@ -27,4 +27,5 @@ It’s set in infinitely-generated worlds of wide open terrain - icy mountains, [Proxies](/minecraft/proxy/) Minecraft Server Proxies * [Waterfall](/minecraft/proxy/waterfall/) Java * [TyphoonLimbo](/minecraft/proxy/typhoonlimbo/) Java +* [Travertine](/minecraft/proxy/travertine/) Java * [Velocity](/minecraft/proxy/velocity/) Java