-
-
Notifications
You must be signed in to change notification settings - Fork 7
Steam
Steam uses Manifest files to store information, however these files are localized to each Library folder. A list of all library folders is stored in the steamapps\libraryfolders.vdf
file which can be found inside the Steam installation folder.
Steam has the following default installation folders:
- (Windows) inside the x86 Program Files folder:
C:\Program Files (x86)\Steam
- (Linux) inside the
XDG_DATA_HOME
folder:~/.local/share/steam
- (Linux) inside the home folder:
~/.steam
- (Linux) inside the
.local
folder:~/.local/.steam
On Windows the path to the installation folder is also saved inside the registry key HKEY_CURRENT_USER\Software\Valve\Steam
and the value SteamPath
. On Linux you need to check these "common" install locations. They might change from user to user, so make sure to look at all of them or provide an option to set the path.
Inside the Steam installation folder is the file steamapps\libraryfolders.vdf
:
"libraryfolders"
{
"0"
{
"path" "C:\\Program Files (x86)\\Steam"
"label" ""
"contentid" "1616900521946793171"
"totalsize" "0"
"update_clean_bytes_tally" "1166255681"
"time_last_update_corruption" "0"
"apps"
{
"228980" "404262992"
"431960" "551802448"
}
}
"1"
{
"path" "M:\\SteamLibrary"
"label" ""
"contentid" "5393764431939341339"
"totalsize" "3000590397440"
"update_clean_bytes_tally" "218462908174"
"time_last_update_corruption" "1635177298"
"apps"
{
"8930" "9235434479"
"11020" "776953234"
"235460" "26431508134"
"310560" "41683047578"
"460790" "13841643176"
"527230" "2481581267"
"601150" "36376736231"
"633060" "758943020"
"646570" "541513970"
"791330" "693717502"
"1061910" "13250298903"
"1085660" "107550504047"
"1145360" "11899621797"
"1222680" "36749019616"
"1292690" "586845250"
"1619750" "1638728245"
"1942280" "134015296"
"2083070" "1832920793"
}
}
"2"
{
"path" "E:\\SteamLibrary"
"label" ""
"contentid" "6734528685854492248"
"totalsize" "500090007552"
"update_clean_bytes_tally" "58803665297"
"time_last_update_corruption" "0"
"apps"
{
"363890" "3026015338"
"374320" "26649084250"
"524220" "43318634773"
"570940" "7366427395"
"782330" "95565268921"
"814380" "14960771294"
"1096900" "1360241073"
"1113560" "25589933446"
"1237970" "68365267981"
"1245620" "52481220760"
}
}
"3"
{
"path" "F:\\SteamLibrary"
"label" ""
"contentid" "3100313048779644811"
"totalsize" "500104687616"
"update_clean_bytes_tally" "37490365800"
"time_last_update_corruption" "0"
"apps"
{
"22380" "9907238641"
"230410" "26546191365"
"262060" "3984039082"
"281990" "16426889871"
"292030" "61513260285"
"365670" "946648920"
"489830" "15345519558"
"502500" "65663762225"
"1110910" "14940657110"
"1946160" "209647143"
"1946180" "73469528"
"2007530" "209495616"
}
}
"4"
{
"path" "G:\\SteamLibrary"
"label" ""
"contentid" "5934689261387036801"
"totalsize" "240055742464"
"update_clean_bytes_tally" "0"
"time_last_update_corruption" "0"
"apps"
{
}
}
}
This file uses Valve's custom Key-Value format and contains a list of all library folders. Note: the libraries listed in the file might not exist anymore. Also make sure that you include the default library, if it's not listed in the file.
Each library folder contains a steamapps
folder, which holds all the manifest files. These App-Manifests use the .acf
extension and are stored in another custom Key-Value format:
"AppState"
{
"appid" "782330"
"Universe" "1"
"LauncherPath" "C:\\Program Files (x86)\\Steam\\steam.exe"
"name" "DOOM Eternal"
"StateFlags" "4"
"installdir" "DOOMEternal"
"LastUpdated" "1669051495"
"SizeOnDisk" "95565268921"
"StagingSize" "0"
"buildid" "8551212"
"LastOwner" "76561198110222274"
"AutoUpdateBehavior" "0"
"AllowOtherDownloadsWhileRunning" "0"
"ScheduledAutoUpdate" "0"
"InstalledDepots"
{
"782332"
{
"manifest" "6157149951972263437"
"size" "492528532"
}
"782333"
{
"manifest" "5064054091503730941"
"size" "1054"
}
"782334"
{
"manifest" "2305285962735833965"
"size" "3179376417"
}
"782335"
{
"manifest" "8036687920936023470"
"size" "1867318500"
}
"782338"
{
"manifest" "4899404039317730890"
"size" "249"
}
"782336"
{
"manifest" "6996738289805123505"
"size" "80804133251"
}
"782337"
{
"manifest" "7595167059955801744"
"size" "9196824688"
}
"782339"
{
"manifest" "283869667042213685"
"size" "25087533"
}
}
"InstallScripts"
{
"782332" "installscript.vdf"
}
"SharedDepots"
{
"228988" "228980"
"228990" "228980"
}
"UserConfig"
{
"language" "english"
}
"MountedConfig"
{
"language" "english"
}
}
Note: the installdir
value is the folder name of the game installation folder inside common
. The manifest above is from the library E:\SteamLibrary
and the installdir
value is DOOMEternal
, meaning the final installation path for the game is E:\SteamLibrary\steamapps\common\DOOMEternal
.
Other Implementations