Tuesday 15 November 2016

Schedule Steam Downloads

14:32 Posted by Jurgens Krause , , , , , , , 4 comments
I have a capped internet account, but my ISP allows unlimited downloads between midnight and 6am, how can I set Steam to only download during the off peak time?

Steam already allows you to configure updates to run at certain times, why it does not allow the same for game downloads, I don't know.

This guide will help you set up a workaround using Windows Task Scheduler to handle your downloads.

It does have a limitation though. It works by starting and killing the Steam client when the time thresholds are reached. This means that if you want to play a game during the day, you will have to pause the downloads when you start the Steam client.

Step 1:

Start your download using Steam. You should immediately pause the download after it starts:

Step 2: 

Open up Notepad and paste the following text:
start steam://
timeout /t 21600 /nobreak
TASKKILL /f /im "steam.exe"

The timeout is a value, in seconds, for how long Steam will be allowed to run. 21600 is exactly six hours.
1H = 3600s
2H = 7200s
4H = 14400s
6H = 21600s

Step 3:

Save the file with the filename "steamdl.cmd" at an easy to find location:

Note that the filename is in quotes, this is to ensure that Notepad saves it with the *.cmd extension

Step 4:

Open up Windows Task Scheduler:

Click on "Create Basic Task":

Give it a suitable name and description:

Click next, and configure the trigger, you will have to decide wen you would like the task to run, for me it is midnight, every night, then click next:

Select "Start a program" as the action and click next:

Click "Browse" and navigate to your script:
Click next, and click finish to complete the task configuration.

Step 5:

Go back to your Steam Client and resume the download, after that, immediately close your Steam Client:

Your Steam client will now start up at midnight, run for 6 hours and quit itself!

Remember to pause downloads if you use the Steam client outside of the scheduled hours, and remember to resume them and exit the Steam client before going to bed!