first commit

This commit is contained in:
Chillcog committed 2026-07-03 05:00:02 -07:00
commit 21788ba270
643 files changed
+45536

No files matched your search

+12
View File
@@ -0,0 +1,12 @@
# Minecraft Proxies
* [Java](/game_eggs/minecraft/proxy/java/)
* [Travertine](/game_eggs/minecraft/proxy/java/travertine)
* [Velocity](/game_eggs/minecraft/proxy/java/velocity)
* [VIAaaS](/game_eggs/minecraft/proxy/java/viaaas)
* [Waterfall](/game_eggs/minecraft/proxy/java/waterfall)
* [Bedrock](/game_eggs/minecraft/proxy/bedrock)
* [Waterdog PE](/game_eggs/minecraft/proxy/bedrock/waterdogpe)
* [Cross Platform](/game_eggs/minecraft/proxy/cross_platform)
* [GeyserMC](/game_eggs/minecraft/proxy/cross_platform/geyser)
* [Waterdog](/game_eggs/minecraft/proxy/cross_platform/waterdog)
@@ -0,0 +1,6 @@
# Mineraft Bedrock Proxies
## Waterdog PE
[Waterdog PE](https://github.com/WaterdogPE/WaterdogPE)
WaterdogPE is a brand new Minecraft: Bedrock Edition proxy software developed by the developers of the old Waterdog Proxy.
@@ -0,0 +1,9 @@
# Waterdog PE
Brand new proxy server for Minecraft: Bedrock Edition
## Server Ports
| Port | default |
|----------|---------|
| server | 19132 |
@@ -0,0 +1,70 @@
# Waterdog Main Configuration file
# Configure your desired network settings here.
# A list of all downstream servers that are available right after starting
# address field is formatted using ip:port
# publicAddress is optional and can be set to the ip players can directly connect through
servers:
lobby1:
address: 127.0.0.1:19133
public_address: play.myserver.com:19133
listener:
# The Motd which will be displayed in the server tab of a player and returned during ping
motd: §bWaterdog§3PE
# The server priority list. If not changed by plugins, the proxy will connect the player to the first of those servers
priorities:
- lobby1
# The address to bind the server to
host: 0.0.0.0:19132
# The maximum amount of players that can connect to this proxy instance
max_players: 20
# Map the ip a player joined through to a specific server
# for example skywars.xyz.com => SkyWars-1
# when a player connects using skywars-xyz.com as the serverIp, he will be connected to SkyWars-1 directly
forced_hosts: {}
# Case-Sensitive permission list for players (empty using {})
permissions:
TobiasDev:
- waterdog.player.transfer
- waterdog.player.list
alemiz003:
- waterdog.player.transfer
- waterdog.player.list
# List of permissions each player should get by default (empty using [])
permissions_default:
- waterdog.command.help
- waterdog.command.info
# Whether the debug output in the console should be enabled or not
enable_debug: false
# If enabled, encrypted connection between client and proxy will be created
upstream_encryption: true
# If enabled, only players which are authenticated with XBOX Live can join. If disabled, anyone can connect *with any name*
online_mode: true
# If enabled, the proxy will be able to bind to an Ipv6 Address
enable_ipv6: false
# If enabled, the proxy will pass information like XUID or IP to the downstream server using custom fields in the LoginPacket
use_login_extras: true
# Replaces username spaces with underscores if enabled
replace_username_spaces: false
# Whether server query should be enabled
enable_query: true
# If enabled, when receiving a McpeTransferPacket, the proxy will check if the target server is in the downstream list, and if yes, use the fast transfer mechanism
prefer_fast_transfer: true
# Fast-codec only decodes the packets required by the proxy, everything else will be passed rawly. Disabling this can create a performance hit
use_fast_codec: true
# If enabled, the proxy will inject all the proxy commands in the AvailableCommandsPacket, enabling autocompletion
inject_proxy_commands: true
# Upstream server compression ratio(proxy to client), higher = less bandwidth, more cpu, lower vice versa
upstream_compression_level: 6
# Upstream server compression ratio(proxy to downstream server), higher = less bandwidth, more cpu, lower vice versa
downstream_compression_level: 2
# Education features require small adjustments to work correctly. Enable this option if any of downstream servers support education features.
enable_edu_features: false
# Enable/Disable the resource pack system
enable_packs: true
# Whether texture packs should be enforced
force_apply_packs: false
# You can set maximum pack size in MB to be cached.
pack_cache_size: 16
# Creating threads may be in some situations expensive. Specify minimum count of idle threads per internal thread executors. Set to -1 to auto-detect by core count.
default_idle_threads: -1
@@ -0,0 +1,59 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-04-02T11:21:58+02:00",
"name": "Waterdog PE",
"author": "parker@pterodactyl.io",
"description": "Brand new proxy server for Minecraft: Bedrock Edition",
"features": [
"eula",
"java_version",
"pid_limit"
],
"docker_images": {
"ghcr.io\/parkervcp\/yolks:java_17": "ghcr.io\/parkervcp\/yolks:java_17",
"ghcr.io\/parkervcp\/yolks:java_16": "ghcr.io\/parkervcp\/yolks:java_16",
"ghcr.io\/parkervcp\/yolks:java_11": "ghcr.io\/parkervcp\/yolks:java_11",
"ghcr.io\/parkervcp\/yolks:java_8": "ghcr.io\/parkervcp\/yolks:java_8"
},
"file_denylist": [],
"startup": "java -Dterminal.ansi=true -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"Started query on \"\r\n}",
"logs": "{}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n\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# Adding '.jar' if it isn't part of the file name\r\nif [[ \"${SERVER_JARFILE}\" == \"*\\.jar\" ]]; then\r\n echo -e \"adding.jar to server file name\"\r\n SERVER_JARFILE=\"${SERVER_JARFILE}.jar\"\r\nfi\r\n\r\nif [ -z \"${WATERDOG_VERSION}\" ] || [ \"${WATERDOG_VERSION}\" == \"latest\" ]; then\r\n echo -e \"downloading latest waterdog pe build\\n\"\r\n curl -sSL -o ${SERVER_JARFILE} https:\/\/jenkins.waterdog.dev\/job\/Waterdog\/job\/WaterdogPE\/job\/release\/lastSuccessfulBuild\/artifact\/target\/Waterdog.jar\r\nelse \r\n echo -e \"downloading waterdog pe build ${WATERDOG_VERSION}\\n\"\r\n curl -sSL -o ${SERVER_JARFILE} https:\/\/jenkins.waterdog.dev\/job\/Waterdog\/job\/WaterdogPE\/job\/release\/${WATERDOG_VERSION}\/artifact\/target\/Waterdog.jar\r\nfi\r\n\r\nif [ ! -f config.yml ]; then\r\n echo -e \"Downloading waterdog pe config.yml\"\r\n curl -o config.yml https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/minecraft\/proxy\/bedrock\/waterdog_pe\/config.yml\r\nelse\r\n echo -e \"Waterfall config.yml exists. Will not pull a new file\"\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Waterdog PE Version",
"description": "The build to pull and install. (Ex. 23), or set to latest\r\n\r\nThis is the build number on https:\/\/jenkins.waterdog.dev\/",
"env_variable": "WATERDOG_VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "Server Jar File",
"description": "The jar to run to",
"env_variable": "SERVER_JARFILE",
"default_value": "server.jar",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
}
]
}
@@ -0,0 +1,13 @@
# Mineraft Cross Platform Proxies
## [GeyserMC](geyser)
[GeyserMC](https://github.com/GeyserMC)
A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock edition.
## [Waterdog](waterdog)
[Waterdog](https://github.com/WaterdogPE/Waterdog)
Waterdog provides native support for the Minecraft Bedrock protocols along with the existing java protocols. It is capable of using the ProtocolSupport PE encapsulation protocol over TCP, or it can use the native RakNet Bedrock protocol for traditional downstream Bedrock servers such as Nukkit, Pocketmine, Bedrock Alpha Server, MiNET, and others.
@@ -0,0 +1,7 @@
# Geyser
A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock edition.
## Eggs
GeyserMC maintains their own eggs on their github: [GeyserMC pterodactyl eggs](https://github.com/GeyserMC/pterodactyl-stuff)
@@ -0,0 +1,12 @@
# Waterdog server
Waterdog provides native support for the Minecraft Bedrock protocols along with the existing java protocols. It is capable of using the ProtocolSupport PE encapsulation protocol over TCP, or it can use the native RakNet Bedrock protocol for traditional downstream Bedrock servers such as Nukkit, Pocketmine, Bedrock Alpha Server, MiNET, and others.
## 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 |
|----------|---------|
| Java | 25565 |
| Bedrock | 19132 |
@@ -0,0 +1,59 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-04-02T11:24:09+02:00",
"name": "Waterdog",
"author": "parker@pterodactyl.io",
"description": "Waterdog is fork of the well-known Waterfall, which is a fork of the well-known BungeeCord, server teleportation suite.",
"features": [
"eula",
"java_version",
"pid_limit"
],
"docker_images": {
"ghcr.io\/parkervcp\/yolks:java_17": "ghcr.io\/parkervcp\/yolks:java_17",
"ghcr.io\/parkervcp\/yolks:java_16": "ghcr.io\/parkervcp\/yolks:java_16",
"ghcr.io\/parkervcp\/yolks:java_11": "ghcr.io\/parkervcp\/yolks:java_11",
"ghcr.io\/parkervcp\/yolks:java_8": "ghcr.io\/parkervcp\/yolks:java_8"
},
"file_denylist": [],
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"Listening on \"\r\n}",
"logs": "{}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\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# Adding '.jar' if it isn't part of the file name\r\nif [[ \"${SERVER_JARFILE}\" == \"*\\.jar\" ]]; then\r\n echo -e \"adding.jar to server file name\"\r\n SERVER_JARFILE=\"${SERVER_JARFILE}.jar\"\r\nfi\r\n\r\nif [ -z \"${WATERDOG_VERSION}\" ] || [ \"${WATERDOG_VERSION}\" == \"latest\" ]; then\r\n echo -e \"downloading latest waterdog build\\n\"\r\n curl -sSL -o ${SERVER_JARFILE} https:\/\/jenkins.waterdog.dev\/job\/Waterdog\/job\/Waterdog\/job\/master-zlib\/lastSuccessfulBuild\/artifact\/Waterfall-Proxy\/bootstrap\/target\/Waterdog.jar\r\nelse \r\n echo -e \"downloading waterdog build ${WATERDOG_VERSION}\\n\"\r\n curl -sSL -o ${SERVER_JARFILE} https:\/\/jenkins.waterdog.dev\/job\/Waterdog\/job\/Waterdog\/job\/master-zlib\/${WATERDOG_VERSION}\/artifact\/Waterfall-Proxy\/bootstrap\/target\/Waterdog.jar\r\nfi\r\n\r\nif [ ! -f config.yml ]; then\r\n echo -e \"Downloading waterfall config.yml\"\r\n curl -o config.yml https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/minecraft\/proxy\/java\/waterfall\/config.yml\r\nelse\r\n echo -e \"Waterfall config.yml exists. Will not pull a new file\"\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Waterdog Version",
"description": "The build to pull and install. (Ex. 23), or set to latest\r\n\r\nThis is the build number on https:\/\/jenkins.waterdog.dev\/",
"env_variable": "WATERDOG_VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "Server Jar File",
"description": "The jar to run to",
"env_variable": "SERVER_JARFILE",
"default_value": "server.jar",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
}
]
}
+17
View File
@@ -0,0 +1,17 @@
# Minecraft Java Proxies
#### Travertine
[Travertine](https://papermc.io/downloads#Travertine)
Waterfall, with additional support for Minecraft 1.7.10.
#### Velocity
[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.
@@ -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 |
@@ -0,0 +1,79 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-04-02T11:25:36+02:00",
"name": "Travertine",
"author": "parker@parkervcp.com",
"description": "Travertine is a fork of Waterfall with 1.7 protocol support. Waterfall is a fork of the well-known BungeeCord server teleportation suite.",
"features": [
"eula",
"java_version",
"pid_limit"
],
"docker_images": {
"ghcr.io\/parkervcp\/yolks:java_17": "ghcr.io\/parkervcp\/yolks:java_17",
"ghcr.io\/parkervcp\/yolks:java_16": "ghcr.io\/parkervcp\/yolks:java_16",
"ghcr.io\/parkervcp\/yolks:java_11": "ghcr.io\/parkervcp\/yolks:java_11",
"ghcr.io\/parkervcp\/yolks:java_8": "ghcr.io\/parkervcp\/yolks:java_8"
},
"file_denylist": [],
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -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}",
"logs": "{}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# Travertine Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nPROJECT=travertine\r\n\r\nif [ -n \"${DL_PATH}\" ]; then\r\n\techo -e \"Using supplied download url: ${DL_PATH}\"\r\n\tDOWNLOAD_URL=`eval echo $(echo ${DL_PATH} | sed -e 's\/{{\/${\/g' -e 's\/}}\/}\/g')`\r\nelse\r\n\tVER_EXISTS=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT} | jq -r --arg VERSION $MINECRAFT_VERSION '.versions[] | contains($VERSION)' | grep true`\r\n\tLATEST_VERSION=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT} | jq -r '.versions' | jq -r '.[-1]'`\r\n\r\n\tif [ \"${VER_EXISTS}\" == \"true\" ]; then\r\n\t\techo -e \"Version is valid. Using version ${MINECRAFT_VERSION}\"\r\n\telse\r\n\t\techo -e \"Using the latest ${PROJECT} version\"\r\n\t\tMINECRAFT_VERSION=${LATEST_VERSION}\r\n\tfi\r\n\t\r\n\tBUILD_EXISTS=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep true`\r\n\tLATEST_BUILD=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION} | jq -r '.builds' | jq -r '.[-1]'`\r\n\t\r\n\tif [ \"${BUILD_EXISTS}\" == \"true\" ]; then\r\n\t\techo -e \"Build is valid for version ${MINECRAFT_VERSION}. Using build ${BUILD_NUMBER}\"\r\n\telse\r\n\t\techo -e \"Using the latest ${PROJECT} build for version ${MINECRAFT_VERSION}\"\r\n\t\tBUILD_NUMBER=${LATEST_BUILD}\r\n\tfi\r\n\t\r\n\tJAR_NAME=${PROJECT}-${MINECRAFT_VERSION}-${BUILD_NUMBER}.jar\r\n\t\r\n\techo \"Version being downloaded\"\r\n\techo -e \"MC Version: ${MINECRAFT_VERSION}\"\r\n\techo -e \"Build: ${BUILD_NUMBER}\"\r\n\techo -e \"JAR Name of Build: ${JAR_NAME}\"\r\n\tDOWNLOAD_URL=https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION}\/builds\/${BUILD_NUMBER}\/downloads\/${JAR_NAME}\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\necho -e \"Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\r\n\r\nif [ -f ${SERVER_JARFILE} ]; then\r\n\tmv ${SERVER_JARFILE} ${SERVER_JARFILE}.old\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"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": true,
"user_editable": true,
"rules": "required|alpha_num|between:1,6",
"field_type": "text"
},
{
"name": "Travertine Jar File",
"description": "The name of the jar file to use when running Travertine.",
"env_variable": "SERVER_JARFILE",
"default_value": "travertine.jar",
"user_viewable": true,
"user_editable": true,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
"field_type": "text"
},
{
"name": "Download Link",
"description": "A link to the server jar to download the Travertine jar.",
"env_variable": "DL_LINK",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "Travertine 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": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
}
]
}
@@ -0,0 +1,10 @@
# Velocity Minecraft Proxy
Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility.
## 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 |
@@ -0,0 +1,80 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-02-13T17:26:13+0000",
"name": "Velocity",
"author": "parker@parkervcp.com",
"description": "Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility.",
"features": [
"eula",
"java_version",
"pid_limit"
],
"docker_images": {
"Java 21": "ghcr.io\/pterodactyl\/yolks:java_21",
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8"
},
"file_denylist": [],
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar {{SERVER_JARFILE}}",
"config": {
"files": "{\r\n \"velocity.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"bind = \": \"bind = \\\"0.0.0.0:{{server.build.default.port}}\\\"\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Done (\"\r\n}",
"logs": "{}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nPROJECT=velocity\r\n\r\nif [[ -z ${VELOCITY_VERSION} ]] || [[ ${VELOCITY_VERSION} == \"latest\" ]]; then\r\n VELOCITY_VERSION=\"latest\"\r\nfi\r\n\r\nif [[ -n \"${DOWNLOAD_LINK}\" ]]; then\r\n echo -e \"Using supplied download url: ${DOWNLOAD_LINK}\"\r\n DOWNLOAD_URL=$(eval echo $(echo ${DL_PATH} | sed -e 's\/{{\/${\/g' -e 's\/}}\/}\/g'))\r\nelse\r\n VER_EXISTS=$(curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT} | jq -r --arg VERSION $VELOCITY_VERSION '.versions[] | contains($VERSION)' | grep true)\r\n LATEST_VERSION=$(curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT} | jq -r '.versions' | jq -r '.[-1]')\r\n\r\nif [[ \"${VER_EXISTS}\" == \"true\" ]]; then\r\n echo -e \"Version is valid. Using version ${VELOCITY_VERSION}\"\r\nelse\r\n echo -e \"Using the latest ${PROJECT} version\"\r\n VELOCITY_VERSION=${LATEST_VERSION}\r\nfi\r\n\r\nBUILD_EXISTS=$(curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${VELOCITY_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep true)\r\nLATEST_BUILD=$(curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${VELOCITY_VERSION} | jq -r '.builds' | jq -r '.[-1]')\r\n\r\nif [[ \"${BUILD_EXISTS}\" == \"true\" ]]; then\r\n echo -e \"Build is valid for version ${VELOCITY_VERSION}. Using build ${BUILD_NUMBER}\"\r\nelse\r\n echo -e \"Using the latest ${PROJECT} build for version ${VELOCITY_VERSION}\"\r\n BUILD_NUMBER=${LATEST_BUILD}\r\nfi\r\n\r\nJAR_NAME=${PROJECT}-${VELOCITY_VERSION}-${BUILD_NUMBER}.jar\r\necho \"Version being downloaded\"\r\necho -e \"Velocity Version: ${VELOCITY_VERSION}\"\r\necho -e \"Build: ${BUILD_NUMBER}\"\r\necho -e \"JAR Name of Build: ${JAR_NAME}\"\r\nDOWNLOAD_URL=https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${VELOCITY_VERSION}\/builds\/${BUILD_NUMBER}\/downloads\/${JAR_NAME}\r\n\r\nfi\r\ncd \/mnt\/server\r\necho -e \"Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\r\n\r\nif [[ -f ${SERVER_JARFILE} ]]; then\r\nmv ${SERVER_JARFILE} ${SERVER_JARFILE}.old\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n\r\nif [[ -f velocity.toml ]]; then\r\n echo -e \"velocity config file exists\"\r\nelse\r\n echo -e \"downloading velocity config file.\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/minecraft\/proxy\/java\/velocity\/velocity.toml -o velocity.toml\r\nfi\r\n\r\nif [[ -f forwarding.secret ]]; then\r\n echo -e \"velocity forwarding secret file already exists\"\r\nelse\r\n echo -e \"creating forwarding secret file\"\r\n touch forwarding.secret\r\n date +%s | sha256sum | base64 | head -c 12 > forwarding.secret\r\nfi\r\n\r\necho -e \"install complete\"",
"container": "ghcr.io\/parkervcp\/installers:alpine",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Velocity Version",
"description": "The Velocity Proxy version to download.\r\n\r\nSet to 'latest ' the download the last stable build.",
"env_variable": "VELOCITY_VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": false,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "Server Jar File",
"description": "Server Jarfile, by default this is set to 'velocity.jar'.\r\nSet it to otherwise if you wish to have a different jarfile name.",
"env_variable": "SERVER_JARFILE",
"default_value": "velocity.jar",
"user_viewable": true,
"user_editable": false,
"rules": "required|string|max:32|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
"field_type": "text"
},
{
"name": "Download Path",
"description": "A URL to use to download a server.jar rather than the ones in the install script. This is not user viewable.",
"env_variable": "DL_PATH",
"default_value": "",
"user_viewable": false,
"user_editable": false,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "Build Number",
"description": "The build number for the velocity release.\r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.",
"env_variable": "BUILD_NUMBER",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
}
]
}
@@ -0,0 +1,155 @@
# Config version. Do not change this
config-version = "2.6"
# What port should the proxy be bound to? By default, we'll bind to all addresses on port 25577.
bind = "0.0.0.0:25577"
# What should be the MOTD? This gets displayed when the player adds your server to
# their server list. Only MiniMessage format is accepted.
motd = "<#09add3>A Velocity Server"
# What should we display for the maximum number of players? (Velocity does not support a cap
# on the number of players online.)
show-max-players = 500
# Should we authenticate players with Mojang? By default, this is on.
online-mode = true
# Should the proxy enforce the new public key security standard? By default, this is on.
force-key-authentication = true
# If client's ISP/AS sent from this proxy is different from the one from Mojang's
# authentication server, the player is kicked. This disallows some VPN and proxy
# connections but is a weak form of protection.
prevent-client-proxy-connections = false
# Should we forward IP addresses and other data to backend servers?
# Available options:
# - "none": No forwarding will be done. All players will appear to be connecting
# from the proxy and will have offline-mode UUIDs.
# - "legacy": Forward player IPs and UUIDs in a BungeeCord-compatible format. Use this
# if you run servers using Minecraft 1.12 or lower.
# - "bungeeguard": Forward player IPs and UUIDs in a format supported by the BungeeGuard
# plugin. Use this if you run servers using Minecraft 1.12 or lower, and are
# unable to implement network level firewalling (on a shared host).
# - "modern": Forward player IPs and UUIDs as part of the login process using
# Velocity's native forwarding. Only applicable for Minecraft 1.13 or higher.
player-info-forwarding-mode = "NONE"
# If you are using modern or BungeeGuard IP forwarding, configure a file that contains a unique secret here.
# The file is expected to be UTF-8 encoded and not empty.
forwarding-secret-file = "forwarding.secret"
# Announce whether or not your server supports Forge. If you run a modded server, we
# suggest turning this on.
#
# If your network runs one modpack consistently, consider using ping-passthrough = "mods"
# instead for a nicer display in the server list.
announce-forge = false
# If enabled (default is false) and the proxy is in online mode, Velocity will kick
# any existing player who is online if a duplicate connection attempt is made.
kick-existing-players = false
# Should Velocity pass server list ping requests to a backend server?
# Available options:
# - "disabled": No pass-through will be done. The velocity.toml and server-icon.png
# will determine the initial server list ping response.
# - "mods": Passes only the mod list from your backend server into the response.
# The first server in your try list (or forced host) with a mod list will be
# used. If no backend servers can be contacted, Velocity won't display any
# mod information.
# - "description": Uses the description and mod list from the backend server. The first
# server in the try (or forced host) list that responds is used for the
# description and mod list.
# - "all": Uses the backend server's response as the proxy response. The Velocity
# configuration is used if no servers could be contacted.
ping-passthrough = "DISABLED"
# If not enabled (default is true) player IP addresses will be replaced by <ip address withheld> in logs
enable-player-address-logging = true
[servers]
# Configure your servers here. Each key represents the server's name, and the value
# represents the IP address of the server to connect to.
lobby = "172.18.0.1:30066"
factions = "172.18.0.1:30067"
minigames = "172.18.0.1:30068"
# In what order we should try servers when a player logs in or is kicked from a server.
try = [
"lobby"
]
[forced-hosts]
# Configure your forced hosts here.
"lobby.example.com" = [
"lobby"
]
"factions.example.com" = [
"factions"
]
"minigames.example.com" = [
"minigames"
]
[advanced]
# How large a Minecraft packet has to be before we compress it. Setting this to zero will
# compress all packets, and setting it to -1 will disable compression entirely.
compression-threshold = 256
# How much compression should be done (from 0-9). The default is -1, which uses the
# default level of 6.
compression-level = -1
# How fast (in milliseconds) are clients allowed to connect after the last connection? By
# default, this is three seconds. Disable this by setting this to 0.
login-ratelimit = 3000
# Specify a custom timeout for connection timeouts here. The default is five seconds.
connection-timeout = 5000
# Specify a read timeout for connections here. The default is 30 seconds.
read-timeout = 30000
# Enables compatibility with HAProxy's PROXY protocol. If you don't know what this is for, then
# don't enable it.
haproxy-protocol = false
# Enables TCP fast open support on the proxy. Requires the proxy to run on Linux.
tcp-fast-open = false
# Enables BungeeCord plugin messaging channel support on Velocity.
bungee-plugin-message-channel = true
# Shows ping requests to the proxy from clients.
show-ping-requests = false
# By default, Velocity will attempt to gracefully handle situations where the user unexpectedly
# loses connection to the server without an explicit disconnect message by attempting to fall the
# user back, except in the case of read timeouts. BungeeCord will disconnect the user instead. You
# can disable this setting to use the BungeeCord behavior.
failover-on-unexpected-server-disconnect = true
# Declares the proxy commands to 1.13+ clients.
announce-proxy-commands = true
# Enables the logging of commands
log-command-executions = false
# Enables logging of player connections when connecting to the proxy, switching servers
# and disconnecting from the proxy.
log-player-connections = true
[query]
# Whether to enable responding to GameSpy 4 query responses or not.
enabled = false
# If query is enabled, on what port should the query protocol listen on?
port = 25577
# This is the map name that is reported to the query services.
map = "Velocity"
# Whether plugins should be shown in query response by default or not
show-plugins = false
@@ -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 |
@@ -0,0 +1,59 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-04-02T11:26:33+02:00",
"name": "VIAaaS",
"author": "regulad@outlook.com",
"description": "VIAaaS - ViaVersion as a Service - Standalone ViaVersion proxy",
"features": [
"eula",
"java_version",
"pid_limit"
],
"docker_images": {
"ghcr.io\/parkervcp\/yolks:java_17": "ghcr.io\/parkervcp\/yolks:java_17",
"ghcr.io\/parkervcp\/yolks:java_16": "ghcr.io\/parkervcp\/yolks:java_16",
"ghcr.io\/parkervcp\/yolks:java_11": "ghcr.io\/parkervcp\/yolks:java_11",
"ghcr.io\/parkervcp\/yolks:java_8": "ghcr.io\/parkervcp\/yolks:java_8"
},
"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 in \"\r\n}",
"logs": "{}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# VIAaaS Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\ncd \/mnt\/server\r\nwget -O ${SERVER_JARFILE} \"https:\/\/jitpack.io\/com\/github\/ViaVersion\/VIAaaS\/master-SNAPSHOT\/VIAaaS-master-SNAPSHOT-all.jar\"\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:alpine",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "VIAaaS JAR File",
"description": "The name of the JAR file 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",
"field_type": "text"
},
{
"name": "Web Server Port",
"description": "The port to listen to web server connections on.",
"env_variable": "WEBSERVER_PORT",
"default_value": "25543",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
}
]
}
@@ -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 |
@@ -0,0 +1,3 @@
listeners:
- query_port: 25573
host: 0.0.0.0:25573
@@ -0,0 +1,79 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2023-07-24T09:28:42-04:00",
"name": "Waterfall",
"author": "hostmaster@waterfallgaming.net",
"description": "Waterfall is a fork of the well-known BungeeCord server teleportation suite.",
"features": [
"eula",
"java_version",
"pid_limit"
],
"docker_images": {
"ghcr.io\/pterodactyl\/yolks:java_17": "ghcr.io\/pterodactyl\/yolks:java_17",
"ghcr.io\/pterodactyl\/yolks:java_16": "ghcr.io\/pterodactyl\/yolks:java_16",
"ghcr.io\/pterodactyl\/yolks:java_11": "ghcr.io\/pterodactyl\/yolks:java_11",
"ghcr.io\/pterodactyl\/yolks:java_8": "ghcr.io\/pterodactyl\/yolks:java_8"
},
"file_denylist": [],
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -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}",
"logs": "{}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# Waterfall Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nPROJECT=waterfall\r\n\r\napt update\r\napt install -y curl jq\r\n\r\nif [ -n \"${DL_LINK}\" ]; then\r\n\techo -e \"Using supplied download url: ${DL_LINK}\"\r\n\tDOWNLOAD_URL=`eval echo $(echo ${DL_LINK} | sed -e 's\/{{\/${\/g' -e 's\/}}\/}\/g')`\r\nelse\r\n\tVER_EXISTS=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT} | jq -r --arg VERSION $MINECRAFT_VERSION '.versions[] | contains($VERSION)' | grep true`\r\n\tLATEST_VERSION=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT} | jq -r '.versions' | jq -r '.[-1]'`\r\n\r\n\tif [ \"${VER_EXISTS}\" == \"true\" ]; then\r\n\t\techo -e \"Version is valid. Using version ${MINECRAFT_VERSION}\"\r\n\telse\r\n\t\techo -e \"Using the latest ${PROJECT} version\"\r\n\t\tMINECRAFT_VERSION=${LATEST_VERSION}\r\n\tfi\r\n\t\r\n\tBUILD_EXISTS=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep true`\r\n\tLATEST_BUILD=`curl -s https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION} | jq -r '.builds' | jq -r '.[-1]'`\r\n\t\r\n\tif [ \"${BUILD_EXISTS}\" == \"true\" ]; then\r\n\t\techo -e \"Build is valid for version ${MINECRAFT_VERSION}. Using build ${BUILD_NUMBER}\"\r\n\telse\r\n\t\techo -e \"Using the latest ${PROJECT} build for version ${MINECRAFT_VERSION}\"\r\n\t\tBUILD_NUMBER=${LATEST_BUILD}\r\n\tfi\r\n\t\r\n\tJAR_NAME=${PROJECT}-${MINECRAFT_VERSION}-${BUILD_NUMBER}.jar\r\n\t\r\n\techo \"Version being downloaded\"\r\n\techo -e \"MC Version: ${MINECRAFT_VERSION}\"\r\n\techo -e \"Build: ${BUILD_NUMBER}\"\r\n\techo -e \"JAR Name of Build: ${JAR_NAME}\"\r\n\tDOWNLOAD_URL=https:\/\/papermc.io\/api\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION}\/builds\/${BUILD_NUMBER}\/downloads\/${JAR_NAME}\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\necho -e \"Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\r\n\r\nif [ -f ${SERVER_JARFILE} ]; then\r\n\tmv ${SERVER_JARFILE} ${SERVER_JARFILE}.old\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n\r\nif [ ! -f config.yml ]; then\r\n\techo -e \"Downloading ${PROJECT} config.yml\"\r\n\tcurl -o config.yml https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/minecraft\/proxy\/java\/waterfall\/config.yml\r\nelse\r\n\techo -e \"${PROJECT} config.yml exists. Will not pull a new file\"\r\nfi",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Minecraft Version",
"description": "The version of Minecraft that Waterfall was built to support.",
"env_variable": "MINECRAFT_VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required|alpha_num|between:1,6",
"field_type": "text"
},
{
"name": "Waterfall Jar File",
"description": "The name of the jar file to use when running Waterfall.",
"env_variable": "SERVER_JARFILE",
"default_value": "waterfall.jar",
"user_viewable": true,
"user_editable": true,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
"field_type": "text"
},
{
"name": "Download Link",
"description": "A link to the server jar to download the Waterfall jar.",
"env_variable": "DL_LINK",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"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": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
}
]
}