Egg Repository

Pterodactyl Community Egg Repository

Mindustry

Mindustry is a hybrid tower-defense sandbox factory game. Create elaborate supply chains of conveyor belts to feed ammo into your turrets, produce materials to use for building, and defend your structures from waves of enemies.

Read Me

Mindustry

About the game

Mindustry is a hybrid tower-defense sandbox factory game. Create elaborate supply chains of conveyor belts to feed ammo into your turrets, produce materials to use for building, and defend your structures from waves of enemies. Features include a map editor, 24 built-in maps, cross-platform multiplayer and large-scale PvP unit battles.

You can get it from Steam

Server Port

Mindustry requires a single port

PortDefault
Game6567

Note

You can't use hostname/alias to connect your mindustry server. IPv4 must be used to connect.

Yolks
NameTag
ghcr.io/ptero-eggs/yolks:java_11ghcr.io/ptero-eggs/yolks:java_11
Variables
NameDescriptionEnvironment VariableDefault ValueUser ViewableUser Editable
VersionThe version to download. Example "v96" NOT "4.0v96" (default is latest) This would also be the github tag for the releaseVERSIONlatestYesYes
Server NameThe server name that shows up in the server list (Default: Pterodactyl Testing Server)SERVER_NAMEA Pterodactyl Hosted ServerYesYes
Map NameDefault Maps Available: Ancient Caldera, Fork, Fortress, Glacier, Islands, Labyrinth, Maze, Shattered, Tendrils, Triad, Veins, Wasteland. (Default: Tendrils)MAPNAMETendrilsYesYes
Install Script
#!/bin/bash

GITHUB_PACKAGE=Anuken/Mindustry
MATCH=server-release.jar

cd /mnt/server

if [ -z ${DOWNLOAD_LINK} ]; then
    if [ -z "${GITHUB_USER}" ] && [ -z "${GITHUB_OAUTH_TOKEN}" ] ; then
        echo -e "using anon api call"
    else
        echo -e "user and oauth token set"
        alias curl='curl -u ${GITHUB_USER}:${GITHUB_OAUTH_TOKEN} '
    fi

    ## get release info and download links
    LATEST_JSON=$(curl --silent "https://api.github.com/repos/${GITHUB_PACKAGE}/releases/latest")
    RELEASES=$(curl --silent "https://api.github.com/repos/${GITHUB_PACKAGE}/releases")

    if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
        DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq -r '.assets | .[].browser_download_url' | grep -i ${MATCH})
    else
        VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')
        if [ "${VERSION}" == "${VERSION_CHECK}" ]; then
            DOWNLOAD_LINK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})
        else
            echo -e "defaulting to latest release"
            DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)
        fi
    fi
else
    echo -e "Checking supplied download link"
    if curl --output /dev/null --silent --head --fail ${DOWNLOAD_LINK}; then
        echo -e "link is valid. setting download link to ${DOWNLOAD_LINK}"
    else
        echo -e "link is invalid closing out"
        exit 2
    fi
fi

echo -e "running: wget ${DOWNLOAD_LINK}"
wget ${DOWNLOAD_LINK}

## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"