这个事儿我干过不止一回,说起来全是泪。头一次是把一个十几G的3A大作从宿舍台式机挪到笔记本上,下的时候记得很清楚,复制粘贴,进度条跑完,拔U盘,插新电脑,双击图标,结果连个闪屏都没有,直接弹了个“无法启动此程序,因为计算机中丢失xxx.dll”的框。当时我还纳闷,明明文件都在,一个没少,怎么就不行呢。
后来折腾多了才明白,咱们想当然以为游戏就是个文件夹,拷过去就能玩,但Windows压根不是这么想的。游戏不是丢在桌面上的一张照片,它是个浑身带钩子的东西,安装的时候早就在系统里埋了一堆看不见的线。
最要命的是注册表。这东西说白了就是Windows的户口本,你装任何一个正规游戏,它都会在注册表里记上一笔,写着游戏在哪个盘、主程序叫什么、需要什么参数。你光把游戏文件夹塞进U盘,注册表里干干净净,新电脑压根不知道有这么个玩意儿存在,你双击exe,系统查了半天发现查无此人,直接摆手不干。有些游戏更刁钻,启动那一刻还会重新读注册表去校验路径,发现对不上号,干脆罢工。
再有就是那些运行库。DirectX、VC++运行库、.NET Framework,听着都头大,但每个游戏安装的时候都会把它们一并装好,就像是给车配好了油和零件。你只把车壳子搬过去了,发动机零件全留在原来的电脑上,新电脑的配置要是差了点,或者系统精简过少了这些组件,那游戏根本跑不起来。我记得有个老游戏,移植过来怎么都打不开,后来装了VC++ 2005的那个补丁包,一下就活了,你说气不气人。
存档这块也是一笔烂账。很多游戏默认把存档放在“文档”或者AppData文件夹里,跟游戏本体压根不在一个地方。你废了半天劲把游戏拷过去了,一开,倒是能玩了,结果发现以前的进度全没了,从头再来。我之前有个魂系游戏,一百多个小时的存档,连带个备份都没做,那次真是捶胸顿足。

还有一类更坑爹的,就是那种绑定平台的。Steam的游戏还能靠平台自己校验文件,但有些单机大作是自带反盗版系统的,或者说干脆就跟某个游戏平台绑死。你用U盘拷过去的版本,要么需要原来的安装盘那个激活信息,要么平台识别到机器码变了直接给你锁了。有一阵子我想把某个赛车游戏带到公司破电脑上摸鱼,折腾了一下午,最后发现它强制联网验证设备,上班这事儿彻底没戏。
当然也不是所有游戏都这么认死理。现在很多独立小游戏、复古像素游戏,往往做成了绿色版,不需要写注册表,不依赖运行库,拷过去就能跑,U盘就是它们的家。但那种动辄几十个G的大作,十个里有九个都劝你别想走捷径。
后来我也学乖了,想换电脑玩,要么老老实实重新下载安装,要么把整个游戏文件夹拷过去的同时,把那几个关键的运行库安装包也塞U盘里,在目标电脑上先补一遍环境。有时候能成,有时候还是不行,全看游戏爷爷心情。
说到底,Windows这个系统就是这样,它从来不管你的U盘里装了什么宝贝,只认它自己那套登记和审核流程。你想当个搬家公司,人家非让你先办落户。折腾多了,也就习惯了,现在再看到“无法启动”的弹窗,我连骂都懒得骂,直接点删除,心里想着就当自己从没拥有过这个游戏。