If anyone is still interested in downloading collections, I have a small script (which is for linux, but should be adaptable to windows)
Here is the interesting stuff:
if [ -n "$WSCOLLECTIONID" ]; then
mapfile -t WS_IDS < <(curl -s https://steamcommunity.com/sharedfiles/filedetails/?id="${WSCOLLECTIONID}" | grep "https://steamcommunity.com/sharedfiles/filedetails/?id=" | grep -Eoi '<a [^>]+>' | tail -n +2 | grep -Eo 'href="[^\"]+"' | awk -F'"' '{ print $2 }'|awk -F'=' '{ print $2 }')
fi
for workshop_item in "${WS_IDS[@]}"; do
modname="$(curl -s https://steamcommunity.com/sharedfiles/filedetails/?id="${workshop_item}" | grep "<title>" | sed -e 's/<[^>]*>//g' | cut -d ' ' -f 4-)"
modname_clean=$(echo "$modname" | dos2unix)
counter=1
printf "Downloading %s \n" "$modname_clean"
until steamcmd +login "${STEAMUSER}" "${STEAMPASS_decrypted}" +workshop_download_item 107410 "${workshop_item}" validate +quit; do
printf "Error Downloading %s. Will try again \n" "$modname_clean"
counter++
if ((counter > 4)); then
exit 1
fi
done
if [ ! -L "${home}/mods/@${modname_clean}" ]; then
ln -s "${home}/.steam/steamapps/workshop/content/107410/${workshop_item}/" "${home}/mods/@${modname_clean}"
fi
done
Source:
https://github.com/michaelsstuff/Arma3-stuff/tree/22fde3f14590d0d52a2fb198334d250af20ebd34/mod-sync