秋促那个夜,我终究没忍住,给“巫师3”付了款。下载时我还特意关了其他程序,生怕网络不稳。结果解压缩完成后,我激动地点下“开始”,屏幕闪过一道黑光,然后回到了桌面,仿佛什么也没发生。我试了三次,都一样。我甚至怀疑自己买了假游戏。
硬件与底层检查
我愣了几秒,然后开始检查配置。我的电脑不算差,i5-9400F、RTX 2060、16GB内存,固态硬盘,系统是Win10 22H2。按说运行巫师3完全没压力。我看网上有人说是Windows版本兼容性问题,于是我右键游戏exe,在兼容性里勾选了Win7模式,并勾选“以管理员身份运行”。点开游戏,仍然是一秒倒。
我接着打开事件查看器,想看看系统日志里有没有线索。在Windows日志-应用程序里,我看到一个错误来源为“Application Error”,错误模块显示为“ntdll.dll”。这通常跟驱动或内存有关。我跑了MemTest86过了两圈,内存正常。又用AIDA64拷机,CPU和显卡都稳定。硬件没问题,那问题就在软件环境上。
驱动与运行库的重置
我决定彻底重装显卡驱动。用DDU进安全模式卸载当前驱动,然后重启,安装上一版稳定的驱动(472.12,因为听说新驱动对老游戏有点问题)。装完重启,游戏依然闪退。我索性把游戏自带的运行库全重新装了一遍,包括DirectX、VC++、.NET Framework。为了这个,我还跟着网上的指导去安装了VC++合集包。
然而,这些都没有改变结局。我甚至把Steam设置里的“游戏内覆盖”关了,也试了关闭Windows的“游戏模式”和“图形加速计划”。闪退的问题像一块顽固的牛皮癣,我有点上火了。
排查后台与输入法冲突
接着我注意到许多玩家提到输入法会导致无边框游戏闪退。我将系统默认输入法调成英语(美式键盘),并且把中文输入法删了只保留一个。顺便把后台的RTSS、MSI Afterburner、Discord全部终止。我简直是裸奔运行系统,只留了Steam和游戏进程。
依然闪退。我甚至怀疑是Steam客户端本身的问题,于是我卸载Steam重装,把游戏也移到另一个盘重新下载——这花了我一整个晚上。结果第二天醒来,试图再次启动,仍然是老样子。
被忽略的罪魁祸首:遗留mod
我已经精疲力尽,准备退款了。突然想起以前在这台电脑上玩过学习版,而且装过不少MOD。虽然学习版已经删了快一年,但“我的文档”里的“The Witcher 3”文件夹可能还有残留。我打开%USERPROFILE%\Documents\,找到这个文件夹,发现里面还有一个“mods”子文件夹,里面躺着几个旧MOD的文件夹,什么FS3、HDRework之类的。我一下子就明白了——Steam版虽然不认我这个旧存档,但它仍然会读取“文档”目录下的mods文件夹!那些陈旧不兼容的MOD导致了游戏在启动时崩溃。
我马上把整个“The Witcher 3”文档文件夹改名为“The Witcher 3_old”,然后让游戏重新生成新的配置目录。再次点击开始,这次,我听到了那个熟悉的主题音乐,屏幕上出现了波兰蠢驴的Logo!我直接从椅子上跳了起来。真的就是被那几个残留MOD给坑了。
后来我慢慢地把旧存档的mod筛选了一些能用的重新放回去,但每次改动后我都会备份。现在我已经在百果园杀得飞起,回头看看这三天的折腾,也算是一次深刻的教训。
