Egg Repository

Pterodactyl Community Egg Repository

MohistMC

Spigot fork with performance optimizations.

Read Me

Mohist

Mohist is a minecraft forge server software that implements the Paper/Spigot/Bukkit API.

Mohist Website

Server Ports

The minecraft server requires a single port for access (default 25565) but plugins may require extra ports to enabled for the server.

Port default
Game 25565

Server Specific

Supported versions

  • 1.16.4 series build 132+
  • 1.12.x series
  • 1.7.x series (discontinued) build 13+

Requires changing Minecraft_Version variable on each new Minecraft version release.

Yolks
NameTag
Java 8ghcr.io/ptero-eggs/yolks:java_8
Java 11ghcr.io/ptero-eggs/yolks:java_11
Java 16ghcr.io/ptero-eggs/yolks:java_16
Java 17ghcr.io/ptero-eggs/yolks:java_17
java 21ghcr.io/ptero-eggs/yolks:java_21
java 22ghcr.io/ptero-eggs/yolks:java_22
Variables
NameDescriptionEnvironment VariableDefault ValueUser ViewableUser Editable
Server Jar FileThe name of the jarfile to run the server with.SERVER_JARFILEserver.jarYesNo
Minecraft VersionThe version of Minecraft to download.MC_VERSION1.20.1YesYes
Build NumberOptional: The build number for the Mohist release. Overrides Build Type.BUILD_NUMBERYesYes
ProjectThe type of version to download.PROJECTmohistYesYes
Download PathA URL to use to download a server.jar rather than the ones in the install script. This is not user viewable.DL_PATHNoNo
Install Script
#!/bin/ash
# MohistMC Installation Script
#
# Server Files: /mnt/server

if [ -n "${DL_PATH}" ]; then
	echo -e "Using supplied download url: ${DL_PATH}"
	DOWNLOAD_URL=`eval echo $(echo ${DL_PATH} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
else
	VER_EXISTS=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT} | jq -r --arg version ${MC_VERSION} '.versions | index($version)'`
	LATEST_VERSION=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT} | jq -r '.versions[-1]'`

	if [ "${VER_EXISTS}" != "null" ]; then
		echo -e "Version is valid. Using version ${MC_VERSION}"
	else
		echo -e "Specified version not found. Defaulting to the latest ${PROJECT} version"
		MC_VERSION=${LATEST_VERSION}
	fi

	BUILD_EXISTS=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT}/${MC_VERSION}/builds | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep -m1 true`
	LATEST_BUILD=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT}/${MC_VERSION}/builds | jq -r '.builds[-1]' | jq -r '.number'`

	if [ "${BUILD_EXISTS}" == "true" ] && [ "${BUILD_EXISTS}" != "null" ]; then
		echo -e "Build is valid for version ${MC_VERSION}. Using build ${BUILD_NUMBER}"
	else
		echo -e "Using the latest ${PROJECT} build for version ${MC_VERSION}"
		BUILD_NUMBER=${LATEST_BUILD}
	fi

	JAR_NAME=${PROJECT}-${MC_VERSION}-${BUILD_NUMBER}.jar

	echo "Version being downloaded"
	echo -e "MC Version: ${MC_VERSION}"
	echo -e "Build: ${BUILD_NUMBER}"
	echo -e "JAR Name of Build: ${JAR_NAME}"
	DOWNLOAD_URL=https://mohistmc.com/api/v2/projects/${PROJECT}/${MC_VERSION}/builds/${BUILD_NUMBER}/download
fi

cd /mnt/server

echo -e "Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}"

if [ -f ${SERVER_JARFILE} ]; then
	mv ${SERVER_JARFILE} ${SERVER_JARFILE}.old
fi

curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}