diff --git a/README.md b/README.md index 733b654..9270623 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,6 @@ Packed in Modrinth format, because [Modrinth](https://modrinth.com) is the super Every time a commit is pushed to this repo, a version of the pack is automatically generated, which can be found [here](https://patience.nearmisses.xyz/SergeantAcoustic/tinkers_tinkering/actions/workflows/build-1.21.yaml/runs/latest) (`MC_Rebalance_2.mrpack` below Artifacts). ### Export script -To create a release yourself, run [./export-pack.sh](export-pack.sh) - -* It will be generated in [release/Tinker's tinkering.mrpack](Tinker's%20tinkering.mrpack) +* To create a release yourself, run [./export-pack.sh](export-pack.sh) +* This is also generate a server pack +* When it's done both can be found in `release/` diff --git a/export-pack.sh b/export-pack.sh index 9cfd261..e1223a5 100755 --- a/export-pack.sh +++ b/export-pack.sh @@ -1,8 +1,7 @@ #!/bin/bash ## Dependencies (arch/debian package names, may differ elsewhere): -## bash, coreutils (dirname, mkdir, rm, cp), git, zip, findutils (find) -## jq is optional +## bash, coreutils (dirname, mkdir, rm, cp), git, zip, findutils (find), curl, wget, jq check_dep() { if ! [ -x "$(command -v $1)" ]; then echo "You need to install ${2:-$1}" @@ -14,6 +13,9 @@ check_dep dirname coreutils check_dep git check_dep zip check_dep find findutils +check_dep curl +check_dep wget +check_dep jq # Navigate to main modpack project directory cd "$(dirname "$0")" @@ -22,20 +24,24 @@ basedir="$PWD" # Location for downloading/updating the mc_rebalance mod if [ ! -d deps ]; then mkdir deps -fi; +fi # Location for saving the mc_rebalance mod if [ ! -d overrides/mods ]; then mkdir -p overrides/mods -fi; +fi + +# Location for saving all other mods +rm -rf deps/mods +mkdir -p deps/mods # Clone the mod repo, if it already exists then update it -echo "# Cloning/updating mod" +echo "# Cloning/updating MC Rebalance mod" git clone --single-branch --branch 1.21 "https://patience.nearmisses.xyz/patience/mc_rebalance.git" "${basedir}/deps/mc_rebalance" 2> /dev/null || \ (cd "${basedir}/deps/mc_rebalance"; git pull > /dev/null) # Compile the mod -echo "# Compiling mod" +echo "# Compiling MC Rebalance mod" rm -f "${basedir}/deps/mc_rebalance/build/libs/mc_rebalance-"*".jar" (cd "${basedir}/deps/mc_rebalance/" && ./gradlew build > /dev/null) @@ -49,19 +55,39 @@ cp "$(find "${basedir}/deps/mc_rebalance/build/libs" -regex "${basedir}/deps\/mc # Final path for the modpack if [ ! -d release ]; then mkdir release -fi; +fi # Get version from the mrpack file version="$(jq -r ".versionId" modrinth.index.json)" version="${version:-dev}" -# Export release to file -echo "# Zipping mod" +# Download fabric server +if [ ! -e "${basedir}/deps/fabric-server.jar" ]; then + echo "# Downloading fabric server" + (cd deps && curl --silent --output fabric-server.jar https://meta.fabricmc.net/v2/versions/loader/1.21.1/0.19.2/1.1.1/server/jar) +fi + +# Download all mods +echo "# Downloading mods from modrinth.index.json for modpack" +(cd deps/mods && wget --quiet --input-file <(jq -r '.files[] | select(.env.server=="required") | .downloads[]' ../../modrinth.index.json)) + +# Export client release to file +echo "# Zipping client modpack" zip --filesync --recurse-paths --quiet "${basedir}/release/MC_Rebalance_${version}.mrpack" overrides modrinth.index.json -x "*.git*" -x "*.sh" +# Export server release to file +echo "# Zipping server modpack" +if [ -e "${basedir}/release/MC_Rebalance_${version}_server.zip" ]; then + rm -rf "${basedir}/release/MC_Rebalance_${version}_server.zip" +fi +(cd deps && zip --recurse-paths --quiet "${basedir}/release/MC_Rebalance_${version}_server.zip" mods fabric-server.jar) +(cd server-files && zip --recurse-paths --quiet "${basedir}/release/MC_Rebalance_${version}_server.zip" .) +(cd overrides && zip --recurse-paths --quiet "${basedir}/release/MC_Rebalance_${version}_server.zip" . -x "*.git*" -x "*.sh") + echo if [ $? -eq 0 ]; then - echo "Successfully exported the modpack to ${basedir}/release/MC_Rebalance_${version}.mrpack" + echo "Successfully exported the server modpack to ${basedir}/release/MC_Rebalance_${version}_server.zip" + echo "Successfully exported the client modpack to ${basedir}/release/MC_Rebalance_${version}.mrpack" else echo "An unknown error occured while zipping the pack" fi diff --git a/modrinth.index.json b/modrinth.index.json index e324caf..3de65f9 100644 --- a/modrinth.index.json +++ b/modrinth.index.json @@ -374,7 +374,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 9907, "hashes": { @@ -389,7 +389,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 83422, "hashes": { @@ -434,7 +434,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 12432, "hashes": { @@ -509,7 +509,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 100151, "hashes": { @@ -569,7 +569,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 31382, "hashes": { @@ -614,7 +614,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 1297761, "hashes": { @@ -629,7 +629,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 373661, "hashes": { @@ -644,7 +644,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 81067, "hashes": { @@ -674,7 +674,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 84035, "hashes": { @@ -689,7 +689,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 102285, "hashes": { @@ -704,7 +704,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 1560675, "hashes": { @@ -764,7 +764,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 863192, "hashes": { @@ -779,7 +779,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 83679, "hashes": { @@ -794,7 +794,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 79531, "hashes": { @@ -899,7 +899,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 62761, "hashes": { @@ -914,7 +914,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 496342, "hashes": { @@ -929,7 +929,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 728221, "hashes": { @@ -944,7 +944,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 75984, "hashes": { @@ -959,7 +959,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 217532, "hashes": { @@ -989,7 +989,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 274019, "hashes": { @@ -1079,7 +1079,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 98232, "hashes": { @@ -1109,7 +1109,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 17456, "hashes": { @@ -1214,7 +1214,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 9136, "hashes": { @@ -1229,7 +1229,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 9862, "hashes": { @@ -1259,7 +1259,7 @@ ], "env": { "client": "required", - "server": "required" + "server": "unsupported" }, "fileSize": 75091, "hashes": { diff --git a/server-files/start.bat b/server-files/start.bat new file mode 100644 index 0000000..697d205 --- /dev/null +++ b/server-files/start.bat @@ -0,0 +1 @@ +java -Xmx3G -jar fabric-server.jar --nogui diff --git a/server-files/start.sh b/server-files/start.sh new file mode 100755 index 0000000..e44ca26 --- /dev/null +++ b/server-files/start.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +java -Xmx3G -jar fabric-server.jar --nogui