Files
dayz-servers/modserver/update_mods.sh
2023-11-20 07:08:11 -06:00

80 lines
2.1 KiB
Bash

#!/bin/sh
#
# shellcheck disable=1090,2034
# ===================================================
# 01. Attempt to load global DayZ values
# ===================================================
echo "Starting, attempting to load globals.sh"
GLOBALS_FILE="$PWD/globals.sh"
if [ -e "$GLOBALS_FILE" ] ; then
chmod +x "$GLOBALS_FILE"
. "$GLOBALS_FILE"
else
>&2 echo "Could not load: $GLOBALS_FILE"
exit 1
fi
# ===================================================
# 02. Local script variables and checks
# ===================================================
export STEAMCMD_USER=steam
export LOCAL_STOCK_GAME="$HOME/stock/DayZ"
export LOCAL_STOCK_SERVER="$HOME/stock/DayZServer"
mkdir -p "$LOCAL_STOCK_GAME" "$LOCAL_STOCK_SERVER"
if [ "$USER" != "$STEAMCMD_USER" ] ; then
errmsg "Current user: '$USER' does not match '$STEAMCMD_USER'"
exit 1
fi
# ===================================================
# 03. Mount network drive
# ===================================================
if ! is_network_drive_mounted ; then
mount_dayz_network_drive
if ! is_network_drive_mounted ; then
errmsg "Could not mount network drive"
exit 1
fi
fi
# ===================================================
# 04. Begin functions
# ===================================================
update_server() {
msg "-------- UPDATING DAYZ SERVER -------------------"
steamcmd -tcp \
+force_install_dir "$LOCAL_STOCK_SERVER" \
+@sSteamCmdForcePlatformType windows \
+@ShutdownOnFailedCommand 1 \
+login "$STEAM_USER" \
+app_update "$DAYZ_SERVER_ID" \
+quit
is_network_drive_mounted &&
do_sync "$LOCAL_STOCK_SERVER"/ "$REMOTE_STOCK_SERVER"
msg "-------- DONE UPDATING SERVER -------------------"
# LOCAL_INSTALL_DIR="${HOME}/.steam/debian-installation/steamapps/common/DayZServer"
}
update_game() {
:
# steamcmd -tcp +login "$STEAM_USER" +app_update "$DAYZ_GAME_ID" +quit
}
main() {
update_server
# update_game
}
main "$@"
##### GARBAGE BELOW
# LOCAL_MODS_DIR="$HOME/steam_data/steamapps/workshop/content/$DAYZ_GAME_ID"
# LOCAL_SERVER_INSTALL_DIR="$HOME/steam_data/steamapps/workshop/content/$DAYZ_GAME_ID"