Creating new libraries doesn't work with Steam Beta
Closed this issue · 0 comments
Steam changed the format and files used in the Steam Beta (again) so everything is broken.
There are two libraryfolders.vdf, one in \config and one in \steamapps. The one in \config appears to be the master though it's probably better to just write the same things to both of them.
The minimum content of libraryfolders.vdf for the Beta is
"libraryfolders"
{
"contentstatsid" "6865684600185564987"
"1"
{
"path" "D:\\Games\\Steam"
"label" ""
"contentid" "4387599227550003888"
"totalsize" "6001173458944"
"apps"
{
}
}
}
The minimum content of libraryfolders.vdf for the non-Beta is
"libraryfolders"
{
"contentstatsid" "6865684600185564987"
"1"
{
"path" "D:\\Games\\Steam"
"label" ""
"mounted" "1"
"contentid" "4387599227550003888"
}
}
Note that it appears that contentid
and size
must be filled out on the Beta. On the non-beta, mounted
must be filled out and 1 for the library to be seen. Adding mounted
to the Beta appears to be safe and the item is just removed. Therefore, it's probably best to fill out all items and let Steam remove what it considers invalid.
For the contentid
, the tool should go check for the presence of a libraryfolder.vdf in the Steam library folder. If this file is present, the contentid
in the two files must match or Steam will consider the library invalid. If the file is not present, generating a random number for the contentid
is probably sufficient though (1) I have no clue what the valid range is and (2) care must be taken to not collide with other contentid
values (I assume).
Additional testing shows that the contentid
in the libraryfolder.vdf overwrites the contentid
in the libraryfolders.vdf files. However if the libraryfolder.vdf is missing, the contentid
in the libraryfolders.vdf is written to the new libraryfolder.vdf. Without a valid contentid
in the libraryfolders.vdf, the Steam library will be considered invalid. A value of 1 is sufficient.