{
  "meta": {
    "version": "PTDL_v2",
    "update_url": null
  },
  "exported_at": "2026-08-19T16:57:41+00:00",
  "name": "Forge",
  "author": "panel@example.com",
  "description": "Servidor de Minecraft Forge. Forge es una API de modding para Minecraft que facilita la instalación y gestión de mods. Este egg permite configurar un servidor con Forge eligiendo versiones de Minecraft y tipo de compilación.",
  "features": [
    "eula",
    "java_version",
    "pid_limit"
  ],
  "container_version_map": [
    {
      "version": "latest",
      "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.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_17"
    },
    {
      "version": "1.20.3",
      "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.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.13.2",
      "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.11",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.10.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.10",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.9.4",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.9",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.8.9",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.8.8",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.8",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.7.10",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    },
    {
      "version": "1.7.2",
      "docker_image": "ghcr.io/pelican-eggs/yolks:java_8"
    }
  ],
  "file_denylist": [],
  "startup": "java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true $( [ ! -f unix_args.txt ] && printf %s \"-jar {{SERVER_JARFILE}}\" || printf %s \"@unix_args.txt\" )",
  "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/bash\n\nset -euo pipefail\n\nsource /usr/local/lib/egg-utils.sh\negg_init\n\nsanitize_version FORGE_VERSION\nsanitize_version MC_VERSION\n\nforge_install \"${MC_VERSION}\" \"${FORGE_VERSION}\" \"${SERVER_JARFILE}\" \"${BUILD_TYPE}\"\n\nmkdir -p logs\necho \"eula=true\" > eula.txt\nchmod -R 777 .\n",
      "container": "ghcr.io/enderhost/installers:java21",
      "entrypoint": "bash"
    }
  },
  "variables": [
    {
      "name": "Build Type",
      "description": "Tipo de JAR del servidor a descargar desde Forge. Los valores válidos son \"recommended\" y \"latest\".",
      "env_variable": "BUILD_TYPE",
      "default_value": "recommended",
      "user_viewable": false,
      "user_editable": false,
      "rules": "required|string|in:recommended,latest",
      "field_type": "select",
      "source": "user"
    },
    {
      "name": "Minecraft Version",
      "description": "Versión de Minecraft a instalar. Elige una versión compatible con tu entorno de Java.",
      "env_variable": "MC_VERSION",
      "default_value": "latest",
      "user_viewable": true,
      "user_editable": true,
      "rules": "required|string|in:latest,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.4,1.20.3,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.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.13.2,1.12.2,1.12.1,1.12,1.11.2,1.11,1.10.2,1.10,1.9.4,1.9,1.8.9,1.8.8,1.8,1.7.10,1.7.2",
      "field_type": "select",
      "source": "user",
      "defines_version": true
    },
    {
      "name": "Server Jar File",
      "description": "Nombre del archivo JAR usado al ejecutar versiones de Forge anteriores a 1.17.",
      "env_variable": "SERVER_JARFILE",
      "default_value": "server.jar",
      "user_viewable": false,
      "user_editable": false,
      "rules": "required|regex:/^([\\w\\d._-]+)(\\.jar)$/",
      "field_type": "text",
      "source": "user"
    },
    {
      "name": "Forge Version",
      "description": "Versión exacta completa, por ejemplo 1.15.2-31.2.4. Sobrescribe MC_VERSION y BUILD_TYPE.",
      "env_variable": "FORGE_VERSION",
      "default_value": "",
      "user_viewable": true,
      "user_editable": true,
      "rules": "nullable|regex:/^[0-9.\\-]+$/",
      "field_type": "text",
      "source": "user"
    }
  ]
}
