近日,Steam平台上一个潜藏多年的技术漏洞被用户发现并引发热议:若用户试图安装两款名称完全一致的游戏,后安装的游戏文件会覆盖先安装的,致使后者无法正常启动。这一漏洞暴露了Steam在安装目录管理机制方面的特殊设计。
这个问题是由Reddit用户maciej0s123在平台对应的板块最先报告的。巧的是,Steam平台上有两款同名的“Synergy”软件:一款是Leikir Studio在2025年推出的城市管理模拟游戏;另一款则是上线快20年的免费《半条命2》社区模组。
用户注意到,这两款软件有着相同的默认安装路径。要是先装城市建造游戏,再装《半条命2》模组,后者的可执行文件(.exe)就会把前者直接覆盖掉。这么一来,想启动先安装的城市游戏时,系统实际打开的反而是后安装的《半条命2》模组。
和Microsoft Store、Google Play、App Store等其他主流应用商店依据应用唯一ID强制分配独立安装目录的方式不一样,Steam平台把安装文件夹的命名权限交给了开发者。尽管Steam内部是通过唯一的“App ID”来辨别每一款游戏的,但安装到用户电脑里的文件夹名称一般会直接采用游戏名称本身。
在绝大多数情况下,游戏名称具备足够的区分度,所以通常不会产生问题。但要是两款不同的软件刚好选用了完全一样的名称,并且开发者没有从技术层面主动设置独特的文件夹名称,那么就可能出现安装路径重叠以及文件被覆盖的风险。Steam最初主要是为Valve自家的Source引擎游戏分发提供服务,其设计当初并没有充分考虑到如今作为一个拥有海量第三方及独立游戏的全球性平台,可能会遇到的这类极端命名冲突情况。
据报告者所述,Steam客服在接到反馈后给出了模糊的答复,表示无法透露任何关于未来修复计划的具体信息。作为临时解决办法,社区用户建议,在安装完第一款游戏后,可以手动修改该游戏安装文件夹的名称,同时同步调整Steam客户端相关配置文件(即steamapps文件夹里的installdir值)中的路径指向。
目前Steam平台上名称完全一致的游戏数量屈指可数,所以这个漏洞的影响面比较小。大家对这件事有什么看法?觉得日后随着游戏数量增多,它会造成更严重的影响吗?欢迎到评论区交流讨论。