forged-eggs/java/paper/egg-paper.yaml

144 lines
17 KiB
YAML
Raw Normal View History

_comment: 'DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL'
meta:
version: PLCN_v3
update_url: 'https://raw.githubusercontent.com/pelican-eggs/minecraft/refs/heads/main/java/paper/egg-paper.yaml'
exported_at: '2026-04-21T18:27:54+00:00'
name: Paper
author: parker@example.com
uuid: 5da37ef6-58da-4169-90a6-e683e1721247
description: 'High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies.'
image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAk/ElEQVR42uxdbW9U19Wdn+Cf4O+tGpI4gGt7xjZg3gJ+wQR4StQhCIxap8aEhjhAsKMG10AzYBOSYmIHwosKon4gTiKgBAQERBqwAZWHpqIuaRpEUWSEIrVfHp2ePfXNnpl9x/vem5m5587dW1qK+oHaY9217t5rr3MmIhXO+tff66ZojGvEI1JSUuGpFPIrQD5EoPbNv5REpKSkjCpKfkQ8V8TXSGiMiwhISfldPPmpCHgn/xSNMQ01gaGIlJQUUyaQHxH3SP5ODWWDtREpKSkfCslfguR3hE4XxC/VGEHCE4xrlEakpKQKXEj+EQ3lEoMOyL92guCKwUhESkrKKuPJr25dqFIH335ycBKjb0hDuUBnxGPtuVoV1xA/QUoq3+R//NdZ6uJwOZDfwmAG+Rvwre8aUzwQf0xDTUAyC1JS+SL//T/VquFDzyD5EYO43nNP/Jrtt9Uz60+qH/y0d0yjhCF9iUanxriGysBYREpKKvfkv/vHmPrdvqeA7AS9bzWquYlRT2/96R1n1A9feBvIbyHhivgUDREpKanckf/62UqL7AQv9W1VXohfseWS+tGqfiC8HapTiF/qiPiIcxEpKSkv5Kfz/qmjU7O+9Zt3nnFN/MrXr6onf34QyW6P8XWHl03RZB7UUB5QHZGSkmLIz8z7v99fZkv+jr6Nak5i1BXxY7++qcraj3PEV9Nbu9Uv9j+fldzSBUhJ5Zn8d65Ebef9gT2V6ic7T7g2+KZt+Jglfuyl17MSX7oAKanCkN9a8RG8sXs1+9bnDT6Kulc3q41DTXYEli5ASirv5Md531rxkbd+y65+LwafD8QnkIixVPjKLfm/HK2xbfl3vLVcLUxczqnBt6h7HRI//xiMSEmFqZD8riK9/HqPN/hY4vf8YQ6QsmDYdbFKdZ2Ieu4C/r9+SalGXGNQQzwFKbOLkJ+P9PLrPd7gM4r4O85G1WvHo6p9IKZa30li0CPhxzRUChIRKSlTiyE/E+nF9V4uDL6nVv9Grdi9piDE77tcpXpOR9Wmo1HV1m+RnqDUNeEp5MSilJnFkJ+N9L6zpw7Xe/ycjwZfFuInLtTmvbX/1XBUdRyJWgTnMMgQ3inkCjMpY4qSn4/0el7vRd+4Bgafb8R/83xVsrVfvx+JzeG1RK06sHmOutZSP04I7w1yzkDKz+LJz0d6cb23YtdhbwYfTe3lAdjatw+4I/yVny1UD5c2EwJ7gfgAUiYVT34+0ovrPd7ggzm/AMTHeX7rx85b++5tM9WxV+ap0dUNOSO8+ABSxheS332k98XeXexbv3zTeSB+XuO62NrDPE9ae5bw3zY/lxNSiw8gFahC8rORXma9xxh8eUzt9Zy2VnWBILz4AFJcGUJ+jPTSUA9v8OWF+NjaW6u6wBFefAAppvwmP4308us9NPjyENfFVd2Gg4EnvPgAUkz5Tn4a6d2yux3We5zBx6T2vK3q2geKivAEESkpKH/JTyO9dL3HG3w88b2n8HZunaU+XD9f/XlFo7Fk9gI5FyBlAvkx0ovrPXjrMwYfE9flW3trVRcmwmeiMyIl5Qv5aaQX3vq43qNzPhh8TGqPb+27TsCqLrSEz4RcNiLlA/kx0kvXe3TOB4OPJT6fwhPCiw8gBeU3+THSi+s91uCjqT0+hdfWX5yEH5/XpP45tyENf6tboP5vxjyCi5UzCD6cHlX/O7XSgvgAUoUgP4304nqPGnww51Pi8ym8X/bVGEP4fy9YjCRF2BL1WqyOEPWTihogaL4hPoBUIciPkV56JTcafE+sec9BXBcvzHh1b7X6bdds9UnbAvXl84ty+lb9x+x6t2/VIEJ8AL+qqqoqoXGumLB0cXSstSWmMrH6haha0vzjJBoXzVLRxlVpqFoYV+V1TUnEnl2gFsWrsmL+kio1tzmqmupj6sXama7xPxVVghTk+BmQhKHTmviDKYGgiCAdhQiAIMQQARABEIQYIgAiAIIQQwTg+wjAjBkz1KxZswQC46GfVRGAXAsA/GFnz54tEBgP/ayKAIgACMIKEQARAEGIIQIgAiAIMUQARAAEIYYIgAiAIMQQARABEIQYIgAiAIIQQwRABEAQYogAiAAIQgwRABEAQYghAiACIAgxRABEAAQhhgiACIAgxBAB8FBwDbNGp8Y5uI9NBEAQVIgAMKVvmy3RqNbo1DinkXYjqwiAIMgQAbAnfINGQmNEQ6VCBEBQTAi9ALCEp4D740UABEWBUAoAtPSE8M4BXyIhAiAoCoRVABIWmUUABGFGWAUgLgIgEIRXAEpFAASCkArAhAiMiQAIwo4wC8CgRwGAb5cVARAUBcIsAHERAEHYEWYBKBUBEPiFdevWqbNnz6r79++rx48fA5L/u6mpSQQgWQb7ACIAAq9oaWlRV65csUiPQBEQAfhvmesDiAAI3ALe7EeOHEGyZ8Ht27fV4sWLk89RXV2dCICJPsDf6haIAAgco7e3F1t9BwKwbNky9fTTT6uysjIQAREA03yAf85tEAEQOJrzb968CcR2jBs3bqiGhgYQgCQqKipEAPLtA4gACHKJ5cuXwyxPyM3h0aNH6vPPP08S38L06dNFAPLtA4gACHI157/77rtAZk948OCBGhoaShOAqVOnigDk2wcQARB8X3R3d6u7d+8CkT3j3r17at++fdIBYJnpA4zPaxIBEFhzPlnrecWdO3dUZ2cnEF88gO/KUB9ABCDcgHb/5MmTHKldG4ArV65MFQB4nkQA8lWt78RKNQavtdSPiwAIHALmfG6t59UAxA3ABGpra0UAcl1dJ6JJ4msowIHNc5QIgIDDpk2b+DnfuwGIGwAEPEsiALmqPVerSjUGd12sShLfwmuJWhEAwWRrPZzz84SxsTHcACAkCZgj4ldrnNNQFtoHgPyIh0ubRQAEXuK7uTIA7TYAIgC5JT7itePRNAG48rOFrgTgk4oaEYAihoP4bq4NQLIBqKysFAHwSPwGJL49dpxFAUAfwNWtQCIARQiH8d18GIBkAxCNRkUAXBI/rjGmoZygrT/NBxABCDEcxnfzZwDabwBEAFyQf0hDucGmo9FMH0AEIGRwGN/NtwFotwGQ48Ae3v7KDXpOpwvA6OoGEYAQAeK7zJxfMAPw8OHDmWcA5EIQt0XafwZ9l9PXgcdemedYAK7F6kQAAgoS3/UZ169fV319fZkbABGAQnQBHUewC+jeNtPNrUAiAAEDzPkY3zUD33zzDbT/uAHACLAIQCG6gF8Np48B3zY/JwJQZIA5n8R3DcHXX3+dFADrFiALNTU1IgAeBaDTjQBAKjDDBxABKCI4iO+aYACC4UciwH4JwNLF0bF//b2uJBLE0qQu0Rh3IwLr96f5ACIARYCJ23eNJX7KHYB2GwBfbwVubYkpLQAjQRYBrgugqUD0AUQAAoyJY7rGEt7GAMQNABqAJghAcEXAbRfw5vkq6gPwtwKJAITgmG4BDEDcAGAE2AQBCLwIsF0AORyEPoAIQIBg+pzPGIBkA1BdXW2CAARbBKALcJ0KRB9ABCAA0Gu9QMz5jAFINgAzZswwQQCKQgQGXaUC0QcQATAYE8d0jSW2KwOQbgB8/2qw1S9EgfDBF4F1h5dNcd4FEB9ABECO6ebbAGS+B8AfAVjS/GN150rAReAHP+2t1hj/xf7nPaQCeR/g3wsWiwAUNr4byDmfMQBxA4AGoBEC8Lt9T6n7f6oNngho0pdoJDQUYHprt2MB2PqxKx9ABEDm/O9rAOIGAA1A3wWgcdEsdfDtJ9Xv95epx3+dFRwRqH3zL1M06cc0VCpIF8AfDgIfQARA5vx8G4C4AUAD0HcBiDauUh19G5MicOroVCC7+SKgyd+poZ5Zf1JlCkDspdfdpQLRBxABCPEx3bwbgHQDAJ/fCAGYkxhV7+ypS4rA9bOV5oqAJn2pxoiGAtRsv61++MLbRAQ2DjU5PxyEPoAIQJFfx+UTgPxkAzBt2jRjBAC49JOdJ0AAkrj7x5hBIoDkX6sxrqFSMb3jDBGAulc3u0wF8j7A6
tags:
- minecraft
features:
- eula
- java_version
- pid_limit
docker_images:
'Java 25': 'ghcr.io/pelican-eggs/yolks:java_25'
'Java 21': 'ghcr.io/pelican-eggs/yolks:java_21'
'Java 17': 'ghcr.io/pelican-eggs/yolks:java_17'
'Java 16': 'ghcr.io/pelican-eggs/yolks:java_16'
'Java 11': 'ghcr.io/pelican-eggs/yolks:java_11'
'Java 8': 'ghcr.io/pelican-eggs/yolks:java_8'
file_denylist: { }
startup_commands:
Default: 'java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}'
config:
files:
server.properties:
parser: properties
find:
server-ip: ''
server-port: '{{server.allocations.default.port}}'
query.port: '{{server.allocations.default.port}}'
startup:
done: ')! For help, type '
logs: { }
stop: stop
scripts:
installation:
script: |-
#!/bin/ash
# Paper Installation Script
#
# Server Files: /mnt/server
PROJECT=paper
if [ -n "${DL_PATH}" ]; then
echo -e "Using supplied download url: ${DL_PATH}"
DOWNLOAD_URL=`eval echo $(echo ${DL_PATH} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
else
VER_EXISTS=`curl -s https://fill.papermc.io/v3/projects/${PROJECT} | jq -r --arg VERSION $MINECRAFT_VERSION '.versions | any(.[]; index($VERSION))' | grep -m1 true`
LATEST_VERSION=`curl -s https://fill.papermc.io/v3/projects/${PROJECT} | jq -r '.versions | to_entries | .[0].value[0]'`
if [ "${VER_EXISTS}" == "true" ]; then
echo -e "Version is valid. Using version ${MINECRAFT_VERSION}"
else
echo -e "Specified version not found. Defaulting to the latest ${PROJECT} version"
MINECRAFT_VERSION=${LATEST_VERSION}
fi
BUILD_EXISTS=`curl -s https://fill.papermc.io/v3/projects/${PROJECT}/versions/${MINECRAFT_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep -m1 true`
LATEST_BUILD=`curl -s https://fill.papermc.io/v3/projects/${PROJECT}/versions/${MINECRAFT_VERSION} | jq -r '.builds' | jq -r '.[0]'`
if [ "${BUILD_EXISTS}" == "true" ]; then
echo -e "Build is valid for version ${MINECRAFT_VERSION}. Using build ${BUILD_NUMBER}"
else
echo -e "Using the latest ${PROJECT} build for version ${MINECRAFT_VERSION}"
BUILD_NUMBER=${LATEST_BUILD}
fi
echo "Version being downloaded"
echo -e "Project: ${PROJECT}"
echo -e "MC Version: ${MINECRAFT_VERSION}"
echo -e "Build: ${BUILD_NUMBER}"
DOWNLOAD_URL=`curl -s https://fill.papermc.io/v3/projects/${PROJECT}/versions/${MINECRAFT_VERSION}/builds/${BUILD_NUMBER} | jq -r '.downloads."server:default".url'`
fi
cd /mnt/server
echo -e "Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}"
if [ -f ${SERVER_JARFILE} ]; then
mv ${SERVER_JARFILE} ${SERVER_JARFILE}.old
fi
curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}
if [ ! -f server.properties ]; then
echo -e "Downloading MC server.properties"
curl -o server.properties https://raw.githubusercontent.com/pelican-eggs/minecraft/refs/heads/main/java/server.properties
fi
container: 'ghcr.io/pelican-eggs/installers:alpine'
entrypoint: ash
variables:
-
name: 'Build Number'
description: "The build number for the paper 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'
sort: 4
-
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
sort: 3
-
name: 'Minecraft Version'
description: "The version of minecraft to download. \r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest."
env_variable: MINECRAFT_VERSION
default_value: latest
user_viewable: true
user_editable: true
rules:
- nullable
- string
- 'max:20'
sort: 1
-
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: true
user_editable: true
rules:
- required
- 'regex:/^([\w\d._-]+)(\.jar)$/'
sort: 2