GET https://redix-hosting.com/

HTTP Client

1 Total requests
0 HTTP errors

Clients

http_client 1

Requests

GET https://panel.redix-hosting.com/api/application/nests
Request options
[
  "headers" => [
    "Authorization" => "Bearer ptla_AucqwauC7A8n8MF4T3OW5bHSFXnYJ2E4AEmti9iQvIB"
    "Content-Type" => "application/json"
    "Accept" => "application/json"
  ]
  "query" => [
    "include" => "eggs"
    "per_page" => 100
  ]
]
Response 200
[
  "info" => [
    "header_size" => 460
    "request_size" => 286
    "total_time" => 0.644937
    "namelookup_time" => 0.011645
    "connect_time" => 0.102605
    "pretransfer_time" => 0.212005
    "size_download" => 144339.0
    "speed_download" => 223803.0
    "starttransfer_time" => 0.398278
    "primary_ip" => "167.114.98.123"
    "primary_port" => 443
    "local_ip" => "85.239.155.43"
    "local_port" => 50842
    "http_version" => 3
    "protocol" => 2
    "scheme" => "HTTPS"
    "appconnect_time_us" => 211903
    "connect_time_us" => 102605
    "namelookup_time_us" => 11645
    "pretransfer_time_us" => 212005
    "starttransfer_time_us" => 398278
    "total_time_us" => 644937
    "effective_method" => "GET"
    "start_time" => 1772698729.9287
    "original_url" => "https://panel.redix-hosting.com/api/application/nests?include=eggs&per_page=100"
    "pause_handler" => Closure(float $duration) {#1130
      class: "Symfony\Component\HttpClient\Response\CurlResponse"
      use: {
        $ch: CurlHandle {#1123 …}
        $multi: Symfony\Component\HttpClient\Internal\CurlClientState {#582 …}
        $execCounter: -9223372036854775808
      }
    }
    "debug" => """
      *   Trying 167.114.98.123:443...\n
      * Connected to panel.redix-hosting.com (167.114.98.123) port 443 (#0)\n
      * ALPN, offering h2\n
      * ALPN, offering http/1.1\n
      *  CAfile: /etc/ssl/certs/ca-certificates.crt\n
      *  CApath: /etc/ssl/certs\n
      * SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384\n
      * ALPN, server accepted to use h2\n
      * Server certificate:\n
      *  subject: CN=panel.redix-hosting.com\n
      *  start date: Feb 25 22:16:06 2026 GMT\n
      *  expire date: May 26 22:16:05 2026 GMT\n
      *  subjectAltName: host "panel.redix-hosting.com" matched cert's "panel.redix-hosting.com"\n
      *  issuer: C=US; O=Let's Encrypt; CN=R12\n
      *  SSL certificate verify ok.\n
      * Using HTTP2, server supports multiplexing\n
      * Connection state changed (HTTP/2 confirmed)\n
      * Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0\n
      * Using Stream ID: 1 (easy handle 0x55639d3d61d0)\n
      > GET /api/application/nests?include=eggs&per_page=100 HTTP/2\r\n
      Host: panel.redix-hosting.com\r\n
      authorization: Bearer ptla_AucqwauC7A8n8MF4T3OW5bHSFXnYJ2E4AEmti9iQvIB\r\n
      content-type: application/json\r\n
      accept: application/json\r\n
      user-agent: Symfony HttpClient (Curl)\r\n
      accept-encoding: gzip\r\n
      \r\n
      * old SSL session ID is stale, removing\n
      * Connection state changed (MAX_CONCURRENT_STREAMS == 128)!\n
      < HTTP/2 200 \r\n
      < server: nginx/1.18.0 (Ubuntu)\r\n
      < content-type: application/json\r\n
      < cache-control: no-cache, private\r\n
      < date: Thu, 05 Mar 2026 08:18:50 GMT\r\n
      < x-ratelimit-limit: 240\r\n
      < x-ratelimit-remaining: 239\r\n
      < access-control-allow-origin: \r\n
      < access-control-allow-credentials: true\r\n
      < x-content-type-options: nosniff\r\n
      < x-xss-protection: 1; mode=block\r\n
      < x-robots-tag: none\r\n
      < content-security-policy: frame-ancestors 'self'\r\n
      < x-frame-options: DENY\r\n
      < referrer-policy: same-origin\r\n
      < \r\n
      """
  ]
  "url" => "https://panel.redix-hosting.com/api/application/nests?include=eggs&per_page=100"
  "response_headers" => [
    "HTTP/2 200 "
    "server: nginx/1.18.0 (Ubuntu)"
    "content-type: application/json"
    "cache-control: no-cache, private"
    "date: Thu, 05 Mar 2026 08:18:50 GMT"
    "x-ratelimit-limit: 240"
    "x-ratelimit-remaining: 239"
    "access-control-allow-origin: "
    "access-control-allow-credentials: true"
    "x-content-type-options: nosniff"
    "x-xss-protection: 1; mode=block"
    "x-robots-tag: none"
    "content-security-policy: frame-ancestors 'self'"
    "x-frame-options: DENY"
    "referrer-policy: same-origin"
  ]
  "response_json" => [
    "object" => "list"
    "data" => [
      [
        "object" => "nest"
        "attributes" => [
          "id" => 1
          "uuid" => "c1ddd376-b1c5-4091-ab13-6fec08423ccc"
          "author" => "[email protected]"
          "name" => "Minecraft"
          "description" => "Minecraft - the classic game from Mojang. With support for Vanilla MC, Spigot, and many others!"
          "created_at" => "2024-02-29T17:15:20+00:00"
          "updated_at" => "2024-02-29T17:15:20+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 1
                    "uuid" => "45c22a5c-f808-48e7-a830-c928217df043"
                    "name" => "Paper"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:java_21"
                    "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"
                    ]
                    "config" => [
                      "files" => [
                        "server.properties" => [
                          "parser" => "properties"
                          "find" => [
                            "server-ip" => "0.0.0.0"
                            "server-port" => "{{server.build.default.port}}"
                            "query.port" => "{{server.build.default.port}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => ")! For help, type "
                      ]
                      "stop" => "stop"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/ash\r\n
                        # Paper Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        PROJECT=paper\r\n
                        \r\n
                        if [ -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\n
                        else\r\n
                        \tVER_EXISTS=`curl -s https://api.papermc.io/v2/projects/${PROJECT} | jq -r --arg VERSION $MINECRAFT_VERSION '.versions[] | contains($VERSION)' | grep -m1 true`\r\n
                        \tLATEST_VERSION=`curl -s https://api.papermc.io/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 "Specified version not found. Defaulting to the latest ${PROJECT} version"\r\n
                        \t\tMINECRAFT_VERSION=${LATEST_VERSION}\r\n
                        \tfi\r\n
                        \r\n
                        \tBUILD_EXISTS=`curl -s https://api.papermc.io/v2/projects/${PROJECT}/versions/${MINECRAFT_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep -m1 true`\r\n
                        \tLATEST_BUILD=`curl -s https://api.papermc.io/v2/projects/${PROJECT}/versions/${MINECRAFT_VERSION} | jq -r '.builds' | jq -r '.[-1]'`\r\n
                        \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
                        \r\n
                        \tJAR_NAME=${PROJECT}-${MINECRAFT_VERSION}-${BUILD_NUMBER}.jar\r\n
                        \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://api.papermc.io/v2/projects/${PROJECT}/versions/${MINECRAFT_VERSION}/builds/${BUILD_NUMBER}/downloads/${JAR_NAME}\r\n
                        fi\r\n
                        \r\n
                        cd /mnt/server\r\n
                        \r\n
                        echo -e "Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}"\r\n
                        \r\n
                        if [ -f ${SERVER_JARFILE} ]; then\r\n
                        \tmv ${SERVER_JARFILE} ${SERVER_JARFILE}.old\r\n
                        fi\r\n
                        \r\n
                        curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n
                        \r\n
                        if [ ! -f server.properties ]; then\r\n
                            echo -e "Downloading MC server.properties"\r\n
                            curl -o server.properties https://raw.githubusercontent.com/parkervcp/eggs/master/minecraft/java/server.properties\r\n
                        fi
                        """
                      "entry" => "ash"
                      "container" => "ghcr.io/pterodactyl/installers:alpine"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-11-18T00:13:42+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 2
                    "uuid" => "082e57c1-4bc1-4f6a-be09-9851be95a125"
                    "name" => "Sponge (SpongeVanilla)"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "SpongeVanilla is the SpongeAPI implementation for Vanilla Minecraft."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:java_21"
                    "docker_images" => [
                      "Java 21" => "ghcr.io/pterodactyl/yolks:java_21"
                      "Java 16" => "ghcr.io/pterodactyl/yolks:java_16"
                      "Java 11" => "ghcr.io/pterodactyl/yolks:java_11"
                      "Java 8" => "ghcr.io/pterodactyl/yolks:java_8"
                    ]
                    "config" => [
                      "files" => [
                        "server.properties" => [
                          "parser" => "properties"
                          "find" => [
                            "server-ip" => "0.0.0.0"
                            "server-port" => "{{server.build.default.port}}"
                            "query.port" => "{{server.build.default.port}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => ")! For help, type "
                      ]
                      "stop" => "stop"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "java -Xms128M -XX:MaxRAMPercentage=95.0 -jar {{SERVER_JARFILE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/ash\r\n
                        # Sponge Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        cd /mnt/server\r\n
                        \r\n
                        curl -sSL "https://repo.spongepowered.org/maven/org/spongepowered/spongevanilla/${SPONGE_VERSION}/spongevanilla-${SPONGE_VERSION}.jar" -o ${SERVER_JARFILE}
                        """
                      "entry" => "ash"
                      "container" => "ghcr.io/pterodactyl/installers:alpine"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-12-19T21:29:13+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 3
                    "uuid" => "72ff7a5c-afb5-4d1b-ad57-2e8460f794f4"
                    "name" => "Bungeecord"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "For a long time, Minecraft server owners have had a dream that encompasses a free, easy, and reliable way to connect multiple Minecraft servers together. BungeeCord is the answer to said dream. Whether you are a small server wishing to string multiple game-modes together, or the owner of the ShotBow Network, BungeeCord is the ideal solution for you. With the help of BungeeCord, you will be able to unlock your community's full potential."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:java_21"
                    "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"
                    ]
                    "config" => [
                      "files" => [
                        "config.yml" => [
                          "parser" => "yaml"
                          "find" => [
                            "listeners[0].query_port" => "{{server.build.default.port}}"
                            "listeners[0].host" => "0.0.0.0:{{server.build.default.port}}"
                            "servers.*.address" => [
                              "regex:^(127\.0\.0\.1|localhost)(:\d{1,5})?$" => "{{config.docker.interface}}$2"
                            ]
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Listening on "
                      ]
                      "stop" => "end"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "java -Xms128M -XX:MaxRAMPercentage=95.0 -jar {{SERVER_JARFILE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/ash\r\n
                        # Bungeecord Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        cd /mnt/server\r\n
                        \r\n
                        if [ -z "${BUNGEE_VERSION}" ] || [ "${BUNGEE_VERSION}" == "latest" ]; then\r\n
                            BUNGEE_VERSION="lastStableBuild"\r\n
                        fi\r\n
                        \r\n
                        curl -o ${SERVER_JARFILE} https://ci.md-5.net/job/BungeeCord/${BUNGEE_VERSION}/artifact/bootstrap/target/BungeeCord.jar
                        """
                      "entry" => "ash"
                      "container" => "ghcr.io/pterodactyl/installers:alpine"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-12-19T21:29:13+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 4
                    "uuid" => "459f6a93-1b83-4715-8a40-84f05744828e"
                    "name" => "Vanilla Minecraft"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "Minecraft is a game about placing blocks and going on adventures. Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles. Play in Creative Mode with unlimited resources or mine deep in Survival Mode, crafting weapons and armor to fend off dangerous mobs. Do all this alone or with friends."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:java_21"
                    "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"
                    ]
                    "config" => [
                      "files" => [
                        "server.properties" => [
                          "parser" => "properties"
                          "find" => [
                            "server-ip" => "0.0.0.0"
                            "server-port" => "{{server.build.default.port}}"
                            "query.port" => "{{server.build.default.port}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => ")! For help, type "
                      ]
                      "stop" => "stop"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "java -Xms128M -XX:MaxRAMPercentage=95.0 -jar {{SERVER_JARFILE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/ash\r\n
                        # Vanilla MC Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        mkdir -p /mnt/server\r\n
                        cd /mnt/server\r\n
                        \r\n
                        LATEST_VERSION=`curl https://launchermeta.mojang.com/mc/game/version_manifest.json | jq -r '.latest.release'`\r\n
                        LATEST_SNAPSHOT_VERSION=`curl https://launchermeta.mojang.com/mc/game/version_manifest.json | jq -r '.latest.snapshot'`\r\n
                        \r\n
                        echo -e "latest version is $LATEST_VERSION"\r\n
                        echo -e "latest snapshot is $LATEST_SNAPSHOT_VERSION"\r\n
                        \r\n
                        if [ -z "$VANILLA_VERSION" ] || [ "$VANILLA_VERSION" == "latest" ]; then\r\n
                          MANIFEST_URL=$(curl -sSL https://launchermeta.mojang.com/mc/game/version_manifest.json | jq --arg VERSION $LATEST_VERSION -r '.versions | .[] | select(.id== $VERSION )|.url')\r\n
                        elif [ "$VANILLA_VERSION" == "snapshot" ]; then\r\n
                          MANIFEST_URL=$(curl -sSL https://launchermeta.mojang.com/mc/game/version_manifest.json | jq --arg VERSION $LATEST_SNAPSHOT_VERSION -r '.versions | .[] | select(.id== $VERSION )|.url')\r\n
                        else\r\n
                          MANIFEST_URL=$(curl -sSL https://launchermeta.mojang.com/mc/game/version_manifest.json | jq --arg VERSION $VANILLA_VERSION -r '.versions | .[] | select(.id== $VERSION )|.url')\r\n
                        fi\r\n
                        \r\n
                        DOWNLOAD_URL=$(curl ${MANIFEST_URL} | jq .downloads.server | jq -r '. | .url')\r\n
                        \r\n
                        echo -e "running: curl -o ${SERVER_JARFILE} $DOWNLOAD_URL"\r\n
                        curl -o ${SERVER_JARFILE} $DOWNLOAD_URL\r\n
                        \r\n
                        echo -e "Install Complete"
                        """
                      "entry" => "ash"
                      "container" => "ghcr.io/pterodactyl/installers:alpine"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-11-13T15:32:32+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 5
                    "uuid" => "1c667ae6-b3f9-438b-a7b6-83040573d7a4"
                    "name" => "Forge Minecraft"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "Minecraft Forge Server. Minecraft Forge is a modding API (Application Programming Interface), which makes it easier to create mods, and also make sure mods are compatible with each other."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:java_21"
                    "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"
                    ]
                    "config" => [
                      "files" => [
                        "server.properties" => [
                          "parser" => "properties"
                          "find" => [
                            "server-ip" => "0.0.0.0"
                            "server-port" => "{{server.build.default.port}}"
                            "query.port" => "{{server.build.default.port}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => ")! For help, type "
                      ]
                      "stop" => "stop"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "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" )"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # Forge Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        apt update\r\n
                        apt install -y curl jq\r\n
                        \r\n
                        if [[ ! -d /mnt/server ]]; then\r\n
                          mkdir /mnt/server\r\n
                        fi\r\n
                        \r\n
                        cd /mnt/server\r\n
                        \r\n
                        # Remove spaces from the version number to avoid issues with curl\r\n
                        FORGE_VERSION="$(echo "$FORGE_VERSION" | tr -d ' ')"\r\n
                        MC_VERSION="$(echo "$MC_VERSION" | tr -d ' ')"\r\n
                        \r\n
                        if [[ ! -z ${FORGE_VERSION} ]]; then\r\n
                          DOWNLOAD_LINK=https://maven.minecraftforge.net/net/minecraftforge/forge/${FORGE_VERSION}/forge-${FORGE_VERSION}\r\n
                          FORGE_JAR=forge-${FORGE_VERSION}*.jar\r\n
                        else\r\n
                          JSON_DATA=$(curl -sSL https://files.minecraftforge.net/maven/net/minecraftforge/forge/promotions_slim.json)\r\n
                        \r\n
                          if [[ "${MC_VERSION}" == "latest" ]] || [[ "${MC_VERSION}" == "" ]]; then\r\n
                            echo -e "getting latest version of forge."\r\n
                            MC_VERSION=$(echo -e ${JSON_DATA} | jq -r '.promos | del(."latest-1.7.10") | del(."1.7.10-latest-1.7.10") | to_entries[] | .key | select(contains("latest")) | split("-")[0]' | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n | tail -1)\r\n
                            BUILD_TYPE=latest\r\n
                          fi\r\n
                        \r\n
                          if [[ "${BUILD_TYPE}" != "recommended" ]] && [[ "${BUILD_TYPE}" != "latest" ]]; then\r\n
                            BUILD_TYPE=recommended\r\n
                          fi\r\n
                        \r\n
                          echo -e "minecraft version: ${MC_VERSION}"\r\n
                          echo -e "build type: ${BUILD_TYPE}"\r\n
                        \r\n
                          ## some variables for getting versions and things\r\n
                          FILE_SITE=https://maven.minecraftforge.net/net/minecraftforge/forge/\r\n
                          VERSION_KEY=$(echo -e ${JSON_DATA} | jq -r --arg MC_VERSION "${MC_VERSION}" --arg BUILD_TYPE "${BUILD_TYPE}" '.promos | del(."latest-1.7.10") | del(."1.7.10-latest-1.7.10") | to_entries[] | .key | select(contains($MC_VERSION)) | select(contains($BUILD_TYPE))')\r\n
                        \r\n
                          ## locating the forge version\r\n
                          if [[ "${VERSION_KEY}" == "" ]] && [[ "${BUILD_TYPE}" == "recommended" ]]; then\r\n
                            echo -e "dropping back to latest from recommended due to there not being a recommended version of forge for the mc version requested."\r\n
                            VERSION_KEY=$(echo -e ${JSON_DATA} | jq -r --arg MC_VERSION "${MC_VERSION}" '.promos | del(."latest-1.7.10") | del(."1.7.10-latest-1.7.10") | to_entries[] | .key | select(contains($MC_VERSION)) | select(contains("latest"))')\r\n
                          fi\r\n
                        \r\n
                          ## Error if the mc version set wasn't valid.\r\n
                          if [ "${VERSION_KEY}" == "" ] || [ "${VERSION_KEY}" == "null" ]; then\r\n
                            echo -e "The install failed because there is no valid version of forge for the version of minecraft selected."\r\n
                            exit 1\r\n
                          fi\r\n
                        \r\n
                          FORGE_VERSION=$(echo -e ${JSON_DATA} | jq -r --arg VERSION_KEY "$VERSION_KEY" '.promos | .[$VERSION_KEY]')\r\n
                        \r\n
                          if [[ "${MC_VERSION}" == "1.7.10" ]] || [[ "${MC_VERSION}" == "1.8.9" ]]; then\r\n
                            DOWNLOAD_LINK=${FILE_SITE}${MC_VERSION}-${FORGE_VERSION}-${MC_VERSION}/forge-${MC_VERSION}-${FORGE_VERSION}-${MC_VERSION}\r\n
                            FORGE_JAR=forge-${MC_VERSION}-${FORGE_VERSION}-${MC_VERSION}.jar\r\n
                            if [[ "${MC_VERSION}" == "1.7.10" ]]; then\r\n
                              FORGE_JAR=forge-${MC_VERSION}-${FORGE_VERSION}-${MC_VERSION}-universal.jar\r\n
                            fi\r\n
                          else\r\n
                            DOWNLOAD_LINK=${FILE_SITE}${MC_VERSION}-${FORGE_VERSION}/forge-${MC_VERSION}-${FORGE_VERSION}\r\n
                            FORGE_JAR=forge-${MC_VERSION}-${FORGE_VERSION}.jar\r\n
                          fi\r\n
                        fi\r\n
                        \r\n
                        #Adding .jar when not eding by SERVER_JARFILE\r\n
                        if [[ ! $SERVER_JARFILE = *\.jar ]]; then\r\n
                          SERVER_JARFILE="$SERVER_JARFILE.jar"\r\n
                        fi\r\n
                        \r\n
                        #Downloading jars\r\n
                        echo -e "Downloading forge version ${FORGE_VERSION}"\r\n
                        echo -e "Download link is ${DOWNLOAD_LINK}"\r\n
                        \r\n
                        if [[ ! -z "${DOWNLOAD_LINK}" ]]; then\r\n
                          if curl --output /dev/null --silent --head --fail ${DOWNLOAD_LINK}-installer.jar; then\r\n
                            echo -e "installer jar download link is valid."\r\n
                          else\r\n
                            echo -e "link is invalid. Exiting now"\r\n
                            exit 2\r\n
                          fi\r\n
                        else\r\n
                          echo -e "no download link provided. Exiting now"\r\n
                          exit 3\r\n
                        fi\r\n
                        \r\n
                        curl -s -o installer.jar -sS ${DOWNLOAD_LINK}-installer.jar\r\n
                        \r\n
                        #Checking if downloaded jars exist\r\n
                        if [[ ! -f ./installer.jar ]]; then\r\n
                          echo "!!! Error downloading forge version ${FORGE_VERSION} !!!"\r\n
                          exit\r\n
                        fi\r\n
                        \r\n
                        function  unix_args {\r\n
                          echo -e "Detected Forge 1.17 or newer version. Setting up forge unix args."\r\n
                          ln -sf libraries/net/minecraftforge/forge/*/unix_args.txt unix_args.txt\r\n
                        }\r\n
                        \r\n
                        # Delete args to support downgrading/upgrading\r\n
                        rm -rf libraries/net/minecraftforge/forge\r\n
                        rm unix_args.txt\r\n
                        \r\n
                        #Installing server\r\n
                        echo -e "Installing forge server.\n"\r\n
                        java -jar installer.jar --installServer || { echo -e "\nInstall failed using Forge version ${FORGE_VERSION} and Minecraft version ${MINECRAFT_VERSION}.\nShould you be using unlimited memory value of 0, make sure to increase the default install resource limits in the Wings config or specify exact allocated memory in the server Build Configuration instead of 0! \nOtherwise, the Forge installer will not have enough memory."; exit 4; }\r\n
                        \r\n
                        # Check if we need a symlink for 1.17+ Forge JPMS args\r\n
                        if [[ $MC_VERSION =~ ^1\.(17|18|19|20|21|22|23) || $FORGE_VERSION =~ ^1\.(17|18|19|20|21|22|23) ]]; then\r\n
                          unix_args\r\n
                        \r\n
                        # Check if someone has set MC to latest but overwrote it with older Forge version, otherwise we would have false positives\r\n
                        elif [[ $MC_VERSION == "latest" && $FORGE_VERSION =~ ^1\.(17|18|19|20|21|22|23) ]]; then\r\n
                          unix_args\r\n
                        else\r\n
                          # For versions below 1.17 that ship with jar\r\n
                          mv $FORGE_JAR $SERVER_JARFILE\r\n
                        fi\r\n
                        \r\n
                        echo -e "Deleting installer.jar file.\n"\r\n
                        rm -rf installer.jar\r\n
                        echo -e "Installation process is completed"
                        """
                      "entry" => "bash"
                      "container" => "openjdk:8-jdk-slim"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-12-19T21:29:13+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 17
                    "uuid" => "b6add83a-2b77-4415-b4f0-362d3b073bfd"
                    "name" => "SpongeVanilla"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "SpongeVanilla is the implementation of the Sponge API on top of Vanilla Minecraft."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:java_17"
                    "docker_images" => [
                      "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"
                    ]
                    "config" => [
                      "files" => [
                        "server.properties" => [
                          "parser" => "properties"
                          "find" => [
                            "server-ip" => "0.0.0.0"
                            "server-port" => "{{server.build.default.port}}"
                            "query.port" => "{{server.build.default.port}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => ")! For help, type "
                        "userInteraction" => [
                          "Go to eula.txt for more info."
                        ]
                      ]
                      "stop" => "stop"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # spongeVanilla Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        apt update\r\n
                        apt install -y jq curl\r\n
                        \r\n
                        mkdir -p /mnt/server\r\n
                        cd /mnt/server\r\n
                        \r\n
                        #Adding .jar when not eding by SERVER_JARFILE\r\n
                        if [[ ! ${SERVER_JARFILE} = *\.jar ]]; then\r\n
                          SERVER_JARFILE="${SERVER_JARFILE}.jar"\r\n
                        fi\r\n
                        \r\n
                        ## check spongevanilla version and default to recommended if it's invalid\r\n
                        if [ -z ${SV_VERSION} ] || [ "$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongevanilla/downloads/${SV_VERSION})" == "Unknown version" ]; then\r\n
                            echo -e "defaulting to recommended"\r\n
                            SV_VERSION="recommended"\r\n
                        fi\r\n
                        \r\n
                        ## handle getting download linsk for sponge\r\n
                        if [ "${SV_VERSION}" == "recommended" ]; then\r\n
                            echo -e "using recommended spongevanilla version"\r\n
                            SV_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongevanilla/downloads/recommended | jq -r '.version')\r\n
                            echo -e "found spongevanilla Version ${SV_VERSION}"\r\n
                            SV_DL_LINK=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongevanilla/downloads/recommended | jq -r '.artifacts."".url')\r\n
                        elif [ "${SV_VERSION}" == "latest" ]; then\r\n
                            echo -e "using latest SpongForge version"\r\n
                            SV_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongevanilla | jq -r '.buildTypes.stable.latest.version')\r\n
                            echo -e "found spongevanilla Version ${SV_VERSION}"\r\n
                        else\r\n
                            echo -e "found spongevanilla Version ${SV_VERSION}"\r\n
                            SV_DL_LINK=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongevanilla/downloads/${SV_VERSION} | jq -r '.artifacts."".url')\r\n
                        fi\r\n
                        \r\n
                        if [ -f ${SERVER_JARFILE} ] && [ $(sha1sum server.jar | awk '{ print $1 }') == $(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongevanilla/downloads/recommended | jq -r '.artifacts."".sha1') ]; then\r\n
                            echo -e "Already have the correct spongevanilla version"\r\n
                        else\r\n
                            echo -e "Downloading spongevanilla version ${SV_VERSION}"\r\n
                            echo -e "running: curl -s ${SV_DL_LINK} -o /mnt/server/mods/spongevanilla-${SV_VERSION}.jar"\r\n
                            curl -s ${SV_DL_LINK} -o /mnt/server/${SERVER_JARFILE}\r\n
                        fi\r\n
                        \r\n
                        if [ ! -f server.properties ]; then\r\n
                            echo -e "Downloading MC server.properties"\r\n
                            curl -s -o server.properties https://raw.githubusercontent.com/parkervcp/eggs/master/game_eggs/minecraft/java/server.properties\r\n
                        fi\r\n
                        \r\n
                        echo -e "Install for spongevanilla is complete"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-03T22:27:24+00:00"
                    "updated_at" => "2024-11-11T02:29:53+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 40
                    "uuid" => "dd799759-e02f-4fea-9630-2bdca19fa32c"
                    "name" => "Vanilla Bedrock"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "Bedrock Edition (also known as the Bedrock Version, Bedrock Codebase, Bedrock Engine or just Bedrock) refers to the multi-platform family of editions of Minecraft developed by Mojang AB, Microsoft Studios, 4J Studios, and SkyBox Labs. Prior to this term, as the engine originated with Pocket Edition, this entire product family was referred to as "Pocket Edition", "MCPE", or "Pocket/Windows 10 Edition"."
                    "docker_image" => "ghcr.io/parkervcp/yolks:debian"
                    "docker_images" => [
                      "ghcr.io/parkervcp/yolks:debian" => "ghcr.io/parkervcp/yolks:debian"
                    ]
                    "config" => [
                      "files" => [
                        "server.properties" => [
                          "parser" => "properties"
                          "find" => [
                            "server-port" => "{{server.build.default.port}}"
                            "server-name" => "{{server.build.env.SERVERNAME}}"
                            "gamemode" => "{{server.build.env.GAMEMODE}}"
                            "difficulty" => "{{server.build.env.DIFFICULTY}}"
                            "allow-cheats" => "{{server.build.env.CHEATS}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Server started"
                      ]
                      "stop" => "stop"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./bedrock_server"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        \r\n
                        apt update\r\n
                        apt install -y zip unzip wget curl\r\n
                        \r\n
                        if [ ! -d /mnt/server/ ]; then\r\n
                            mkdir /mnt/server/\r\n
                        fi\r\n
                        \r\n
                        cd /mnt/server\r\n
                        \r\n
                        # Minecraft CDN Akamai blocks script user-agents\r\n
                        RANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n
                        \r\n
                        if [ -z "${BEDROCK_VERSION}" ] || [ "${BEDROCK_VERSION}" == "latest" ]; then\r\n
                            echo -e "\n Downloading latest Bedrock server"\r\n
                            curl -L -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.$RANDVERSION.212 Safari/537.36" -H "Accept-Language: en" -H "Accept-Encoding: gzip, deflate" -o versions.html.gz https://www.minecraft.net/en-us/download/server/bedrock\r\n
                            DOWNLOAD_URL=$(zgrep -o 'https://minecraft.azureedge.net/bin-linux/[^"]*' versions.html.gz)\r\n
                        else \r\n
                            echo -e "\n Downloading ${BEDROCK_VERSION} Bedrock server"\r\n
                            DOWNLOAD_URL=https://minecraft.azureedge.net/bin-linux/bedrock-server-$BEDROCK_VERSION.zip\r\n
                        fi\r\n
                        \r\n
                        DOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d"/" -f5) # Retrieve archive name\r\n
                        \r\n
                        echo -e "backing up config files"\r\n
                        rm *.bak versions.html.gz\r\n
                        cp server.properties server.properties.bak\r\n
                        cp permissions.json permissions.json.bak\r\n
                        cp allowlist.json allowlist.json.bak\r\n
                        \r\n
                        \r\n
                        echo -e "Downloading files from: $DOWNLOAD_URL"\r\n
                        \r\n
                        curl -L -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.$RANDVERSION.212 Safari/537.36" -H "Accept-Language: en" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n
                        \r\n
                        echo -e "Unpacking server files"\r\n
                        unzip -o $DOWNLOAD_FILE\r\n
                        \r\n
                        echo -e "Cleaning up after installing"\r\n
                        rm $DOWNLOAD_FILE\r\n
                        \r\n
                        echo -e "restoring backup config files - on first install there will be file not found errors which you can ignore."\r\n
                        cp -rf server.properties.bak server.properties\r\n
                        cp -rf permissions.json.bak permissions.json\r\n
                        cp -rf allowlist.json.bak allowlist.json\r\n
                        \r\n
                        chmod +x bedrock_server\r\n
                        \r\n
                        echo -e "Install Completed"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-05-24T13:15:13+00:00"
                    "updated_at" => "2024-11-11T02:26:52+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 42
                    "uuid" => "9085a325-90fe-4508-bca9-dd4a26e17109"
                    "name" => "SA-MP Premium"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "SA-MP is a free Massively Multiplayer Online game mod for the PC version of Rockstar Games Grand Theft Auto: San Andreas (tm)."
                    "docker_image" => "ghcr.io/parkervcp/games:samp"
                    "docker_images" => [
                      "Samp" => "ghcr.io/parkervcp/games:samp"
                    ]
                    "config" => [
                      "files" => [
                        "server.cfg" => [
                          "parser" => "file"
                          "find" => [
                            "port" => "port {{server.build.default.port}}"
                            "rcon_password" => "rcon_password {{server.build.env.RCON_PASS}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Started server on "
                      ]
                      "stop" => "^^C"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./samp03svr"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        \r\n
                        # Check if VERSION is set and starts with an uppercase "R"\r\n
                        if [[ -n "$VERSION" && "$VERSION" == R* ]]; then\r\n
                            VERSION="0.3.7"\r\n
                            echo "Updated VERSION: $VERSION"\r\n
                        fi\r\n
                        \r\n
                        cd /tmp || exit\r\n
                        echo "running: curl -sSL -o samp.tar.gz https://sampcenter.com/download/server/linux/${VERSION}.tar.gz"\r\n
                        curl -sSL -o samp.tar.gz https://sampcenter.com/download/server/linux/${VERSION}.tar.gz\r\n
                        \r\n
                        mkdir -p /mnt/server\r\n
                        tar -xzvf samp.tar.gz --strip-components=1 -C /mnt/server/\r\n
                        \r\n
                        cd /mnt/server || exit\r\n
                        \r\n
                        sed -i '3d' /mnt/server/server.cfg\r\n
                        echo "rcon_password ${RCON_PASS}" >> /mnt/server/server.cfg\r\n
                        \r\n
                        chown -R root:root /mnt\r\n
                        \r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/axoo-god/installer:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-11-13T15:43:04+00:00"
                    "updated_at" => "2024-11-18T01:35:32+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 43
                    "uuid" => "9afa198c-642d-4fd1-a955-cc1da9dd734c"
                    "name" => "SA-MP"
                    "nest" => 1
                    "author" => "[email protected]"
                    "description" => "SA-MP is a free Massively Multiplayer Online game mod for the PC version of Rockstar Games Grand Theft Auto: San Andreas (tm)."
                    "docker_image" => "ghcr.io/axoo-god/games:samp"
                    "docker_images" => [
                      "Samp" => "ghcr.io/axoo-god/games:samp"
                    ]
                    "config" => [
                      "files" => [
                        "server.cfg" => [
                          "parser" => "file"
                          "find" => [
                            "port" => "port {{server.build.default.port}}"
                            "rcon_password" => "rcon_password {{server.build.env.RCON_PASS}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Started server on "
                      ]
                      "stop" => "^^C"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./samp03svr"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        \r\n
                        # Check if VERSION is set and starts with an uppercase "R"\r\n
                        if [[ -n "$VERSION" && "$VERSION" == R* ]]; then\r\n
                            VERSION="0.3.7"\r\n
                            echo "Updated VERSION: $VERSION"\r\n
                        fi\r\n
                        \r\n
                        cd /tmp || exit\r\n
                        echo "running: curl -sSL -o samp.tar.gz https://sampcenter.com/download/server/linux/${VERSION}.tar.gz"\r\n
                        curl -sSL -o samp.tar.gz https://sampcenter.com/download/server/linux/${VERSION}.tar.gz\r\n
                        \r\n
                        mkdir -p /mnt/server\r\n
                        tar -xzvf samp.tar.gz --strip-components=1 -C /mnt/server/\r\n
                        \r\n
                        cd /mnt/server || exit\r\n
                        \r\n
                        sed -i '3d' /mnt/server/server.cfg\r\n
                        echo "rcon_password ${RCON_PASS}" >> /mnt/server/server.cfg\r\n
                        \r\n
                        chown -R root:root /mnt\r\n
                        \r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/axoo-god/installer:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-11-13T15:45:35+00:00"
                    "updated_at" => "2024-11-13T15:45:35+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 2
          "uuid" => "2fe1e73d-d3bd-4280-bffb-842551e07039"
          "author" => "[email protected]"
          "name" => "Source Engine"
          "description" => "Includes support for most Source Dedicated Server games."
          "created_at" => "2024-02-29T17:15:20+00:00"
          "updated_at" => "2024-02-29T17:15:20+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 6
                    "uuid" => "35482b8b-e4c5-4524-95d7-d7cdb62dc9d0"
                    "name" => "Counter-Strike: Global Offensive Reworked"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "Counter-Strike: Global Offensive is a multiplayer first-person shooter video game developed by Hidden Path Entertainment and Valve Corporation."
                    "docker_image" => "quay.io/pterodactyl/core:source"
                    "docker_images" => [
                      "quay.io/pterodactyl/core:source" => "quay.io/pterodactyl/core:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID"
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game csgo -console -maxplayers {{MAX_PLAYERS}} -port {{SERVER_PORT}} +ip 0.0.0.0 +map {{SRCDS_MAP}} -strictportbind -norestart +sv_setsteamaccount {{STEAM_ACC}}"
                    "script" => [
                      "privileged" => true
                      "install" => null
                      "entry" => "ash"
                      "container" => "alpine:3.4"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-09-26T20:00:17+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 7
                    "uuid" => "4ad5d7ac-3332-425d-83e7-bfbc3fec7413"
                    "name" => "Ark: Survival Evolved"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "As a man or woman stranded, naked, freezing, and starving on the unforgiving shores of a mysterious island called ARK, use your skill and cunning to kill or tame and ride the plethora of leviathan dinosaurs and other primeval creatures roaming the land. Hunt, harvest resources, craft items, grow crops, research technologies, and build shelters to withstand the elements and store valuables, all while teaming up with (or preying upon) hundreds of other players to survive, dominate... and escape! — Gamepedia: ARK"
                    "docker_image" => "quay.io/parkervcp/pterodactyl-images:debian_source"
                    "docker_images" => [
                      "quay.io/parkervcp/pterodactyl-images:debian_source" => "quay.io/parkervcp/pterodactyl-images:debian_source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Waiting commands for 127.0.0.1:"
                      ]
                      "stop" => "^C"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "rmv() { echo -e "stopping server"; rcon -t rcon -a 127.0.0.1:${RCON_PORT} -p ${ARK_ADMIN_PASSWORD} -c saveworld && rcon -a 127.0.0.1:${RCON_PORT} -p ${ARK_ADMIN_PASSWORD} -c DoExit; }; trap rmv 15; cd ShooterGame/Binaries/Linux && ./ShooterGameServer {{SERVER_MAP}}?listen?SessionName="{{SESSION_NAME}}"?ServerPassword={{ARK_PASSWORD}}?ServerAdminPassword={{ARK_ADMIN_PASSWORD}}?Port={{SERVER_PORT}}?RCONPort={{RCON_PORT}}?QueryPort={{QUERY_PORT}}?RCONEnabled=True$( [ "$BATTLE_EYE" == "1" ] || printf %s ' -NoBattlEye' ) -server {{ARGS}} -log & until echo "waiting for rcon connection..."; rcon -t rcon -a 127.0.0.1:${RCON_PORT} -p ${ARK_ADMIN_PASSWORD}; do sleep 5; done"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:18.04'\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        \r\n
                        mkdir -p /mnt/server/Engine/Binaries/ThirdParty/SteamCMD/Linux\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/Engine/Binaries/ThirdParty/SteamCMD/Linux\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        ## create a symbolic link for loading mods\r\n
                        cd /mnt/server/Engine/Binaries/ThirdParty/SteamCMD/Linux\r\n
                        ln -sf ../../../../../Steam/steamapps steamapps\r\n
                        cd /mnt/server
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-02-29T17:15:20+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 8
                    "uuid" => "ba34400d-c47e-43d8-a942-b5b925cfab9e"
                    "name" => "Custom Source Engine Game"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom SRCDS based game on the panel."
                    "docker_image" => "ghcr.io/pterodactyl/games:source"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:source" => "ghcr.io/pterodactyl/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game {{SRCDS_GAME}} -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        ##\r\n
                        #\r\n
                        # Variables\r\n
                        # STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n
                        # WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n
                        # SRCDS_APPID - steam app id ffound here - https://developer.valvesoftware.com/wiki/Dedicated_Servers_List\r\n
                        # EXTRA_FLAGS - when a server has extra glas for things like beta installs or updates.\r\n
                        #\r\n
                        ##\r\n
                        \r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-02-29T17:15:20+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 9
                    "uuid" => "6edddd5a-da09-428a-9aee-2fb7a847c813"
                    "name" => "Insurgency"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "Take to the streets for intense close quarters combat, where a team's survival depends upon securing crucial strongholds and destroying enemy supply in this multiplayer and cooperative Source Engine based experience."
                    "docker_image" => "ghcr.io/pterodactyl/games:source"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:source" => "ghcr.io/pterodactyl/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game insurgency -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login anonymous +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-02-29T17:15:20+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 10
                    "uuid" => "540f0ae0-737e-4ab3-b3b5-6b69d8ade80e"
                    "name" => "Team Fortress 2"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "Team Fortress 2 is a team-based first-person shooter multiplayer video game developed and published by Valve Corporation. It is the sequel to the 1996 mod Team Fortress for Quake and its 1999 remake."
                    "docker_image" => "ghcr.io/pterodactyl/games:source"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:source" => "ghcr.io/pterodactyl/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game tf -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart +sv_setsteamaccount {{STEAM_ACC}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'debian:buster-slim'\r\n
                        \r\n
                        ##\r\n
                        #\r\n
                        # Variables\r\n
                        # STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n
                        # WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n
                        # SRCDS_APPID - steam app id ffound here - https://developer.valvesoftware.com/wiki/Dedicated_Servers_List\r\n
                        # EXTRA_FLAGS - when a server has extra glas for things like beta installs or updates.\r\n
                        #\r\n
                        ##\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-02-29T17:15:20+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 11
                    "uuid" => "2d0951a2-b6b5-4738-b1c8-7cf68ba34263"
                    "name" => "Garrys Mod"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "Garrys Mod, is a sandbox physics game created by Garry Newman, and developed by his company, Facepunch Studios."
                    "docker_image" => "ghcr.io/pterodactyl/games:source"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:source" => "ghcr.io/pterodactyl/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game garrysmod -console -port {{SERVER_PORT}} +ip 0.0.0.0 +host_workshop_collection {{WORKSHOP_ID}} +map {{SRCDS_MAP}} +gamemode {{GAMEMODE}} -strictportbind -norestart +sv_setsteamaccount {{STEAM_ACC}} +maxplayers {{MAX_PLAYERS}}  -tickrate {{TICKRATE}}  $( [ "$LUA_REFRESH" == "1" ] || printf %s '-disableluarefresh' )"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        # Creating needed default files for the game\r\n
                        cd /mnt/server/garrysmod/lua/autorun/server\r\n
                        echo '\r\n
                        -- Docs: https://wiki.garrysmod.com/page/resource/AddWorkshop\r\n
                        -- Place the ID of the workshop addon you want to be downloaded to people who join your server, not the collection ID\r\n
                        -- Use https://beta.configcreator.com/create/gmod/resources.lua to easily create a list based on your collection ID\r\n
                        \r\n
                        resource.AddWorkshop( "" )\r\n
                        ' > workshop.lua\r\n
                        \r\n
                        cd /mnt/server/garrysmod/cfg\r\n
                        echo '\r\n
                        // Please do not set RCon in here, use the startup parameters.\r\n
                        \r\n
                        hostname\t\t"New Gmod Server"\r\n
                        sv_password\t\t""\r\n
                        sv_loadingurl   ""\r\n
                        sv_downloadurl  ""\r\n
                        \r\n
                        // Steam Server List Settings\r\n
                        // sv_location "eu"\r\n
                        sv_region "255"\r\n
                        sv_lan "0"\r\n
                        sv_max_queries_sec_global "30000"\r\n
                        sv_max_queries_window "45"\r\n
                        sv_max_queries_sec "5"\r\n
                        \r\n
                        // Server Limits\r\n
                        sbox_maxprops\t\t100\r\n
                        sbox_maxragdolls\t5\r\n
                        sbox_maxnpcs\t\t10\r\n
                        sbox_maxballoons\t10\r\n
                        sbox_maxeffects\t\t10\r\n
                        sbox_maxdynamite\t10\r\n
                        sbox_maxlamps\t\t10\r\n
                        sbox_maxthrusters\t10\r\n
                        sbox_maxwheels\t\t10\r\n
                        sbox_maxhoverballs\t10\r\n
                        sbox_maxvehicles\t20\r\n
                        sbox_maxbuttons\t\t10\r\n
                        sbox_maxsents\t\t20\r\n
                        sbox_maxemitters\t5\r\n
                        sbox_godmode\t\t0\r\n
                        sbox_noclip\t\t    0\r\n
                        \r\n
                        // Network Settings - Please keep these set to default.\r\n
                        \r\n
                        sv_minrate\t\t75000\r\n
                        sv_maxrate\t\t0\r\n
                        gmod_physiterations\t2\r\n
                        net_splitpacket_maxrate\t45000\r\n
                        decalfrequency\t\t12 \r\n
                        \r\n
                        // Execute Ban Files - Please do not edit\r\n
                        exec banned_ip.cfg \r\n
                        exec banned_user.cfg \r\n
                        \r\n
                        // Add custom lines under here\r\n
                        ' > server.cfg
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-02-29T17:15:20+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 20
                    "uuid" => "fc2f2d53-04b2-46eb-a072-fee9e22a37fb"
                    "name" => "Custom ReHLDS Engine Game"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # SRCDS Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        # just in case someone removed the defaults.\r\n
                        if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH}  +app_set_config 90 mod ${HLDS_GAME} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit\r\n
                        \r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        \r\n
                        # Github Release Grabber script\r\n
                        ## get release info and download links\r\n
                        LATEST_JSON=$(curl --silent "https://api.github.com/repos/dreamstalker/rehlds/releases/latest")\r\n
                        RELEASES=$(curl --silent "https://api.github.com/repos/dreamstalker/rehlds/releases")\r\n
                        MATCH="rehlds-bin"\r\n
                        \r\n
                        if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then\r\n
                            DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\n
                        else\r\n
                            VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n
                            if [ "${VERSION}" == "${VERSION_CHECK}" ]; then\r\n
                                DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -Ei ${MATCH})\r\n
                            else\r\n
                                echo -e "defaulting to latest release"\r\n
                                DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n
                            fi\r\n
                        fi\r\n
                        \r\n
                        cd /tmp\r\n
                        curl -sSL -o rehlds-bin.zip ${DOWNLOAD_URL}\r\n
                        unzip -q -o rehlds-bin.zip\r\n
                        \r\n
                        cp -r /tmp/bin/linux32/* /mnt/server\r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-04T16:21:37+00:00"
                    "updated_at" => "2024-03-20T00:01:27+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 22
                    "uuid" => "cb7a7259-f686-4829-b960-b2d27b67a06b"
                    "name" => "DEATHMATCH"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => null
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => null
                      "entry" => "ash"
                      "container" => "alpine:3.4"
                      "extends" => 20
                    ]
                    "created_at" => "2024-03-09T17:22:31+00:00"
                    "updated_at" => "2024-03-09T17:43:48+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 23
                    "uuid" => "2324c31d-4abc-4054-a15f-cf304d1273a6"
                    "name" => "CLASSIC"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => 20
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:18.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://15.204.249.77/server.zip\r\n
                        unzip server.zip\r\n
                        chmod +x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod -x hlds_run\r\n
                        chmod -x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-11T20:57:31+00:00"
                    "updated_at" => "2024-04-03T20:50:44+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 29
                    "uuid" => "5310ec1d-c2e0-4eb9-bda4-adfe9ff042a8"
                    "name" => "MANAGED BY REDIX HOSTING"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom SRCDS based game on the panel."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID"
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:18.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget https://85.215.171.144/server.zip\r\n
                        unzip server.zip\r\n
                        chmod +x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ubuntu:18.04"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-23T17:12:12+00:00"
                    "updated_at" => "2024-04-01T00:27:32+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 39
                    "uuid" => "198752f0-e3bc-4934-9f30-df368fa7da34"
                    "name" => "Counter-Strike: Source"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "Counter-Strike: Source blends Counter-Strike's award-winning teamplay action with the advanced technology of Source™ technology."
                    "docker_image" => "ghcr.io/parkervcp/steamcmd:debian"
                    "docker_images" => [
                      "ghcr.io/parkervcp/steamcmd:debian" => "ghcr.io/parkervcp/steamcmd:debian"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID "
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game cstrike -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +sv_setsteamaccount {{STEAM_TOKEN}} +ip 0.0.0.0  +maxplayers -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ghcr.io/parkervcp/installers:debian'\r\n
                        \r\n
                        ##\r\n
                        #\r\n
                        # Variables\r\n
                        # STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n
                        # WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n
                        # SRCDS_APPID - steam app id found here - https://developer.valvesoftware.com/wiki/Dedicated_Servers_List\r\n
                        # SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n
                        # SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n
                        # INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n
                        # AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n
                        #\r\n
                         ##\r\n
                        \r\n
                        # Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n
                        #apt -y update\r\n
                        #apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        ## add below your custom commands if needed\r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-05-12T22:08:49+00:00"
                    "updated_at" => "2026-03-05T03:33:58+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 45
                    "uuid" => "c3249c91-2f90-4bf6-89b4-5487153e3280"
                    "name" => "Counter-Strike: Global Offensive"
                    "nest" => 2
                    "author" => "[email protected]"
                    "description" => "Counter-Strike: Global Offensive is a multiplayer first-person shooter video game developed by Hidden Path Entertainment and Valve Corporation."
                    "docker_image" => "ghcr.io/pterodactyl/games:source"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:source" => "ghcr.io/pterodactyl/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game csgo -console -port {{SERVER_PORT}} +ip 0.0.0.0 +map {{SRCDS_MAP}} -strictportbind -norestart +sv_setsteamaccount {{STEAM_ACC}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-12-19T21:29:13+00:00"
                    "updated_at" => "2024-12-19T21:29:13+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 3
          "uuid" => "6a66f37f-a509-43ec-be1d-63d69ea017b2"
          "author" => "[email protected]"
          "name" => "Voice Servers"
          "description" => "Voice servers such as Mumble and Teamspeak 3."
          "created_at" => "2024-02-29T17:15:20+00:00"
          "updated_at" => "2024-02-29T17:15:20+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 12
                    "uuid" => "0b18815d-4c5f-45fb-a936-b64d3d7b8649"
                    "name" => "Teamspeak3 Server"
                    "nest" => 3
                    "author" => "[email protected]"
                    "description" => "VoIP software designed with security in mind, featuring crystal clear voice quality, endless customization options, and scalabilty up to thousands of simultaneous users."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:debian"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/yolks:debian" => "ghcr.io/pterodactyl/yolks:debian"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "listening on 0.0.0.0:"
                      ]
                      "stop" => "^C"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/ts3.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => """
                      ./ts3server default_voice_port={{VOICE_PORT}} query_port={{QUERY_PORT}} filetransfer_ip=5.39.48.201\r\n
                      filetransfer_port={{FILE_TRANSFER}} query_http_port={{QUERY_HTTP}} query_ssh_port={{QUERY_SSH}} query_protocols={{QUERY_PROTOCOLS_VAR}} license_accepted=1
                      """
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/ash\r\n
                        # TS3 Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        if [ -z ${TS_VERSION} ] || [ ${TS_VERSION} == latest ]; then\r\n
                            TS_VERSION=$(curl -sSL https://teamspeak.com/versions/server.json | jq -r '.linux.x86_64.version')\r\n
                        fi\r\n
                        \r\n
                        cd /mnt/server\r\n
                        \r\n
                        echo -e "getting files from http://files.teamspeak-services.com/releases/server/${TS_VERSION}/teamspeak3-server_linux_amd64-${TS_VERSION}.tar.bz2" \r\n
                        curl -L http://files.teamspeak-services.com/releases/server/${TS_VERSION}/teamspeak3-server_linux_amd64-${TS_VERSION}.tar.bz2 | tar -xvj --strip-components=1\r\n
                        cp ./redist/libmariadb.so.2 ./
                        """
                      "entry" => "ash"
                      "container" => "ghcr.io/pterodactyl/installers:alpine"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2026-03-05T05:52:15+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 13
                    "uuid" => "e21037cb-5f08-48de-8e76-9688e96c1acd"
                    "name" => "Mumble Server"
                    "nest" => 3
                    "author" => "[email protected]"
                    "description" => "Mumble is an open source, low-latency, high quality voice chat software primarily intended for use while gaming."
                    "docker_image" => "ghcr.io/parkervcp/yolks:voice_mumble"
                    "docker_images" => [
                      "Mumble" => "ghcr.io/parkervcp/yolks:voice_mumble"
                    ]
                    "config" => [
                      "files" => [
                        "murmur.ini" => [
                          "parser" => "ini"
                          "find" => [
                            "database" => "/home/container/murmur.sqlite"
                            "logfile" => "/home/container/murmur.log"
                            "port" => "{{server.build.default.port}}"
                            "host" => "0.0.0.0"
                            "users" => "{{server.build.env.MAX_USERS}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Server listening on"
                      ]
                      "stop" => "^C"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "mumble-server -fg -ini murmur.ini"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/ash\r\n
                        \r\n
                        if [ ! -d /mnt/server/ ]; then\r\n
                            mkdir /mnt/server/\r\n
                        fi\r\n
                        \r\n
                        cd /mnt/server\r\n
                        \r\n
                        FILE=/mnt/server/murmur.ini\r\n
                        if [ -f "$FILE" ]; then\r\n
                            echo "Config file already exists."\r\n
                        else \r\n
                            echo "Downloading the config file."\r\n
                            apk add --no-cache murmur\r\n
                            cp /etc/murmur.ini /mnt/server/murmur.ini\r\n
                            apk del murmur\r\n
                        fi\r\n
                        echo "done"
                        """
                      "entry" => "ash"
                      "container" => "ghcr.io/pterodactyl/installers:alpine"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-02-29T17:15:20+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 4
          "uuid" => "4b353f07-8b0c-46b8-afdb-081af1d76a3c"
          "author" => "[email protected]"
          "name" => "Rust"
          "description" => "Rust - A game where you must fight to survive."
          "created_at" => "2024-02-29T17:15:20+00:00"
          "updated_at" => "2024-02-29T17:15:20+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 14
                    "uuid" => "f2587fe6-4a58-4899-9c3d-115f52770bb7"
                    "name" => "Rust"
                    "nest" => 4
                    "author" => "[email protected]"
                    "description" => "The only aim in Rust is to survive. To do this you will need to overcome struggles such as hunger, thirst and cold. Build a fire. Build a shelter. Kill animals for meat. Protect yourself from other players, and kill them for meat. Create alliances with other players and form a town. Do whatever it takes to survive."
                    "docker_image" => "ghcr.io/pterodactyl/games:rust"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:rust" => "ghcr.io/pterodactyl/games:rust"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Server startup complete"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./RustDedicated -batchmode +server.port {{SERVER_PORT}} +server.queryport {{QUERY_PORT}} +server.identity "rust" +rcon.port {{RCON_PORT}} +rcon.web true +server.hostname \"{{HOSTNAME}}\" +server.level \"{{LEVEL}}\" +server.description \"{{DESCRIPTION}}\" +server.url \"{{SERVER_URL}}\" +server.headerimage \"{{SERVER_IMG}}\" +server.logoimage \"{{SERVER_LOGO}}\" +server.maxplayers {{MAX_PLAYERS}} +rcon.password \"{{RCON_PASS}}\" +server.saveinterval {{SAVEINTERVAL}} +app.port {{APP_PORT}}  $( [ -z ${MAP_URL} ] && printf %s "+server.worldsize \"{{WORLD_SIZE}}\" +server.seed \"{{WORLD_SEED}}\"" || printf %s "+server.levelurl {{MAP_URL}}" ) {{ADDITIONAL_ARGS}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        SRCDS_APPID=258550\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-02-29T17:15:20+00:00"
                    "updated_at" => "2024-02-29T17:15:20+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 46
                    "uuid" => "612429e3-c112-4acb-891a-049a0a6a1a7e"
                    "name" => "Rust"
                    "nest" => 4
                    "author" => "[email protected]"
                    "description" => "The only aim in Rust is to survive. To do this you will need to overcome struggles such as hunger, thirst and cold. Build a fire. Build a shelter. Kill animals for meat. Protect yourself from other players, and kill them for meat. Create alliances with other players and form a town. Do whatever it takes to survive."
                    "docker_image" => "ghcr.io/pterodactyl/games:rust"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:rust" => "ghcr.io/pterodactyl/games:rust"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Server startup complete"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./RustDedicated -batchmode +server.port {{SERVER_PORT}} +server.queryport {{QUERY_PORT}} +server.identity "rust" +rcon.port {{RCON_PORT}} +rcon.web true +server.hostname \"{{HOSTNAME}}\" +server.level \"{{LEVEL}}\" +server.description \"{{DESCRIPTION}}\" +server.url \"{{SERVER_URL}}\" +server.headerimage \"{{SERVER_IMG}}\" +server.logoimage \"{{SERVER_LOGO}}\" +server.maxplayers {{MAX_PLAYERS}} +rcon.password \"{{RCON_PASS}}\" +server.saveinterval {{SAVEINTERVAL}} +app.port {{APP_PORT}}  $( [ -z ${MAP_URL} ] && printf %s "+server.worldsize \"{{WORLD_SIZE}}\" +server.seed \"{{WORLD_SEED}}\"" || printf %s "+server.levelurl {{MAP_URL}}" ) {{ADDITIONAL_ARGS}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        SRCDS_APPID=258550\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2025-01-18T19:13:47+00:00"
                    "updated_at" => "2025-01-18T19:13:47+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 47
                    "uuid" => "c7dbda20-e470-4cb1-ad9d-9680cea87cfb"
                    "name" => "Rust"
                    "nest" => 4
                    "author" => "[email protected]"
                    "description" => "The only aim in Rust is to survive. To do this you will need to overcome struggles such as hunger, thirst and cold. Build a fire. Build a shelter. Kill animals for meat. Protect yourself from other players, and kill them for meat. Create alliances with other players and form a town. Do whatever it takes to survive."
                    "docker_image" => "ghcr.io/pterodactyl/games:rust"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:rust" => "ghcr.io/pterodactyl/games:rust"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Server startup complete"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./RustDedicated -batchmode +server.port {{SERVER_PORT}} +server.queryport {{QUERY_PORT}} +server.identity "rust" +rcon.port {{RCON_PORT}} +rcon.web true +server.hostname \"{{HOSTNAME}}\" +server.level \"{{LEVEL}}\" +server.description \"{{DESCRIPTION}}\" +server.url \"{{SERVER_URL}}\" +server.headerimage \"{{SERVER_IMG}}\" +server.logoimage \"{{SERVER_LOGO}}\" +server.maxplayers {{MAX_PLAYERS}} +rcon.password \"{{RCON_PASS}}\" +server.saveinterval {{SAVEINTERVAL}} +app.port {{APP_PORT}}  $( [ -z ${MAP_URL} ] && printf %s "+server.worldsize \"{{WORLD_SIZE}}\" +server.seed \"{{WORLD_SEED}}\"" || printf %s "+server.levelurl {{MAP_URL}}" ) {{ADDITIONAL_ARGS}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        SRCDS_APPID=258550\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2025-01-18T19:17:06+00:00"
                    "updated_at" => "2025-01-18T19:17:06+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 6
          "uuid" => "4fd171c5-f095-476a-9c81-d6b0903b577e"
          "author" => "[email protected]"
          "name" => "Redix Holding"
          "description" => null
          "created_at" => "2024-03-08T19:15:14+00:00"
          "updated_at" => "2024-03-11T21:44:43+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 21
                    "uuid" => "941547dd-5247-465e-9d52-5e1ee5e8d8c0"
                    "name" => "egg-custom-re-h-l-d-s-engine-game"
                    "nest" => 6
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -game cstrike -autoupdate +maxplayers 32 +map de_dust2 -port +exec server.cfg -tickrate 100 -sys_ticrate 1000 -autoupdate -pingboost 3"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:18.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://15.204.249.77/server.zip\r\n
                        unzip server.zip\r\n
                        chmod +x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-08T19:19:15+00:00"
                    "updated_at" => "2024-03-26T03:49:55+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 24
                    "uuid" => "ae4eb343-3dd9-4d8f-91eb-282a9ca18c64"
                    "name" => "Counter-Strike: Source"
                    "nest" => 6
                    "author" => "[email protected]"
                    "description" => "Counter-Strike: Source blends Counter-Strike's award-winning teamplay action with the advanced technology of Source™ technology."
                    "docker_image" => "ghcr.io/parkervcp/steamcmd:debian"
                    "docker_images" => [
                      "ghcr.io/parkervcp/steamcmd:debian" => "ghcr.io/parkervcp/steamcmd:debian"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "gameserver Steam ID "
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => 24
                    ]
                    "startup" => "./srcds_run -game cstrike -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +sv_setsteamaccount {{STEAM_TOKEN}} +ip 0.0.0.0 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ghcr.io/parkervcp/installers:debian'\r\n
                        \r\n
                        ##\r\n
                        #\r\n
                        # Variables\r\n
                        # STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n
                        # WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n
                        # SRCDS_APPID - steam app id found here - https://developer.valvesoftware.com/wiki/Dedicated_Servers_List\r\n
                        # SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n
                        # SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n
                        # INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n
                        # AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n
                        #\r\n
                         ##\r\n
                        \r\n
                        # Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n
                        #apt -y update\r\n
                        #apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        ## add below your custom commands if needed\r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-11T21:35:01+00:00"
                    "updated_at" => "2024-03-25T16:44:33+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 28
                    "uuid" => "ec740cf4-6634-43aa-8975-979e9a20a3b9"
                    "name" => "egg-custom-re-h-l-d-s-engine-game"
                    "nest" => 6
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "/hlds_run -game cstrike +map de_dust2 -port +ip 0.0.0 .0 +maxplayers 32 -debug"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:1822.04'\r\n
                        \r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget https://85.215.171.144/server.zip\r\n
                        unzip server.zip\r\n
                        chmod +x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-18T23:33:36+00:00"
                    "updated_at" => "2024-04-01T00:31:07+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 7
          "uuid" => "dcf0bc8f-7c88-4680-a223-e7a610e54bb4"
          "author" => "[email protected]"
          "name" => "CLASSIC"
          "description" => null
          "created_at" => "2024-03-11T21:36:00+00:00"
          "updated_at" => "2024-03-11T21:36:00+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 25
                    "uuid" => "9ef1f15b-92f0-4b3a-b830-de1029e3495f"
                    "name" => "egg-custom-re-h-l-d-s-engine-game"
                    "nest" => 7
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:18.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://15.204.249.77/server.zip\r\n
                        unzip server.zip\r\n
                        chmod +x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-11T21:38:29+00:00"
                    "updated_at" => "2024-04-03T20:30:29+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 8
          "uuid" => "68fb0b75-2f29-4ded-b354-51214ca60128"
          "author" => "[email protected]"
          "name" => "NEWEST CLASSIC"
          "description" => null
          "created_at" => "2024-03-13T10:08:46+00:00"
          "updated_at" => "2024-03-13T10:08:46+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 26
                    "uuid" => "7c85d6a4-7858-4a4a-aa52-d217cd2a0110"
                    "name" => "Counter-Strike: Source"
                    "nest" => 8
                    "author" => "[email protected]"
                    "description" => "Counter-Strike: Source blends Counter-Strike's award-winning teamplay action with the advanced technology of Source™ technology."
                    "docker_image" => "ghcr.io/parkervcp/steamcmd:debian"
                    "docker_images" => [
                      "ghcr.io/parkervcp/steamcmd:debian" => "ghcr.io/parkervcp/steamcmd:debian"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./srcds_run -game cstrike -console -port {{SERVER_PORT}} +map {{SRCDS_MAP  +ip 0.0.0.0 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /var/lib/pterodactyl/mounts\r\n
                        # Image to install with is 'ghcr.io/parkervcp/installers:debian'\r\n
                        \r\n
                        ##\r\n
                        #\r\n
                        # Variables\r\n
                        # STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n
                        # WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n
                        # SRCDS_APPID - steam app id found here - https://developer.valvesoftware.com/wiki/Dedicated_Servers_List\r\n
                        # SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n
                        # SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n
                        # INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n
                        # AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n
                        #\r\n
                         ##\r\n
                        \r\n
                        # Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n
                        #apt -y update\r\n
                        #apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=redix\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        ## add below your custom commands if needed\r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-13T10:26:38+00:00"
                    "updated_at" => "2024-03-26T00:57:44+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 9
          "uuid" => "17ea990f-d65b-4649-9bd1-ec4b61c235da"
          "author" => "[email protected]"
          "name" => "redix-hosting.com"
          "description" => "PREMIUM"
          "created_at" => "2024-03-18T22:53:03+00:00"
          "updated_at" => "2024-04-04T14:07:24+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 27
                    "uuid" => "94b549dc-3c07-46f2-955f-ae37176cdb95"
                    "name" => "CS 1.6 DEATHMATCH Mode"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => [
                        "cstrike/server.cfg" => [
                          "parser" => "file"
                          "replace" => [
                            "sv_downloadurl" => "sv_downloadurl "http://141.94.96.91/html/fastdl/{{server.build.env.SERVER_UUID}}""
                            "sv_allowdownload" => "sv_allowdownload 1"
                            "sv_allowupload" => "sv_allowupload 1"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers {{SRCDS_MAXPLAYERS}} -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/deathmatch.zip\r\n
                        unzip deathmatch.zip\r\n
                        chmod +x server\r\n
                        rm -rf deathmatch.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-18T23:01:11+00:00"
                    "updated_at" => "2026-02-22T17:42:13+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 35
                    "uuid" => "9fa36447-915f-49c5-9f48-1ef252500d38"
                    "name" => "CS 1.6 PUBLIC Mode"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => [
                        "cstrike/server.cfg" => [
                          "parser" => "file"
                          "replace" => [
                            "sv_downloadurl" => "sv_downloadurl "http://141.94.96.91/html/fastdl/{{server.build.env.SERVER_UUID}}""
                            "sv_allowdownload" => "sv_allowdownload 1"
                            "sv_allowupload" => "sv_allowupload 1"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => null
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers {{SRCDS_MAXPLAYERS}} -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/server.zip\r\n
                        unzip server.zip\r\n
                        chmod -x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/server/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-04-06T01:50:14+00:00"
                    "updated_at" => "2026-02-22T17:25:20+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 36
                    "uuid" => "b995835a-bdf4-480c-a1bb-cc2b4dc288ec"
                    "name" => "CS 1.6 DEATHRUN Mode"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/deathrun.zip\r\n
                        unzip deathrun.zip\r\n
                        chmod +x server\r\n
                        rm -rf deathrun.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-04-12T00:34:44+00:00"
                    "updated_at" => "2025-08-13T09:51:17+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 37
                    "uuid" => "9562ba92-61af-4407-b60c-cb5245f1dee0"
                    "name" => "CS 1.6 ZOMBIE Mode"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => [
                        "/mnt/server" => [
                          "parser" => "file"
                          "find" => [
                            "sv_downloadurl" => "sv_downloadurl "http://{{env.P_SERVER_LOCATION}}/{{env.P_SERVER_UUID}}/cstrike/""
                            "sv_allowdownload" => "sv_allowdownload "1""
                            "sv_allowupload" => "sv_allowupload "1""
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/zombie.zip\r\n
                        unzip zombie.zip\r\n
                        chmod -x zombie\r\n
                        rm -rf zombie.zip\r\n
                        cd /mnt/zombie/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/zombie/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-04-12T00:35:50+00:00"
                    "updated_at" => "2025-08-13T09:51:45+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 38
                    "uuid" => "5f8fe1dc-1d23-4fd4-9417-60c494b2f40f"
                    "name" => "CS 1.6 FURIEN Mode"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/furien.zip\r\n
                        unzip furien.zip\r\n
                        chmod +x server\r\n
                        rm -rf furien.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-04-12T00:37:24+00:00"
                    "updated_at" => "2025-08-13T09:52:06+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 41
                    "uuid" => "7162190b-7223-4586-ae0d-8fb4b3186b82"
                    "name" => "Counter-Strike 2"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "For over two decades, Counter-Strike has offered an elite competitive experience, one shaped by millions of players from across the globe. And now the next chapter in the CS story is about to begin. This is Counter-Strike 2."
                    "docker_image" => "ghcr.io/parkervcp/steamcmd:sniper"
                    "docker_images" => [
                      "ghcr.io/parkervcp/steamcmd:sniper" => "ghcr.io/parkervcp/steamcmd:sniper"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./game/bin/linuxsteamrt64/cs2 -dedicated $( [ "$VAC_ENABLED" == "1" ] || printf %s ' -insecure' ) -ip 0.0.0.0 -port {{SERVER_PORT}} -tv_port {{TV_PORT}} -maxplayers {{MAX_PLAYERS}} $( [ "$RCON_ENABLED" == "0" ] || printf %s ' -usercon' ) +game_mode {{GAME_MODE}} +game_type {{GAME_TYPE}} +map {{SRCDS_MAP}} +hostname "{{SERVER_NAME}}" +sv_password "{{SERVER_PASSWORD}}" +rcon_password "{{RCON_PASSWORD}}" +sv_setsteamaccount {{STEAM_GSLT}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ghcr.io/parkervcp/installers:debian'\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## Install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-09-26T19:02:23+00:00"
                    "updated_at" => "2024-09-26T19:51:08+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 48
                    "uuid" => "77046ac9-63d4-43ce-ad61-867c3703800b"
                    "name" => "CS 1.6 PUBLIC Mode /HLDS"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/hlds.zip\r\n
                        unzip hlds.zip\r\n
                        chmod -x server\r\n
                        rm -rf hlds.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/server/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => 35
                    ]
                    "created_at" => "2025-03-05T16:46:17+00:00"
                    "updated_at" => "2026-02-05T20:18:07+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 50
                    "uuid" => "e2c49b56-13e9-46f1-bb5e-d3acb4e11554"
                    "name" => "SGS"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://38.242.239.99/server.zip\r\n
                        unzip server.zip\r\n
                        chmod -x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/server/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2025-08-15T14:33:26+00:00"
                    "updated_at" => "2025-08-15T14:34:12+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 51
                    "uuid" => "6e1fd754-c5a0-4d96-8da2-e98cb16302f5"
                    "name" => "CS 1.6 PUBLIC Mode"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => """
                        {\r\n
                          "cstrike/server.cfg": {\r\n
                            "parser": "file",\r\n
                            "replace": {\r\n
                              "sv_downloadurl": "sv_downloadurl \"http://141.94.96.91/fastdl/{{server.build.env.SERVER_UUID}}\"",\r\n
                              "sv_allowdownload": "sv_allowdownload 1",\r\n
                              "sv_allowupload": "sv_allowupload 1"\r\n
                            }\r\n
                          }\r\n
                        }
                        """
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/server.zip\r\n
                        unzip server.zip\r\n
                        chmod -x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/server/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2025-08-26T11:29:38+00:00"
                    "updated_at" => "2025-08-26T11:32:41+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 52
                    "uuid" => "ec85c788-79be-492c-9f75-cb7ccbc3593d"
                    "name" => "New"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "The SteamRT3 Platform image for Pterodactyl CS2 servers is packed with numerous features, designed to simplify server management and reduce hassle."
                    "docker_image" => "docker.io/sples1/k4ryuu-cs2:latest"
                    "docker_images" => [
                      "KitsuneLab CS2" => "docker.io/sples1/k4ryuu-cs2:latest"
                      "KitsuneLab CS2 Public Beta" => "docker.io/sples1/k4ryuu-cs2:beta"
                      "KitsuneLab CS2 Development" => "docker.io/sples1/k4ryuu-cs2:dev"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./game/cs2.sh {{CUSTOM_PARAMS}} -dedicated +ip 0.0.0.0 -port {{SERVER_PORT}} +map {{SRCDS_MAP}} -maxplayers {{SRCDS_MAXPLAYERS}} +sv_setsteamaccount {{STEAM_ACC}} +game_type {{GAME_TYPE}} +game_mode {{GAME_MODE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                        STEAM_USER=anonymous\r\n
                        STEAM_PASS=""\r\n
                        STEAM_AUTH=""\r\n
                        fi\r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2025-10-10T14:06:20+00:00"
                    "updated_at" => "2025-10-10T14:06:31+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 53
                    "uuid" => "5a2c5825-a9ed-47af-ac4f-7024e62124cb"
                    "name" => "7 Days To Die"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "7 days to die server"
                    "docker_image" => "ghcr.io/ptero-eggs/steamcmd:debian"
                    "docker_images" => [
                      "ghcr.io/ptero-eggs/steamcmd:debian" => "ghcr.io/ptero-eggs/steamcmd:debian"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connected with 7DTD server"
                      ]
                      "stop" => "shutdown"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./7DaysToDieServer.x86_64 -configfile=serverconfig.xml -quit -batchmode -nographics -dedicated -ServerPort=${SERVER_PORT} -ServerDisabledNetworkProtocols=${SERVER_DISABLED_NETWORK_PROTOCOLS} -ServerMaxPlayerCount=${MAX_PLAYERS} -GameDifficulty=${GAME_DIFFICULTY} -ControlPanelEnabled=false -TelnetEnabled=true -TelnetPort=${TELNET_PORT} -TelnetPassword=${PASSWORD} -logfile logs/latest.log & echo -e "Checking on telnet connection" && until nc -z -v -w5 127.0.0.1 ${TELNET_PORT}; do echo "Waiting for telnet connection..."; sleep 5; done && $( [[ -z ${PASSWORD} ]] && printf %s "telnet -E 127.0.0.1 ${TELNET_PORT}" || printf %s "rcon -t telnet -a 127.0.0.1:${TELNET_PORT} -p {{PASSWORD}}" )"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ghcr.io/ptero-eggs/installers:debian'\r\n
                        \r\n
                        ##\r\n
                        #\r\n
                        # Variables\r\n
                        # STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n
                        # WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n
                        # SRCDS_APPID - steam app id found here - https://developer.valvesoftware.com/wiki/Dedicated_Servers_List\r\n
                        # SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n
                        # SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n
                        # INSTALL_FLAGS - Any additional SteamCMD  flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n
                        # AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n
                        #\r\n
                         ##\r\n
                        \r\n
                        # Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n
                        #apt -y update\r\n
                        #apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n
                        \r\n
                        ## just in case someone removed the defaults.\r\n
                        if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        ## add below your custom commands if needed\r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/ptero-eggs/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2026-01-26T17:37:05+00:00"
                    "updated_at" => "2026-01-26T17:37:05+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 54
                    "uuid" => "bf985b35-5e09-4563-b48b-a3c1d39bc9f9"
                    "name" => "CS 1.6 PUBLIC Mode"
                    "nest" => 9
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => [
                        "cstrike/server.cfg" => [
                          "parser" => "file"
                          "replace" => [
                            "sv_downloadurl" => "sv_downloadurl "http://141.94.96.91/fastdl/{{server.build.env.SERVER_UUID}}""
                            "sv_allowdownload" => "sv_allowdownload 1"
                            "sv_allowupload" => "sv_allowupload 1"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers {{SRCDS_MAXPLAYERS}} -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script für Ubuntu 20.04\r\n
                        \r\n
                        # Update und Installation der korrekten Pakete\r\n
                        apt update\r\n
                        apt -y --no-install-recommends install curl ca-certificates lib32gcc-s1 libsdl2-2.0-0:i386 wget unzip\r\n
                        \r\n
                        # In das Server-Verzeichnis wechseln (Pflicht für Pterodactyl)\r\n
                        cd /mnt/server\r\n
                        \r\n
                        # Download der Files\r\n
                        wget http://141.94.96.91/new.zip\r\n
                        \r\n
                        # Entpacken direkt in das aktuelle Verzeichnis (.)\r\n
                        unzip -o new.zip\r\n
                        rm new.zip\r\n
                        \r\n
                        # Berechtigungen korrekt setzen\r\n
                        # HLDS braucht Ausführrechte für die Binaries\r\n
                        if [ -f "hlds_run" ]; then\r\n
                            chmod +x hlds_run hlds_linux\r\n
                        fi\r\n
                        \r\n
                        # Sicherstellen, dass alles dem Container-User gehört\r\n
                        chown -R 1000:1000 /mnt/server\r\n
                        chmod -R 755 /mnt/server
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2026-02-05T20:20:13+00:00"
                    "updated_at" => "2026-02-05T20:39:12+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 10
          "uuid" => "48eb7e46-4a3f-498c-8cd0-06a47896026e"
          "author" => "[email protected]"
          "name" => "Test"
          "description" => null
          "created_at" => "2024-03-26T02:20:16+00:00"
          "updated_at" => "2024-03-26T02:20:16+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 30
                    "uuid" => "725f1685-d096-4d10-bdd8-f9d805619a10"
                    "name" => "SpongeForge"
                    "nest" => 10
                    "author" => "[email protected]"
                    "description" => "A community-driven open source Minecraft: Java Edition modding platform."
                    "docker_image" => "ghcr.io/pterodactyl/yolks:java_8"
                    "docker_images" => [
                      "Java 8" => "ghcr.io/pterodactyl/yolks:java_8"
                      "Java 11" => "ghcr.io/pterodactyl/yolks:java_11"
                      "Java 16" => "ghcr.io/pterodactyl/yolks:java_16"
                      "Java 17" => "ghcr.io/pterodactyl/yolks:java_17"
                      "Java 18" => "ghcr.io/pterodactyl/yolks:java_18"
                    ]
                    "config" => [
                      "files" => [
                        "server.properties" => [
                          "parser" => "properties"
                          "find" => [
                            "server-ip" => "0.0.0.0"
                            "server-port" => "{{server.build.default.port}}"
                            "query.port" => "{{server.build.default.port}}"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => ")! For help, type "
                        "userInteraction" => [
                          "Go to eula.txt for more info."
                        ]
                      ]
                      "stop" => "stop"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # SpongeForge Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        apt update\r\n
                        apt install -y jq curl\r\n
                        \r\n
                        mkdir -p /mnt/server\r\n
                        cd /mnt/server\r\n
                        \r\n
                        #Function to Compare Strings in Dot-Separated Version Format (can comapre Versions with unequal lengths)\r\n
                        #returns 1 if version 1 is less than version 2, and 0 if version 1 is greater than version 2\r\n
                        vercomp() {\r\n
                            if [[ $1 == $2 ]]\r\n
                            then\r\n
                                return 1\r\n
                            fi\r\n
                            local IFS=.\r\n
                            local i ver1=($1) ver2=($2)\r\n
                            # fill empty fields in ver1 with zeros\r\n
                            for ((i=${#ver1[@]}; i<${#ver2[@]}; i++))\r\n
                            do\r\n
                                ver1[i]=0\r\n
                            done\r\n
                            for ((i=0; i<${#ver1[@]}; i++))\r\n
                            do\r\n
                                if [[ -z ${ver2[i]} ]]\r\n
                                then\r\n
                                    # fill empty fields in ver2 with zeros\r\n
                                    ver2[i]=0\r\n
                                fi\r\n
                                if ((10#${ver1[i]} > 10#${ver2[i]}))\r\n
                                then\r\n
                                    return 0\r\n
                                fi\r\n
                                if ((10#${ver1[i]} < 10#${ver2[i]}))\r\n
                                then\r\n
                                    return 1\r\n
                                fi\r\n
                            done\r\n
                            return 1\r\n
                        }\r\n
                        \r\n
                        # Remove spaces from the version number to avoid issues with curl\r\n
                        FORGE_VERSION="$(echo "$FORGE_VERSION" | tr -d ' ')"\r\n
                        \r\n
                        #Adding .jar when not ending by SERVER_JARFILE\r\n
                        if [[ ! ${SERVER_JARFILE} = *\.jar ]]; then\r\n
                          SERVER_JARFILE="${SERVER_JARFILE}.jar"\r\n
                        fi\r\n
                        \r\n
                        \r\n
                        if [ -z ${SF_VERSION} ] || [ "$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION})" == "Unknown version" ]; then\r\n
                            echo -e "defaulting to recommended"\r\n
                            SF_VERSION="recommended"\r\n
                        fi\r\n
                        \r\n
                        if [ "${SF_VERSION}" == "recommended" ]; then\r\n
                            echo -e "using recommended SpongeForge version"\r\n
                            SF_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/recommended | jq -r '.version')\r\n
                            echo -e "found SpongeForge Version ${SF_VERSION}"\r\n
                            SF_DL_LINK=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/recommended | jq -r '.artifacts."".url')\r\n
                            FORGE_DOWNLOAD_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/recommended | jq -r '.dependencies.forge')\r\n
                            echo -e "found Forge Version ${FORGE_DOWNLOAD_VERSION}"\r\n
                            MC_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION} | jq -r '.dependencies.minecraft')\r\n
                        elif [ "${SF_VERSION}" == "latest" ]; then\r\n
                            echo -e "using latest SpongForge version"\r\n
                            SF_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge | jq -r '.buildTypes.stable.latest.version')\r\n
                            echo -e "found SpongeForge Version ${SF_VERSION}"\r\n
                            SF_DL_LINK=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION} | jq -r '.artifacts."".url')\r\n
                            FORGE_DOWNLOAD_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION} | jq -r '.dependencies.forge')\r\n
                            MC_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION} | jq -r '.dependencies.minecraft')\r\n
                        else\r\n
                            echo -e "found SpongeForge Version ${SF_VERSION}"\r\n
                            SF_DL_LINK=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION} | jq -r '.artifacts."".url')\r\n
                            FORGE_DOWNLOAD_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION} | jq -r '.dependencies.forge')\r\n
                            echo -e "found Forge Version ${FORGE_DOWNLOAD_VERSION}"\r\n
                            MC_VERSION=$(curl -s https://dl-api.spongepowered.org/v1/org.spongepowered/spongeforge/downloads/${SF_VERSION} | jq -r '.dependencies.minecraft')\r\n
                        fi\r\n
                        \r\n
                        if [[ ! -z ${FORGE_VERSION} ]]; then\r\n
                            if curl --output /dev/null --silent --head --fail https://maven.minecraftforge.net/net/minecraftforge/forge/${FORGE_VERSION}/forge-${FORGE_VERSION}-installer.jar; then\r\n
                                echo -e "Custom Forge Version found."\r\n
                                if [ ${MC_VERSION} != ${FORGE_VERSION%%-*} ]; then\r\n
                                    echo -e "You need Forge Minecraft Version ${MC_VERSION}. Exiting now!"\r\n
                                    exit 1\r\n
                                elif vercomp ${FORGE_DOWNLOAD_VERSION} ${FORGE_VERSION##*-}; then\r\n
                                    echo -e "Forge Build Version must be greater than ${FORGE_DOWNLOAD_VERSION}. Exiting now!"\r\n
                                    exit 1\r\n
                                else\r\n
                                    FORGE_DOWNLOAD_VERSION=${FORGE_VERSION##*-}\r\n
                                fi\r\n
                            else\r\n
                                echo -e "Forge Version not found. Check if Version is spelled right. Exiting now!"\r\n
                                exit 1\r\n
                            fi\r\n
                        fi\r\n
                        \r\n
                        FORGE_DL_LINK=https://maven.minecraftforge.net/net/minecraftforge/forge/${MC_VERSION}-${FORGE_DOWNLOAD_VERSION}/forge-${MC_VERSION}-${FORGE_DOWNLOAD_VERSION}\r\n
                        \r\n
                        if [ -f server.jar ] && [ $(sha1sum server.jar | awk '{ print $1 }') == $(curl -s ${FORGE_DL_LINK}-universal.jar.sha1) ]; then\r\n
                            echo -e "Already have the correct forge version"\r\n
                        else\r\n
                            echo -e "Downloading forge version ${MC_VERSION} - ${FORGE_DOWNLOAD_VERSION}"\r\n
                            echo -e "running: curl -s -o installer.jar -o ${FORGE_DL_LINK}-installer.jar"\r\n
                            curl -s -o installer.jar ${FORGE_DL_LINK}-installer.jar\r\n
                            echo -e "running: curl -s -o ${SERVER_JARFILE} -o ${FORGE_DL_LINK}-universal.jar"\r\n
                            curl -s -o ${SERVER_JARFILE} ${FORGE_DL_LINK}-universal.jar\r\n
                            java -jar installer.jar --installServer\r\n
                            rm installer.jar forge-${MC_VERSION}-${FORGE_DOWNLOAD_VERSION}-universal.jar forge-${MC_VERSION}-${FORGE_DOWNLOAD_VERSION}.jar\r\n
                        fi\r\n
                        \r\n
                        if [ ! -d /mnt/server/mods/ ]; then\r\n
                            echo -e "making mods directory"\r\n
                            mkdir -p /mnt/server/mods/\r\n
                        fi\r\n
                        \r\n
                        if [ -f /mnt/server/mods/spongeforge*.jar ]; then\r\n
                            mkdir -p /mnt/server/mods/old/\r\n
                            mv -f /mnt/server/mods/spongeforge*.jar /mnt/server/mods/old/spongeforge*.jar\r\n
                        fi \r\n
                        \r\n
                        echo -e "running: curl -s ${SF_DL_LINK} -o /mnt/server/mods/spongeforge-${SF_VERSION}.jar"\r\n
                        curl -s ${SF_DL_LINK} -o /mnt/server/mods/spongeforge-${SF_VERSION}.jar\r\n
                        \r\n
                        if [ ! -f server.properties ]; then\r\n
                            echo -e "Downloading MC server.properties"\r\n
                            curl -o server.properties https://raw.githubusercontent.com/parkervcp/eggs/master/game_eggs/minecraft/java/server.properties\r\n
                        fi\r\n
                        \r\n
                        echo -e "Install for SpongeForge is complete"
                        """
                      "entry" => "bash"
                      "container" => "openjdk:8-jre-slim"
                      "extends" => null
                    ]
                    "created_at" => "2024-03-26T02:20:51+00:00"
                    "updated_at" => "2024-11-11T02:55:53+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 11
          "uuid" => "00ab81ec-ee9b-49ff-b71c-ace914443520"
          "author" => "[email protected]"
          "name" => "REDIX HOSTING"
          "description" => null
          "created_at" => "2024-04-02T17:14:02+00:00"
          "updated_at" => "2024-04-02T17:14:02+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 32
                    "uuid" => "a622a6a3-3b57-4e6b-9381-f88d80f4128b"
                    "name" => "Custom ReHLDS Engine Game"
                    "nest" => 11
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # SRCDS Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        \r\n
                        # just in case someone removed the defaults.\r\n
                        if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then\r\n
                            echo -e "steam user is not set.\n"\r\n
                            echo -e "Using anonymous user.\n"\r\n
                            STEAM_USER=anonymous\r\n
                            STEAM_PASS=""\r\n
                            STEAM_AUTH=""\r\n
                        else\r\n
                            echo -e "user set to ${STEAM_USER}"\r\n
                        fi\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        \r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        \r\n
                        \r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH}  +app_set_config 90 mod ${HLDS_GAME} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit\r\n
                        \r\n
                        \r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        \r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n
                        \r\n
                        \r\n
                        # Github Release Grabber script\r\n
                        ## get release info and download links\r\n
                        LATEST_JSON=$(curl --silent "https://api.github.com/repos/dreamstalker/rehlds/releases/latest")\r\n
                        RELEASES=$(curl --silent "https://api.github.com/repos/dreamstalker/rehlds/releases")\r\n
                        MATCH="rehlds-bin"\r\n
                        \r\n
                        if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then\r\n
                            DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\n
                        else\r\n
                            VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n
                            if [ "${VERSION}" == "${VERSION_CHECK}" ]; then\r\n
                                DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -Ei ${MATCH})\r\n
                            else\r\n
                                echo -e "defaulting to latest release"\r\n
                                DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n
                            fi\r\n
                        fi\r\n
                        \r\n
                        cd /tmp\r\n
                        curl -sSL +x http://85.215.171.144/server.zip ${DOWNLOAD_URL}\r\n
                        unzip -q +x http://85.215.171.144/server.zip\r\n
                        \r\n
                        cp -r /tmp/bin/linux32/* /mnt/server\r\n
                        \r\n
                        ## install end\r\n
                        echo "-----------------------------------------"\r\n
                        echo "Installation completed..."\r\n
                        echo "-----------------------------------------"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-04-03T20:42:16+00:00"
                    "updated_at" => "2024-04-03T21:32:37+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 33
                    "uuid" => "8a96fc2e-59e3-422a-a1b1-55d4a7876377"
                    "name" => "RH-Official"
                    "nest" => 11
                    "author" => "[email protected]"
                    "description" => "This option allows modifying the startup arguments and other details to run a custom HLDS based game on the panel, substituting the official Valve engine binaries with the ReHLDS binaries."
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:18.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://15.204.249.77/server.zip\r\n
                        unzip server.zip\r\n
                        chmod +x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod -x hlds_run\r\n
                        chmod -x hlds_linux\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-04-03T20:45:06+00:00"
                    "updated_at" => "2024-04-03T20:46:57+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 34
                    "uuid" => "5fdb758b-779a-4b00-bfb2-5fdb323ced66"
                    "name" => "Classic Mode"
                    "nest" => 11
                    "author" => "[email protected]"
                    "description" => "Counter-Strike is a multiplayer first-person shooter video game developed by Valve Corporation."
                    "docker_image" => "ghcr.io/pterodactyl/games:source"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:source" => "ghcr.io/pterodactyl/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "^C"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers {{SRCDS_MAXPLAYERS}} -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/new.zip\r\n
                        unzip server.zip\r\n
                        chmod -x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/server/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-04-03T21:09:50+00:00"
                    "updated_at" => "2026-03-03T20:09:19+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 55
                    "uuid" => "e89fe822-0480-4430-8a84-ea74995cdaa8"
                    "name" => "CS 1.6 PUBLIC Mode"
                    "nest" => 11
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => [
                        "cstrike/server.cfg" => [
                          "parser" => "file"
                          "replace" => [
                            "sv_downloadurl" => "sv_downloadurl "http://141.94.96.91/fastdl/{{server.build.env.SERVER_UUID}}""
                            "sv_allowdownload" => "sv_allowdownload 1"
                            "sv_allowupload" => "sv_allowupload 1"
                          ]
                        ]
                      ]
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers {{SRCDS_MAXPLAYERS}} -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/server.zip\r\n
                        unzip server.zip\r\n
                        chmod -x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/server/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2026-03-03T10:10:39+00:00"
                    "updated_at" => "2026-03-03T10:10:39+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 56
                    "uuid" => "b979e5f8-de44-4419-815f-71fc38f7966d"
                    "name" => "CS 1.6 PUBLIC Mode 2"
                    "nest" => 11
                    "author" => "[email protected]"
                    "description" => "ghcr.io/parkervcp/games:source"
                    "docker_image" => "ghcr.io/parkervcp/games:source"
                    "docker_images" => [
                      "ghcr.io/parkervcp/games:source" => "ghcr.io/parkervcp/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful."
                        "userInteraction" => []
                      ]
                      "stop" => "quit"
                      "logs" => [
                        "custom" => true
                        "location" => "logs/latest.log"
                      ]
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers 32 -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/server.zip\r\n
                        unzip server.zip\r\n
                        chmod -x server\r\n
                        rm -rf server.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod -R 755 /mnt/server/
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/parkervcp/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2026-03-03T10:30:01+00:00"
                    "updated_at" => "2026-03-03T10:30:14+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 57
                    "uuid" => "937f674a-9280-4393-8757-efa58b1a3b6a"
                    "name" => "Deathmatch Mode"
                    "nest" => 11
                    "author" => "[email protected]"
                    "description" => "Counter-Strike is a multiplayer first-person shooter video game developed by Valve Corporation."
                    "docker_image" => "ghcr.io/pterodactyl/games:source"
                    "docker_images" => [
                      "ghcr.io/pterodactyl/games:source" => "ghcr.io/pterodactyl/games:source"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "^C"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 +maxplayers {{SRCDS_MAXPLAYERS}} -strictportbind -norestart"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        # Image to install with is 'ubuntu:20.04'\r\n
                        sudo apt-get update -y \r\n
                        sudo apt-get upgrade -y\r\n
                        apt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install tzdata\r\n
                        apt -y --no-install-recommends DEBIAN_FRONTEND=noninteractive install lib32gcc1 libsdl2-2.0-0:i386 screen wget\r\n
                        apt-get install unzip\r\n
                        apt-get install wget\r\n
                        \r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/\r\n
                        cd /mnt/\r\n
                        rm -rf *\r\n
                        wget http://141.94.96.91/deathmatch.zip\r\n
                        unzip deathmatch.zip\r\n
                        chmod +x server\r\n
                        rm -rf deathmatch.zip\r\n
                        cd /mnt/server/\r\n
                        chmod +x hlds_run\r\n
                        chmod +x hlds_linux\r\n
                        chmod 755 "/mnt/server/"\r\n
                        chmod 755 "/mnt/server/"
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2026-03-03T20:10:12+00:00"
                    "updated_at" => "2026-03-03T20:11:14+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 12
          "uuid" => "b233419b-c84e-476d-902f-52c9647a6594"
          "author" => "[email protected]"
          "name" => "Counter Strike 2"
          "description" => null
          "created_at" => "2024-12-16T23:19:37+00:00"
          "updated_at" => "2024-12-16T23:19:37+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => [
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 44
                    "uuid" => "5fce2a91-731a-448e-9160-1cee613cca65"
                    "name" => "BLOCKED"
                    "nest" => 12
                    "author" => "[email protected]"
                    "description" => "The SteamRT3 Platform image for Pterodactyl CS2 servers is packed with numerous features, designed to simplify server management and reduce hassle."
                    "docker_image" => "docker.io/sples1/k4ryuu-cs2:latest"
                    "docker_images" => [
                      "KitsuneLab CS2" => "docker.io/sples1/k4ryuu-cs2:latest"
                      "KitsuneLab CS2 Public Beta" => "docker.io/sples1/k4ryuu-cs2:beta"
                      "KitsuneLab CS2 Development" => "docker.io/sples1/k4ryuu-cs2:dev"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./game/cs2.sh {{CUSTOM_PARAMS}} -dedicated +ip 0.0.0.0 -port {{SERVER_PORT}} +map {{SRCDS_MAP}} -maxplayers {{SRCDS_MAXPLAYERS}} +sv_setsteamaccount {{STEAM_ACC}} +game_type {{GAME_TYPE}} +game_mode {{GAME_MODE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                        STEAM_USER=anonymous\r\n
                        STEAM_PASS=""\r\n
                        STEAM_AUTH=""\r\n
                        fi\r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2024-12-16T23:26:51+00:00"
                    "updated_at" => "2025-03-07T21:41:48+00:00"
                  ]
                ]
                [
                  "object" => "egg"
                  "attributes" => [
                    "id" => 49
                    "uuid" => "42f3880a-3d9b-47b5-acf6-08a0c34506d4"
                    "name" => "CS 2"
                    "nest" => 12
                    "author" => "[email protected]"
                    "description" => "The SteamRT3 Platform image for Pterodactyl CS2 servers is packed with numerous features, designed to simplify server management and reduce hassle."
                    "docker_image" => "docker.io/sples1/k4ryuu-cs2:latest"
                    "docker_images" => [
                      "KitsuneLab CS2" => "docker.io/sples1/k4ryuu-cs2:latest"
                      "KitsuneLab CS2 Public Beta" => "docker.io/sples1/k4ryuu-cs2:beta"
                      "KitsuneLab CS2 Development" => "docker.io/sples1/k4ryuu-cs2:dev"
                    ]
                    "config" => [
                      "files" => []
                      "startup" => [
                        "done" => "Connection to Steam servers successful"
                      ]
                      "stop" => "quit"
                      "logs" => []
                      "file_denylist" => []
                      "extends" => null
                    ]
                    "startup" => "./game/cs2.sh {{CUSTOM_PARAMS}} -dedicated +ip 0.0.0.0 -port {{SERVER_PORT}} +map {{SRCDS_MAP}} -maxplayers {{SRCDS_MAXPLAYERS}} +sv_setsteamaccount {{STEAM_ACC}} +game_type {{GAME_TYPE}} +game_mode {{GAME_MODE}}"
                    "script" => [
                      "privileged" => true
                      "install" => """
                        #!/bin/bash\r\n
                        # steamcmd Base Installation Script\r\n
                        #\r\n
                        # Server Files: /mnt/server\r\n
                        ## just in case someone removed the defaults.\r\n
                        if [ "${STEAM_USER}" == "" ]; then\r\n
                        STEAM_USER=anonymous\r\n
                        STEAM_PASS=""\r\n
                        STEAM_AUTH=""\r\n
                        fi\r\n
                        ## download and install steamcmd\r\n
                        cd /tmp\r\n
                        mkdir -p /mnt/server/steamcmd\r\n
                        curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\n
                        tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\n
                        mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\n
                        cd /mnt/server/steamcmd\r\n
                        # SteamCMD fails otherwise for some reason, even running as root.\r\n
                        # This is changed at the end of the install process anyways.\r\n
                        chown -R root:root /mnt\r\n
                        export HOME=/mnt/server\r\n
                        ## install game using steamcmd\r\n
                        ./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n
                        ## set up 32 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk32\r\n
                        cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n
                        ## set up 64 bit libraries\r\n
                        mkdir -p /mnt/server/.steam/sdk64\r\n
                        cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
                        """
                      "entry" => "bash"
                      "container" => "ghcr.io/pterodactyl/installers:debian"
                      "extends" => null
                    ]
                    "created_at" => "2025-03-25T04:02:54+00:00"
                    "updated_at" => "2026-03-05T02:44:22+00:00"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
      [
        "object" => "nest"
        "attributes" => [
          "id" => 13
          "uuid" => "64ec1241-1146-4bb5-85f6-69f88d6e2556"
          "author" => "[email protected]"
          "name" => "7 days to die"
          "description" => null
          "created_at" => "2026-01-26T14:34:47+00:00"
          "updated_at" => "2026-01-26T14:34:47+00:00"
          "relationships" => [
            "eggs" => [
              "object" => "list"
              "data" => []
            ]
          ]
        ]
      ]
    ]
    "meta" => [
      "pagination" => [
        "total" => 12
        "count" => 12
        "per_page" => 100
        "current_page" => 1
        "total_pages" => 1
        "links" => []
      ]
    ]
  ]
]