Steam depot downloader utilizing the SteamKit2 library.
DepotDownloader is a command-line tool designed to download Steam depots using the SteamKit2 library. It enables efficient downloading of specific depots, workshops, and pubfiles, providing flexibility for developers and content creators.
Key features include support for .NET 8.0, comprehensive depot download capabilities with parameters for OS, architecture, and language preferences, and flexible authentication options such as username/password, QR login, or session persistence via -remember-password. The tool also integrates seamlessly with winget for easy installation.
Ideal for developers, modders, and content creators seeking to access Steam game files without installing Steam itself. DepotDownloader offers a powerful solution for efficiently downloading specific content, configuring downloads to meet individual needs, and streamlining the process through command-line interface and winget integration.
README
DepotDownloader
Steam depot downloader utilizing the SteamKit2 library. Supports .NET 8.0
This program must be run from a console, it has no GUI.
Steam ROM Manager is a super flexible tool for adding non-Steam games to steam in bulk and managing their artwork assets.
Added games could be ROMs for emulators, games from other stores such as Epic or GOG, or even not games at all.
Have you always wanted your notes from junior year as a category in steam?
If so that's pretty weird!
But now it's possible.
Extend your Steam gaming experience to your mobile device, TV, VR headset or PC - all you need is a local network or internet connection. In addition, the Steam Link app now supports Remote Play Together. Now you can join games hosted on a friend's PC just by clicking a link.
IronPython is an open-source implementation of the Python programming language which is tightly integrated with .NET. IronPython can use .NET and Python libraries, and other .NET languages can use Python code just as easily.
Steam Cleaner is a tool that will remove large amounts of data left behind by Steam, Origin, Uplay and GoG. This tool can clear up gigabytes of data in a few seconds. There is no configuration needed, simply run it and it will detect all your installed games and then some.
ASF is a C# application with primary purpose of farming Steam cards from multiple accounts simultaneously.
Unlike Idle Master which works only for one account at given time, while requiring Steam client running in the background and launching additional processes imitating "game playing" status, ASF doesn't require any Steam client running in the background, doesn't launch any additional processes and is made to handle unlimited Steam accounts at once.
In addition to that, it's meant to be run on servers or other desktop-less machines, and features full cross-OS support, which makes it possible to launch on any operating system with .
NET Core runtime, such as Windows, Linux and macOS.
ASF is possible thanks to gigantic amount of work done in marvelous SteamKit2 library.
Steam ROM Manager is a super flexible tool for adding non-Steam games to steam in bulk and managing their artwork assets.
Added games could be ROMs for emulators, games from other stores such as Epic or GOG, or even not games at all.
Have you always wanted your notes from junior year as a category in steam?
If so that's pretty weird!
But now it's possible.
Extend your Steam gaming experience to your mobile device, TV, VR headset or PC - all you need is a local network or internet connection. In addition, the Steam Link app now supports Remote Play Together. Now you can join games hosted on a friend's PC just by clicking a link.
IronPython is an open-source implementation of the Python programming language which is tightly integrated with .NET. IronPython can use .NET and Python libraries, and other .NET languages can use Python code just as easily.
Steam Cleaner is a tool that will remove large amounts of data left behind by Steam, Origin, Uplay and GoG. This tool can clear up gigabytes of data in a few seconds. There is no configuration needed, simply run it and it will detect all your installed games and then some.
ASF is a C# application with primary purpose of farming Steam cards from multiple accounts simultaneously.
Unlike Idle Master which works only for one account at given time, while requiring Steam client running in the background and launching additional processes imitating "game playing" status, ASF doesn't require any Steam client running in the background, doesn't launch any additional processes and is made to handle unlimited Steam accounts at once.
In addition to that, it's meant to be run on servers or other desktop-less machines, and features full cross-OS support, which makes it possible to launch on any operating system with .
NET Core runtime, such as Windows, Linux and macOS.
ASF is possible thanks to gigantic amount of work done in marvelous SteamKit2 library.
if set, remember the password for subsequent logins of this user. (Use -username -remember-password as login credentials)
-qr
display a login QR code to be scanned with the Steam mobile app
-no-mobile
prefer entering a 2FA code instead of prompting to accept in the Steam mobile app.
-loginid <#>
a unique 32-bit integer Steam LogonID in decimal, required if running multiple instances of DepotDownloader concurrently.
Downloading
Parameter
Description
-app <#>
the AppID to download.
-depot <#>
the DepotID to download.
-manifest
manifest id of content to download (requires -depot, default: current for branch).
-ugc <#>
the UGC ID to download.
-pubfile <#>
the PublishedFileId to download. (Will automatically resolve to UGC id)
-branch
download from specified branch if available (default: Public).
-branchpassword
branch password if applicable.
Download configuration
Parameter
Description
-all-platforms
downloads all platform-specific depots when -app is used.
-os
the operating system for which to download the game (windows, macos or linux, default: OS the program is currently running on)
-osarch
the architecture for which to download the game (32 or 64, default: the host's architecture)
-all-archs
download all architecture-specific depots when -app is used.
-all-languages
download all language-specific depots when -app is used.
-language
the language for which to download the game (default: english)
-lowviolence
download low violence depots when -app is used.
-dir
the directory in which to place downloaded files.
-filelist
the name of a local file that contains a list of files to download (from the manifest). prefix file path with regex: if you want to match with regex. each file path should be on their own line.
-validate
include checksum verification of files already downloaded.
-manifest-only
downloads a human readable manifest for any depots that would be downloaded.
-cellid <#>
the overridden CellID of the content server to download from.
-max-downloads <#>
maximum number of chunks to download concurrently. (default: 8).
-use-lancache
forces downloads over the local network via a Lancache instance.
Other
Parameter
Description
-debug
enable verbose debug logging.
-V or --version
print version and runtime.
Frequently Asked Questions
Why am I prompted to enter a 2-factor code every time I run the app?
Your 2-factor code authenticates a Steam session. You need to "remember" your session with -remember-password which persists the login key for your Steam session.
Can I run DepotDownloader while an account is already connected to Steam?
Any connection to Steam will be closed if they share a LoginID. You can specify a different LoginID with -loginid.
Why doesn't my password containing special characters work? Do I have to specify the password on the command line?
If you pass the -password parameter with a password that contains special characters, you will need to escape the command appropriately for the shell you are using. You do not have to include the -password parameter on the command line as long as you include a -username. You will be prompted to enter your password interactively.
I am getting error 401 or no manifest code returned for old manifest ids
Try logging in with a Steam account, this may happen when using anonymous account.
Steam allows developers to block downloading old manifests, in which case no manifest code is returned even when parameters appear correct.
Why am I getting slow download speeds and frequent connection timeouts?
When downloading old builds, cache server may not have the chunks readily available which makes downloading slower.
Try increasing -max-downloads to saturate the network more.
This program dumps all possible app tokens, package tokens and depot keys using your Steam account. It also reads appinfo.vdf, packageinfo.vdf, and config.vdf from the Steam client.
This program dumps all possible app tokens, package tokens and depot keys using your Steam account. It also reads appinfo.vdf, packageinfo.vdf, and config.vdf from the Steam client.
This program dumps all possible app tokens, package tokens and depot keys using your Steam account. It also reads appinfo.vdf, packageinfo.vdf, and config.vdf from the Steam client.