Fix forge and implement NeoForge
All checks were successful
Docker Build and Push / build (push) Successful in 2m36s

This commit is contained in:
2025-07-22 12:32:13 -04:00
parent b0c1b07499
commit feca6cfa83

View File

@ -70,6 +70,11 @@ javaCheck() {
JAVA="java"
}
# Vanilla
getVanilla() {
echo "Not yet implemented"
}
# Paper Server
getPaper() {
SERVER_TYPE="Paper Minecraft"
@ -123,15 +128,32 @@ getFabric() {
# Forge Server
getForge() {
SERVER_TYPE="Forge Server"
LATEST_BUILD=$(curl -s https://files.minecraftforge.net/net/minecraftforge/forge/promotions_slim.json | jq -r ".promos[\"${MC_VERSION}-latest\"]")
DL_BUILD=${MC_VERSION}-${LATEST_BUILD}
DL_URL=https://maven.minecraftforge.net/net/minecraftforge/forge/$DL_BUILD/forge-$DL_BUILD-installer.jar
if [ "$LATEST_BUILD" != "null" ]; then
if [[ -n "$MC_VERSION" ]]; then
VER_MINECRAFT=$MC_VERSION
if [[ -n "$MC_LOADER_VERSION" ]]; then
VER_LOADER=$MC_LOADER_VERSION
DL_URL=https://maven.minecraftforge.net/net/minecraftforge/forge/${VER_MINECRAFT}-${VER_LOADER}/forge-${VER_MINECRAFT}-${VER_LOADER}-installer.jar
else
LATEST_BUILD=$(curl -s https://files.minecraftforge.net/net/minecraftforge/forge/promotions_slim.json | jq -r ".promos[\"${VER_MINECRAFT}-latest\"]")
VER_LOADER=$LATEST_BUILD
DL_URL=https://maven.minecraftforge.net/net/minecraftforge/forge/${VER_MINECRAFT}-${VER_LOADER}/forge-${VER_MINECRAFT}-${VER_LOADER}-installer.jar
fi
else
echo "Minecraft version not set"
exit 1
fi
if [[ -n "$DL_URL" ]]; then
echo "$DL_URL"
rm -rf server.jar
curl -o forge-install.jar ${DL_URL}
echo "$JAVA -jar forge-install.jar --installServer"
$JAVA -jar forge-install.jar --installServer
ln -s forge-${MC_VERSION}-${LATEST_BUILD}-shim.jar server.jar
ln -s forge-${VER_MINECRAFT}-${VER_LOADER}.jar server.jar
touch server.properties
rm -f user_jvm_args.txt
@ -141,10 +163,50 @@ getForge() {
rm -f run.bat
rm -f run.sh
else
echo "TODO ERROR TEXT"
echo "No Valid Download URL"
fi
}
# Neoforge
getNeoForge() {
SERVER_TYPE="NeoForge Server"
if [[ -n "$MC_VERSION" ]]; then
VER_MINECRAFT=$MC_VERSION
if [[ -n "$MC_LOADER_VERSION" ]]; then
VER_LOADER=$MC_LOADER_VERSION
DL_URL=https://maven.neoforged.net/releases/net/neoforged/neoforge/$VER_LOADER/neoforge-$VER_LOADER-installer.jar
else
echo "Minecraft version not set"
exit 1
fi
fi
if [[ -n "$DL_URL" ]]; then
echo "$DL_URL"
rm -rf server.jar
curl -o neoforge-$VER_LOADER-installer.jar ${DL_URL}
$JAVA -jar neoforge-$VER_LOADER-installer.jar --installServer --server.jar
mv server.jar neoforge-$VER_LOADER.jar
ln -s neoforge-$VER_LOADER.jar server.jar
touch server.properties
rm -f user_jvm_args.txt
rm -f neoforge-$VER_LOADER-installer.jar
rm -f neoforge-$VER_LOADER-installer.jar.log
rm -f README.txt
rm -f run.bat
rm -f run.sh
else
echo "No Valid Download URL"
fi
}
# Server route choice
serverSelect() {
mkdir -p /data/server
@ -163,6 +225,9 @@ serverSelect() {
forge)
getForge
;;
neoforge)
getNeoForge
;;
*)
echo "Server of type ${MC_LOADER} is not recognized."
crash