{
  "meta": {
    "version": "PTDL_v2",
    "update_url": null
  },
  "exported_at": "2026-08-14T17:36:04+00:00",
  "name": "Paper",
  "author": "parker@example.com",
  "description": "Fork de Spigot de alto rendimiento que busca corregir inconsistencias de jugabilidad y mecánicas.",
  "features": [
    "eula",
    "java_version",
    "pid_limit"
  ],
  "container_version_map": [
    {
      "version": "latest",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "26.1.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.11",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.10",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.9",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.8",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.7",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.6",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.5",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.3",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.21",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.20.6",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.20.5",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_21"
    },
    {
      "version": "1.20.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.20.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.20.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.20",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.19.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.19.3",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.19.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.19.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.19",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.18.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.18.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.18",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.17.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_16"
    },
    {
      "version": "1.17",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_16"
    },
    {
      "version": "1.16.5",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.16.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.16.3",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.16.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.16.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.15.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.15.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.15",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.14.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.14.3",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.14.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.14.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.14",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.13.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.13.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.13",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.12.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.12.1",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.12",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.11.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.10.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.9.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.8.8",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    }
  ],
  "file_denylist": [],
  "startup": "java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
  "config": {
    "files": "{\n    \"server.properties\": {\n        \"parser\": \"properties\",\n        \"find\": {\n            \"server-ip\": \"\",\n            \"server-port\": \"{{server.build.default.port}}\",\n            \"query.port\": \"{{server.build.default.port}}\"\n        }\n    }\n}",
    "startup": "{\"done\":\")! For help, type\"}",
    "logs": "{}",
    "stop": "stop"
  },
  "scripts": {
    "installation": {
      "script": "#!/bin/ash\n# Paper Installation Script\n# Server Files: /mnt/server\n\nset -eu\n\nPROJECT=paper\n\nif [ -n \"${DL_PATH}\" ]; then\n  echo \"Using supplied download URL: ${DL_PATH}\"\n  DOWNLOAD_URL=$(eval echo \"$(echo \"${DL_PATH}\" | sed -e 's/{{/${/g' -e 's/}}/}/g')\")\nelse\n  VER_EXISTS=$(curl -s \"https://fill.papermc.io/v3/projects/${PROJECT}\" | jq -r --arg VERSION \"${MINECRAFT_VERSION}\" '.versions | any(.[]; index($VERSION))' | grep -m1 true || true)\n  LATEST_VERSION=$(curl -s \"https://fill.papermc.io/v3/projects/${PROJECT}\" | jq -r '.versions | to_entries | .[0].value[0]')\n\n  if [ \"${VER_EXISTS}\" = \"true\" ]; then\n    echo \"Version is valid. Using version ${MINECRAFT_VERSION}\"\n  else\n    echo \"Specified version not found. Defaulting to the latest ${PROJECT} version\"\n    MINECRAFT_VERSION=${LATEST_VERSION}\n  fi\n\n  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 || true)\n  LATEST_BUILD=$(curl -s \"https://fill.papermc.io/v3/projects/${PROJECT}/versions/${MINECRAFT_VERSION}\" | jq -r '.builds' | jq -r '.[0]')\n\n  if [ \"${BUILD_EXISTS}\" = \"true\" ]; then\n    echo \"Build is valid for version ${MINECRAFT_VERSION}. Using build ${BUILD_NUMBER}\"\n  else\n    echo \"Using the latest ${PROJECT} build for version ${MINECRAFT_VERSION}\"\n    BUILD_NUMBER=${LATEST_BUILD}\n  fi\n\n  echo \"Version being downloaded\"\n  echo \"Project: ${PROJECT}\"\n  echo \"MC Version: ${MINECRAFT_VERSION}\"\n  echo \"Build: ${BUILD_NUMBER}\"\n  DOWNLOAD_URL=$(curl -s \"https://fill.papermc.io/v3/projects/${PROJECT}/versions/${MINECRAFT_VERSION}/builds/${BUILD_NUMBER}\" | jq -r '.downloads.\"server:default\".url')\nfi\n\ncd /mnt/server\n\necho \"Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\n\nif [ -f \"${SERVER_JARFILE}\" ]; then\n  mv \"${SERVER_JARFILE}\" \"${SERVER_JARFILE}.old\"\nfi\n\ncurl -sSL -o \"${SERVER_JARFILE}\" \"${DOWNLOAD_URL}\"\n\nif [ ! -f server.properties ]; then\n  echo \"Downloading MC server.properties\"\n  curl -sSL -o server.properties https://raw.githubusercontent.com/pelican-eggs/minecraft/refs/heads/main/java/server.properties\nfi\n",
      "container": "ghcr.io/pelican-eggs/installers:alpine",
      "entrypoint": "ash"
    }
  },
  "variables": [
    {
      "name": "Build Number",
      "description": "Número de compilación de la versión de Paper. Déjalo en latest para obtener siempre la versión más reciente.",
      "env_variable": "BUILD_NUMBER",
      "default_value": "latest",
      "user_viewable": true,
      "user_editable": true,
      "rules": "required|string|max:20",
      "field_type": "text",
      "source": "user"
    },
    {
      "name": "Download Path",
      "description": "URL para descargar un server.jar alternativo al del script de instalación. Esta variable no es visible para el usuario.",
      "env_variable": "DL_PATH",
      "default_value": "",
      "user_viewable": false,
      "user_editable": false,
      "rules": "nullable|string",
      "field_type": "text",
      "source": "user"
    },
    {
      "name": "Minecraft Version",
      "description": "Versión de Minecraft a descargar. Déjala en latest para obtener siempre la más nueva.",
      "env_variable": "MINECRAFT_VERSION",
      "default_value": "latest",
      "user_viewable": true,
      "user_editable": true,
      "rules": "nullable|string|in:latest,26.1.1,1.21.11,1.21.10,1.21.9,1.21.8,1.21.7,1.21.6,1.21.5,1.21.4,1.21.3,1.21.1,1.21,1.20.6,1.20.5,1.20.4,1.20.2,1.20.1,1.20,1.19.4,1.19.3,1.19.2,1.19.1,1.19,1.18.2,1.18.1,1.18,1.17.1,1.17,1.16.5,1.16.4,1.16.3,1.16.2,1.16.1,1.15.2,1.15.1,1.15,1.14.4,1.14.3,1.14.2,1.14.1,1.14,1.13.2,1.13.1,1.13,1.12.2,1.12.1,1.12,1.11.2,1.10.2,1.9.4,1.8.8",
      "field_type": "select",
      "source": "user",
      "defines_version": true
    },
    {
      "name": "Server Jar File",
      "description": "Nombre del archivo JAR con el que se ejecutará el servidor.",
      "env_variable": "SERVER_JARFILE",
      "default_value": "server.jar",
      "user_viewable": true,
      "user_editable": true,
      "rules": "required|regex:/^([\\w\\d._-]+)(\\.jar)$/",
      "field_type": "text",
      "source": "user"
    }
  ]
}
