diff --git a/DepotDownloader/ContentDownloader.cs b/DepotDownloader/ContentDownloader.cs index ad1f9dc5..caa50eba 100644 --- a/DepotDownloader/ContentDownloader.cs +++ b/DepotDownloader/ContentDownloader.cs @@ -603,10 +603,17 @@ namespace DepotDownloader return null; } - // For depots that are proxied through depotfromapp, we still need to resolve the proxy app id + // For depots that are proxied through depotfromapp, we still need to resolve the proxy app id, unless the app is freetodownload var containingAppId = appId; var proxyAppId = GetSteam3DepotProxyAppId(depotId, appId); - if (proxyAppId != INVALID_APP_ID) containingAppId = proxyAppId; + if (proxyAppId != INVALID_APP_ID) + { + var common = GetSteam3AppSection(appId, EAppInfoSection.Common); + if (common == null || !common["FreeToDownload"].AsBoolean()) + { + containingAppId = proxyAppId; + } + } return new DepotDownloadInfo(depotId, containingAppId, manifestId, branch, installDir, depotKey); }