mirror of
https://github.com/aclist/dztui.git
synced 2024-12-28 21:32:36 +01:00
Add mod validation method
This commit is contained in:
parent
0f4dbed599
commit
aac5fb656c
1 changed files with 21 additions and 3 deletions
24
dztui.sh
24
dztui.sh
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -eo pipefail
|
set -eo pipefail
|
||||||
version=0.2.2
|
version=0.2.3
|
||||||
aid=221100
|
aid=221100
|
||||||
game="dayz"
|
game="dayz"
|
||||||
workshop="https://steamcommunity.com/sharedfiles/filedetails/?id="
|
workshop="https://steamcommunity.com/sharedfiles/filedetails/?id="
|
||||||
|
@ -173,7 +173,7 @@ auto_mod_install(){
|
||||||
elif
|
elif
|
||||||
command -v steamcmd &>/dev/null
|
command -v steamcmd &>/dev/null
|
||||||
[[ $? -eq 1 ]]; then
|
[[ $? -eq 1 ]]; then
|
||||||
err "steamcmd not found. See: https://developer.valvesoftware.com/wiki/SteamCMD"
|
err "steamcmd not installed. See: https://developer.valvesoftware.com/wiki/SteamCMD"
|
||||||
else
|
else
|
||||||
printf "[INFO] Found steamcmd user. Downloading mods\n"
|
printf "[INFO] Found steamcmd user. Downloading mods\n"
|
||||||
revert_msg="Something went wrong. Reverting to manual mode"
|
revert_msg="Something went wrong. Reverting to manual mode"
|
||||||
|
@ -192,9 +192,27 @@ passed_mod_check(){
|
||||||
launch
|
launch
|
||||||
|
|
||||||
}
|
}
|
||||||
|
check_workshop(){
|
||||||
|
curl -Ls "$url${modlist[$i]}" | grep data-appid | awk -F\" '{print $8}'
|
||||||
|
}
|
||||||
|
validate_mods(){
|
||||||
|
url="https://steamcommunity.com/sharedfiles/filedetails/?id="
|
||||||
|
aid=221100
|
||||||
|
tput civis
|
||||||
|
newlist=()
|
||||||
|
readarray -t modlist <<< $remote_mods
|
||||||
|
for ((i=0;i<=${#modlist[@]};i++)); do
|
||||||
|
printf "[INFO] Verifying integrity of server modlist manifest [$i/${#modlist[@]}]\r"
|
||||||
|
[[ $(check_workshop) -eq $aid ]] && newlist+=("${modlist[$i]}") || :
|
||||||
|
sleep 2s
|
||||||
|
done
|
||||||
|
tput cnorm
|
||||||
|
printf "\n"
|
||||||
|
}
|
||||||
compare(){
|
compare(){
|
||||||
fetch_mods
|
fetch_mods
|
||||||
diff=$(comm -23 <(echo -e "$remote_mods" | sort) <(installed_mods | sort))
|
validate_mods
|
||||||
|
diff=$(comm -23 <(echo -e "${newlist[@]}" | sort) <(installed_mods | sort))
|
||||||
}
|
}
|
||||||
connect(){
|
connect(){
|
||||||
compare
|
compare
|
||||||
|
|
Loading…
Reference in a new issue