|
|
@ -38,7 +38,7 @@ fn_update_localbuild() { |
|
|
|
# Gets local build info. |
|
|
|
fn_print_dots "Checking local build: ${remotelocation}" |
|
|
|
# Uses log file to get local build. |
|
|
|
localbuild=$(grep Version "${consolelogdir}"/* 2> /dev/null | tail -1 | sed 's/.*Version: //' | tr -d '\000-\011\013-\037') |
|
|
|
localbuild=$(grep -hoP 'Version:\s*\K[\d.]+' "${consolelogdir}"/* 2> /dev/null | sort -V -r | head -n1) |
|
|
|
if [ -z "${localbuild}" ]; then |
|
|
|
fn_print_error "Checking local build: ${remotelocation}: missing local build info" |
|
|
|
fn_script_log_error "Missing local build info" |
|
|
@ -51,15 +51,18 @@ fn_update_localbuild() { |
|
|
|
} |
|
|
|
|
|
|
|
fn_update_remotebuild() { |
|
|
|
# Random number for userAgent |
|
|
|
randomint=$(tr -dc 0-9 < /dev/urandom 2> /dev/null | head -c 4 | xargs) |
|
|
|
# Get remote build info. |
|
|
|
if [ "${mcversion}" == "latest" ]; then |
|
|
|
remotebuildversion=$(curl -H "Accept-Encoding: identity" -H "Accept-Language: en" -Ls -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.${randomint}.212 Safari/537.36" "https://www.minecraft.net/en-us/download/server/bedrock/" | grep -o 'https://www.minecraft.net/bedrockdedicatedserver/bin-linux/[^"]*' | sed 's/.*\///' | grep -Eo "[.0-9]+[0-9]") |
|
|
|
# Gets remote build info. |
|
|
|
apiurl="https://net-secondary.web.minecraft-services.net/api/v1.0/download/links" |
|
|
|
remotebuildresponse=$(curl -s "${apiurl}" | jq '.result.links[]') |
|
|
|
# Latest preview. |
|
|
|
if [ "${mcversion}" == "preview" ]; then |
|
|
|
remotebuildurl=$(echo "${remotebuildresponse}" | jq -r 'select(.downloadType == "serverBedrockPreviewLinux") | .downloadUrl') |
|
|
|
# Latest release. |
|
|
|
else |
|
|
|
remotebuildversion="${mcversion}" |
|
|
|
remotebuildurl=$(echo "${remotebuildresponse}" | jq -r 'select(.downloadType == "serverBedrockLinux") | .downloadUrl') |
|
|
|
fi |
|
|
|
remotebuildurl="https://www.minecraft.net/bedrockdedicatedserver/bin-linux/bedrock-server-${remotebuildversion}.zip" |
|
|
|
remotebuildversion=$(echo "${remotebuildurl}" | grep -Eo "[.0-9]+[0-9]") |
|
|
|
remotebuildfilename="bedrock-server-${remotebuildversion}.zip" |
|
|
|
|
|
|
|
if [ "${firstcommandname}" != "INSTALL" ]; then |
|
|
|
fn_print_dots "Checking remote build: ${remotelocation}" |
|
|
|