6

My hard drive started to fail recently. I've managed to copy almost all data to another drive, but 280 sectors (140kB) were corrupted. Since that drive also contains my Steam library, I want to check it for any corruption.

However, I don't want to right-click >200 game title's in my library, go to their properties, local data and verify the installation. Is there a way to check the integrity of all installed Steam games? Or do I have to check them one-by-one?

2
  • 1
    You can select multiple titles in Steam library by holding Shift + left mouse but unfortunately Steam only has options to "add to favorites" and "set categories" when several games are selected.
    – user598527
    Sep 1 '18 at 7:20
  • Still good to know, as my categories where gone from a unrelated experiment, thanks!
    – Zeta
    Sep 1 '18 at 7:25
5

Steam doesn't provide a way to check the integrity of all of your games at once. However, someone has made a script that you can try to run that verifies all of your games in one shot.

A link to the Reddit post can be found here. It gives an overview of what the script is. In order to run this script, you will need AutoIt. After downloading AutoIt, you can run the script. According to the post, you should be able to even see what the script is composed of as well.

The Reddit posts points out a few things to keep in mind:

  • Your computer should not be actively in use when the script is running
  • Steam windows showing the game that is being verified will still pop-up, but they should be automatically be closed upon completion. If you are using other programs with the tool running, it is possible it may close the wrong window
  • You can skip specific games if you wish by adding the games SteamId to the "validationBlacklist.txt" file in this format: 15620 20570 220240 19900 50130 50620

There is also a link to a self-contained .exe version of the script, however the link for that one does not appear to want to work (at least for me). Note that you should also be cautious when downloading files like this off the internet, so take any chances at your own risk! Also be sure to follow the instructions listed in the Reddit post. It is a bit of a lengthy one to post all of it here.

0

Here is an updated version of the script, that doesn't get confused by dlc's: https://gist.github.com/bernstein82/89384f9b7e05544e582e3b5267ad4583

also, i'd recommend installing autoit with scoop, so it can be removed without side effects.

0

Here is a way to recheck and update all installed games, on Linux, using steamcmd.

Steamcmd is closed source and updates itself from the net, similar to the Steam client; the useful thing is that it works from the CLI.

Install steamcmd from Ubuntu multiverse or https://media.steampowered.com/installer/steamcmd_linux.tar.gz. It will self-update on first run.

If some of your libraries are on removable media, check that they are all active in Steam's settings, Download section. Close Steam.

Substitute your Steam login name in the following command, and run:

steamcmd +login $mylogin $(
  steamcmd +apps_installed +quit \
  |grep -Po '(?<=^AppID )[0-9]+(?= : )' \
  |sort -V \
  |while read appid; do \
    echo +app_update "$appid" validate; done \
) +quit

The checks take some time, but should run unattended.

It's possible to get spurious errors if your connection is flaky; you can insert something like |awk 'f{print} /$lastsuccessappid/{f=1}' immediately after the |sort -V term to continue after the last successful check.

1
  • While this is a good hint for Linux users, my question is/was Windows specific (or rather: I'm not on Linux, so I can't use your awesome script :/ )
    – Zeta
    Apr 1 at 18:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.