zeropingheroes / lancache-autofill

Automatically fill a Lancache with content
GNU General Public License v3.0
132 stars 24 forks source link

Is there a way to add full library to queue ? #53

Open j3ws3r opened 3 years ago

j3ws3r commented 3 years ago

I can only see the following list: image

Is there a way to add a full library of an user to queue?

While on that I got additional questions: How can I automatically add game updates to the queue and start the download? I cannot see any function for that or am I missing something?

Or do I need to build shell script to execute these commands ?

billthecatt commented 3 years ago

I have a bash script that looks something like this:

./lancache-autofill steam:queue-app 730 --windows=true

add DOD:S 300

./lancache-autofill steam:queue-app 300 --windows=true

add DOTA2 570

./lancache-autofill steam:queue-app 570 --windows=true

add Half-Life 2 220

./lancache-autofill steam:queue-app 220 --windows=true

add ns2

./lancache-autofill steam:queue-app 4920 --windows=true

add Rise of Nations 287450

./lancache-autofill steam:queue-app 287450 --windows=true

add insurgency sandstorm 581320 41G

./lancache-autofill steam:queue-app 581320 --windows=true

add tf2 25G

./lancache-autofill steam:queue-app 440 --windows=true

add torchlight II 200710

You get the steamIDs you want and queue them as needed, then start the download with: ./lancache-autofill steam:start-downloading

The way this program works, it deletes the entire contents of the game from the drive after downloading, so I'm not sure what/how it could update content that's not there anymore, even if linux steamcmd knew about windows updates, which, I'm not exactly sure it does..

I have my windows clients pointed at the cache, so if one of them downloads the patches, it'll be in the cache for all the rest of your clients.

Hope this helps, have fun.

Jerrk commented 2 years ago

i saw the pull request to deal with this issue, but since it hasn't been accepted yet and if you need this functionality ASAP, the below method worked for me.

modifying line 42 in the script i found here to f.write("./lancache-autofill steam:queue-app {} --windows=true\n#add {} to queue\n".format(id, name))

this gave me a similar bash script as @billthecatt

...
./lancache-autofill steam:queue-app 32370 --windows=true
#add STAR WARS™: Knights of the Old Republic™ to queue
./lancache-autofill steam:queue-app 32420 --windows=true
#add STAR WARS™: The Clone Wars - Republic Heroes™ to queue
./lancache-autofill steam:queue-app 32500 --windows=true
#add STAR WARS™: The Force Unleashed™ II to queue
...

just ran that once and then started downloading my entire library.

tpill90 commented 2 years ago

Since this app seems to not be actively developed, you could also take a look at my project https://github.com/tpill90/steam-lancache-prefill It supports what you're looking for out of the box, just passing along --all to the prefill command will start prefilling your entire steam library.