An open source voxel game engine. Play one of our many games, mod a game to your liking, make your own game, or play on a multiplayer server.
An open source voxel game engine. Play one of our many games, mod a game to your liking, make your own game, or play on a multiplayer server.
For the server to be able to stop properly you have to give the admin/console user the permission server
else you will have to kill the server and no date will be saved!
The console is currently bugged. It does work but the startup message is messed up.
A special thank you to Tealk for helping me rewrite this egg.
Name | Tag |
---|---|
Minetest | ghcr.io/ptero-eggs/games:minetest |
Name | Description | Environment Variable | Default Value | User Viewable | User Editable |
---|---|---|---|---|---|
Name of the admin player. | When running a server, clients connecting with this name are admins. | SERVER_ADMIN_NAME | changeme | Yes | Yes |
Server name | Name of the server, to be displayed when players join and in the serverlist. | SERVER_NAME | Minetest server | Yes | Yes |
Description of the server | Description of server, to be displayed when players join and in the serverlist. | SERVER_DESC | mine here | Yes | Yes |
Domain name of the server | Domain name of server, to be displayed in the serverlist. | SERVER_DOMAIN | game.minetest.net | Yes | Yes |
Server url | Homepage of server, to be displayed in the serverlist. | SERVER_URL | https://minetest.net | Yes | Yes |
Show in server list | Automatically report to the serverlist. | SERVER_ANNOUNCE | true | Yes | Yes |
Announce serverlist | Announce to this serverlist. | SERVER_LIST_URL | servers.minetest.net | Yes | Yes |
message of the day | Message of the day displayed to players connecting. | SERVER_MOTD | Yes | Yes | |
Max Players | Maximum number of players that can be connected simultaneously. | SERVER_MAX_USERS | 15 | Yes | No |
Server password | New users need to input this password. | SERVER_PASSWORD | Yes | Yes | |
World name | The name of the world | WORLD_NAME | world | Yes | Yes |
Game name | Default game when creating a new world. Only change if you have already uploaded the game! | DEFAULT_GAME | minetest | Yes | Yes |
Community download | Download a community game. Needs COMMUNITY_GAME_NAME and COMMUNITY_GAME_AUTOR | COMMUNITY_DOWNLOAD | 1 | Yes | Yes |
Community game name | Case sensitive! Example: https://content.minetest.net/packages/Wuzzy/mineclone2/ then this should be mineclone2 | COMMUNITY_GAME_NAME | minetest_game | Yes | Yes |
Community game author | Case-sensitive! Example: https://content.minetest.net/packages/Wuzzy/mineclone2/ then this should be Wuzzy | COMMUNITY_GAME_AUTOR | Minetest | Yes | Yes |
Game PATH | MINETEST_GAME_PATH | /home/container/.minetest/games | No | No |
#!/bin/bash
# Minetest Installation Script
mkdir -p /mnt/server/.minetest
apt update
apt -y install curl unzip
# Create server.log
LOG_FILE=/mnt/server/server.log
if [ -f "$LOG_FILE" ]; then
echo "Log file already exists."
else
echo "Log file does not exist. Making one..."
touch "$LOG_FILE"
fi
# Create minetest.conf
CONFIG_FILE=/mnt/server/.minetest/minetest.conf
if [ -f "$CONFIG_FILE" ]; then
echo "Config file already exists."
else
echo "Config file does not exist. Making one..."
curl -sSL -o /mnt/server/.minetest/minetest.conf.example https://raw.githubusercontent.com/minetest/minetest/master/minetest.conf.example
echo -e "## Server settings generated by pterodactyl\nname\nserver_name\nserver_description\nserver_address\nserver_url\nserver_announce\nserverlist_url\nmotd\nmax_users\nbind_address\ndefault_password\ndefault_game\n\n## Custom server settings\n" >> "$CONFIG_FILE"
fi
# Create games folder
GAMES_FOLDER=/mnt/server/.minetest/games
if [ -d "$GAMES_FOLDER" ]; then
echo "GAMES folder already exists."
else
echo "GAMES folder does not exist. Making one..."
mkdir -p $GAMES_FOLDER
fi
# Create mods folder
MOD_FOLDER=/mnt/server/.minetest/mods
if [ -d "$MOD_FOLDER" ]; then
echo "Mods folder already exists."
else
echo "Mods folder does not exist. Making one..."
mkdir -p $MOD_FOLDER
curl -sSL -o "$MOD_FOLDER"/mods_here.txt https://raw.githubusercontent.com/minetest/minetest/master/mods/mods_here.txt
fi
# Install Gamemode
if [ "$COMMUNITY_DOWNLOAD" == "1" ]; then
if ! [ -z "$COMMUNITY_GAME_NAME" ]; then
if ! [ -z "$COMMUNITY_GAME_AUTOR" ]; then
echo "Download $COMMUNITY_GAME_NAME"
D_URL=$(curl -s https://content.luanti.org/packages/$COMMUNITY_GAME_AUTOR/$COMMUNITY_GAME_NAME/ | grep -i download | grep packages | grep download | grep -o 'href=".*"' | cut -d "=" -f2- | egrep title= | awk -F' ' '{print $1}' | tr -d '"')
curl -sSL -o /mnt/server/.minetest/games.zip https://content.luanti.org/$D_URL >/dev/null 2>&1
unzip -o /mnt/server/.minetest/games.zip -d /mnt/server/.minetest/games >/dev/null 2>&1
rm /mnt/server/.minetest/games.zip
else
echo "The COMMUNITY_GAME_AUTOR variable is required to download a community game"
fi
else
echo "The COMMUNITY_GAME_NAME variable is required to download a community game"
fi
fi
# Done!
echo "Installation was successfully completed!"