Schedule a Steam Download

Having a download scheduler is a must if you want to take advantage of your ISP’s (typically overnight) free off-peak period – if you’re lucky enough to have one of course! This is becoming more important as games and online media (such as podcasts) increase in size, thus eating into our woeful data caps at a great rate of bits. Well, until our ISP’s get a little creative and offer cheaper/free data from services like Steam and iTunes I suppose.

Just how big are games these days? As an example, take the last five games I grabbed off Steam: DiRT 3 is 11GB+, Need for Speed Hot Pursuit and Dead Space are both 7GB+, Medal of Honor Airborne is 6GB+ and Battlefield Bad Company 2 is 5GB+. (Yeah, I got sucked in by some good bargins lately!)

Now that's a big download!

Sadly Steam does not have a scheduler built in, so you either have to set an alarm for the middle of the night (and apologise to the missus in the morning!) or use a little craftyness to schedule a download…

The basic solution I’ve used with success is to use the Windows Task Scheduler to run a game at a set time, which triggers the download+install or update prior to the game launching. Here’s what I did,

  • Buy a game on Steam (well duh!).
  • Initiate the install and start the download, but immediately switch to your downloads list and pause it.
  • Go back to your library, find the game and click the play button (or use a start menu/desktop shortcut) to launch the game. We need to do this to get some housekeeping out of the way – sometimes when you first launch a game you get a “here’s your game key” dialogue that you have to click through first. If you don’t do this housekeeping step the scheduled process will hang on that dialogue box.
  • Click through any dialogue boxes (copying game keys etc) being sure to tick the “don’t show this again” checkbox. This should get the game downloading again (has to happen before you can play it) but immediately pause it again.
  • Start Windows Task Scheduler and create a simple task that launches the game at the start of your free off-peak period. The program you want to run is either the steam executable with the correct game id, or the game exe directly. For example, to run DiRT 3:
    C:\Games\Steam\Steam.exe -applaunch 44320
    where the “-applaunch 44320” goes in the “arguments” box in the scheduler, or,
    C:\Games\Steam\steamapps\common\dirt 3\dirt3.exe
    where your Steam install folder may of course be different. You can find the applaunch id number from a desktop shortcut – right-click the game in your library to create a shortcut, then look at the shortcut properties to see something like: “steam://rungameid/44320”. To find the game exe, look in the game folder inside the “steamapps\common” folder inside your Steam install folder.
  • Once you’ve setup your simple task to run once at the start of the free period, you should probably test it. Either set the scheduled time for a couple of minutes away and watch it execute (then reset the time afterwards), or run the task manually. If all goes well the task will run and the download will start (pause it again!).
  • Leave Steam running (even if you use the first shortcut example), check your task time, and go to bed! Now hopefully in the morning the game is installed and ready to go – or it may even be running! (but more likely you’ll see the updating dialogue that has the progress bar and “play game” button on it ready to be clicked.)

Of course if the download is slow or simply too big to complete in a short off-peak period, then you may need to check it in the morning and pause the download before the free off-peak period finishes, and repeat the task the next night.

I’ve found I need to leave Steam running as I’ve had trouble starting Steam during my ISP’s free off-peak period. This is pure speculation, but I wonder if some automated filter/prioritisation system is incorrectly seeing Steam traffic as P2P traffic or something and thus blocks/drops packets (as is known to happen on my ISP for connections to torrent trackers during the off-peak period).

So, there you go. That worked for me and allowed me to schedule a large game download overnight. 🙂

If you try it, good luck! …and let us know in the comments – or if you’ve got a better solution until they build a scheduler into Steam (but I shouldn’t hold my breath right?!)

Advertisements