Jump to content
šŸ›”ļøFORUMS ARE IN READ-ONLY MODE Read more... Ɨ
jumbobreakfast

Downloading workshop content to server using steamcmd?

Recommended Posts

Has there been a recent update to SteamCMD which only lets you download mods to a different folder than the Steam install directory?

Ā 

I know about a year ago, if you had the bat file pointing mod installs to any random directory (i.e. E:\Games\ArmA3\A3Files\Test), it would still install to the Steam directory (i.e. E:\Apps\Steam). Later on, they updated it so this stopped happening and it would install the mods to your specified directory. When this happened I changed the bat file to specify my Steam install directory to which it installed the mods despite it saying 'install content to a directory other than the Steam install directory'. However, recently this has stopped working for me and I've had to update the bat file to install mods to a non-Steam install directory.

Ā 

The issue here is I now have duplicate data in the Steam and Test directories. In the Steam install directory, if I were to create a SymLink 'Steamapps' folder pointing to the Test folder, would this work?

Ā 

Old bat file

Spoiler

"steamcmd.exe" +login ****** ****** +set_steam_guard_code ####Ā  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 450814997" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 497660133" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 497661914" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 541888371" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 583496184" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 583544987" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 843425103" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 843577117" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 843593391" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 843632231" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 677642222" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 743099837" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 836147398" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 893585895" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 570118882" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 1200127537" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 893339590" validate +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 893346105" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 893349825" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 893328083" validate +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 876519903" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 366425329" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 933717907" validate +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 366423278" validateĀ  +force_install_dir E:\Apps\Steam +"workshop_download_item 107410 1114015070" validate +quit

Ā 

New bat file

Spoiler

"steamcmd.exe" +login ****** ****** +set_steam_guard_code ####Ā  +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 450814997" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 497660133" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 497661914" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 541888371" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 583496184" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 583544987" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 843425103" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 843577117" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 843593391" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 843632231" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 677642222" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 743099837" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 836147398" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 893585895" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 570118882" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 1200127537" validateĀ  +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 893339590" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 893346105" validateĀ  +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 893349825" validateĀ  +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 893328083" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 876519903" validateĀ  +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 366425329" validateĀ  +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 933717907" validate +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 366423278" validateĀ  +force_install_dir E:\Games\ArmA3\A3Files\Test +"workshop_download_item 107410 1114015070" validate +quit

Ā 

Share this post


Link to post
Share on other sites

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

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Ɨ