|
|
|
@ -207,6 +207,21 @@ namespace DepotDownloader
|
|
|
|
if (depotChild == KeyValue.Invalid)
|
|
|
|
if (depotChild == KeyValue.Invalid)
|
|
|
|
return INVALID_MANIFEST_ID;
|
|
|
|
return INVALID_MANIFEST_ID;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (depotChild["depotfromapp"] != KeyValue.Invalid)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
uint otherAppId = (uint)depotChild["depotfromapp"].AsInteger();
|
|
|
|
|
|
|
|
if (otherAppId == appId)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
// This shouldn't ever happen, but ya never know with Valve. Don't infinite loop.
|
|
|
|
|
|
|
|
Console.WriteLine("App {0}, Depot {1} has depotfromapp of {2}!",
|
|
|
|
|
|
|
|
appId, depotId, otherAppId);
|
|
|
|
|
|
|
|
return INVALID_MANIFEST_ID;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
steam3.RequestAppInfo(otherAppId);
|
|
|
|
|
|
|
|
return GetSteam3DepotManifest(depotId, otherAppId, branch);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
var manifests = depotChild["manifests"];
|
|
|
|
var manifests = depotChild["manifests"];
|
|
|
|
var manifests_encrypted = depotChild["encryptedmanifests"];
|
|
|
|
var manifests_encrypted = depotChild["encryptedmanifests"];
|
|
|
|
|
|
|
|
|
|
|
|
@ -246,10 +261,6 @@ namespace DepotDownloader
|
|
|
|
if (node.Value == null)
|
|
|
|
if (node.Value == null)
|
|
|
|
return INVALID_MANIFEST_ID;
|
|
|
|
return INVALID_MANIFEST_ID;
|
|
|
|
|
|
|
|
|
|
|
|
// These are broken and don't care enough to figure out why at the moment
|
|
|
|
|
|
|
|
if (depotChild["depotfromapp"] != KeyValue.Invalid)
|
|
|
|
|
|
|
|
return INVALID_MANIFEST_ID;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return UInt64.Parse(node.Value);
|
|
|
|
return UInt64.Parse(node.Value);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|