pinkwah / steam-appmanifest

Generates appmanifest_APPID.acf files in ~/.steam/steam/SteamApps
MIT License
389 stars 43 forks source link

Another exception for disclaimer #18

Open lsh-0 opened 8 years ago

lsh-0 commented 8 years ago

they all seemed to download fine except for Civilization V, which just made an empty directory.

Endless Space behaves like this too. The download it trigger is empty (0 bytes/0 bytes downloaded) and the empty game directory. Let me know if I can help test/debug anything.

sixtyfive commented 7 years ago

Another one: You Need A Budget 4. Is there any workaround to this at all?

thorsummoner commented 7 years ago

Civ5's appmanifest file is huge, I don't know what fields are required (Them folks at valve aren't exactly open about their software or api's); I would suggest taking the time to install the game manually and close steam right after, send us the manifest file it made before it finished downloading the game; Or if that doesn't expose exactly what steam needs (It probably won't) then I'd try, copying its manifest file (appmanifest_8930.acf), delete (or move) the game, make the appmanifest file with the tool, and then add properties from your real manifest file one at a time till you find exactly what Civ5 (Or whatever game) needs, and get back to us with that; then we can add exceptions so the tool can do it automatically.


Here's a chuck of my real manifest file, I've censored some fields as I don't know if these values are sensitive or not.

"AppState"
{
    "appID"     "8930"
    "Universe"      "1"
    "name"      "Sid Meier's Civilization V"
    "StateFlags"        "4"
    "installdir"        "Sid Meier's Civilization V"
    "LastUpdated"       "1450075528"
    "UpdateResult"      "0"
    "SizeOnDisk"        "6495012312"
    "buildid"       "656471"
    "LastOwner"     "******"
    "BytesToDownload"       "4549276368"
    "BytesDownloaded"       "4549276368"
    "AutoUpdateBehavior"        "0"
    "AllowOtherDownloadsWhileRunning"       "0"
    "UserConfig"
    {
        "Language"      "english"
    }
    "MountedDepots"
    {
        ****
    }
    "DlcDownloads"
    {
        ****
    }
}
Ezehokadrim commented 7 years ago

Steam online operations uses your Steam ID 64 among others which, while unique to you, is very easy to find and not supposed to be private anyway. If you don't have a custom profile URL, it even shows up as a default URL for your profile. LastOwner is that Steam ID. MountedDepots is probably why the games like Civ V and EndlessSpace creates empty folders, because that's usually what Steam uses to know which language and game files to download. You can see which depot a game has using SteamDB (for example, Civ V's depots: https://steamdb.info/app/8930/depots/ ) and figure out most of the needed depots from there.

idontmatter commented 7 years ago

Where DO i paste it

Ezehokadrim commented 7 years ago

Sorry for taking so long responding, I didn't look at Github in a while. Once you figured out the depots you need from the SteamDB page, you should past their IDs under "MountedDepots". It has a format of "Depot ID" "Manifest ID". For example, XCOM 2's first DLC (Anarchy's Children) goes like this: "433080" "7321043562789976597" Which is valid compared to this page (at date of writing this): https://steamdb.info/depot/433080/