Steam设置里游戏下载不动?我折腾了一下午终于找到原因

引言: 那个让我想砸电脑的周末

周六早上本来想趁着Steam夏季促销好好玩几把,结果打开《命运2》准备下个DLC,发现下载进度条死活不动。点了暂停再开始,还是0%。重启Steam,重启电脑,甚至拔了网线重插,一点用都没有。那个烦躁劲儿啊,简直想直接把电脑从窗户扔出去。冷静下来之后我决定自己动手,反正官网上那些“联系客服”也没啥用。下面就是我一整个下午的血泪排查史。

问题初现: 游戏内下载纹丝不动

我遇到的情况是:Steam客户端正常,其他游戏更新都没问题,唯独在特定游戏里(比如《使命召唤》战区更新)下载完全不走。进度条始终灰的,有时还提示“正在连接到内容服务器”然后就超时。最气人的是,偶尔动一下,又立马停住,速度变成0。我当时第一反应是网络问题,但测速飞快,网页、视频都正常,这就奇怪了。

排查第一步: Steam下载设置

我先把Steam设置翻了个底朝天。首先是“下载”页签里的区域设成中国,但之前看网上有人说改成香港或者韩国会更快,我就试了试,结果不仅没变快,反而直接报错。看来区域设置不是万能的。然后看限速,我明明没开限速,但“限速”那一栏显示的是“无限制”。我试着手动输入一个数字再改回来,想着刷新一下设置,没用。还有个选项叫“在下载期间启用Chrome游戏通知”之类的,关了也没反应。最后我发现“下载缓存”这个功能,如果开启了本地缓存,可能会跟当前下载冲突。我果断把缓存文件夹清空并关掉该功能,总算有了点起色——进度条终于动了,虽然只有几百KB。

排查第二步: 网络相关设置

既然Steam内部设置没完全解决,我开始怀疑是网络环境问题。我电脑挂的有线,也试了Wi-Fi,都一样。我怀疑是代理或者VPN的问题,虽然我平时不用,但一不小心Steam可能走了系统代理。我打开系统代理设置,确保“使用代理服务器”是关的。另外,我还检查了hosts文件,看看有没有奇怪的条目把Steam的CDN给劫持了。结果发现hosts里干干净净。不过我听说Steam的下载节点有时候会抽风,我就又去“下载”设置里把下载节点换成了另一个城市,比如从上海换成北京。改完之后,下载速度开始有波动了,但依然不稳定,经常掉到0。

排查第三步: 防火墙和权限

接下来我怀疑是防火墙或者杀毒软件在捣鬼。我用的是Windows自带的Defender,外加Steam正版。我先去“允许的应用程序”里确认Steam和SteamWebHelper都允许通过。然后我还特意试了一下暂时关掉实时保护,果然,下载立刻飚起来。看来是Defender实时扫描太敏感了。我就把Steam的整个安装目录以及游戏目录都加入了排除项。但要注意,我后来发现如果排除项太多也会影响性能,所以只排除steam.exe、steamwebhelper.exe以及需要下载的游戏文件夹。做完这一步,下载总算稳定了,虽然速度不是满速,但至少不会停。

排查第四步: 清除缓存与文件修复

虽然能下了,但速度一直上不去,我怀疑是Steam的下载缓存有损坏。于是我在设置里点了“清除下载缓存”(在“下载”页签的最下面)。这个操作会强制Steam重新生成缓存文件,并且可能要重新登录。狠了狠心点了下去,重启Steam后,居然发现之前下载中断的游戏需要重新验证文件完整性。验证完后重新开始下载,速度直接飙到满速!而且再也没有卡住过。后面我又检查了磁盘格式,之前有人说在FAT32分区上下载会出问题,我的是NTFS,没问题。磁盘剩余空间也充足,但有些游戏下载需要临时空间,所以确保至少有20GB空余。

最终解决与心得

现在我的Steam下载一切正常,即使是游戏内更新也嗖嗖的。其实后来我总结了一下,最根本的元凶就是Windows防火墙的实时扫描以及Steam下载缓存文件的损坏。如果你也遇到“游戏中下载不了”的奇葩问题,不妨按我这个顺序走一遍:关闭无关的代理,清除Steam下载缓存,把Steam加入防火墙排除列表,再检查一下下载节点区域。不要一开始就怀疑自己网络不行,很多时候就是软件之间的小冲突。弄完之后看着那流畅的下载条,心情顿时舒畅多了,周末总算没浪费!