车载导弹发射视频:如何将光盘版游戏变成硬盘版?高手请进!!

来源:百度文库 编辑:神马品牌网 时间:2024/04/28 13:50:45
我有一款光盘版游戏,每次玩的时候很麻烦,后来用虚拟光驱,可是换机子玩的时候又要重新安装,很郁闷!有没有将光盘版游戏改成硬盘版游戏的方法或软件,请高手帮忙解决下!谢谢

光盘版的游戏一般有以下几种情况:A、安装时全部装进去了,运行时只比较有没有光盘;B、安装时绝大部分已经装进去了,运行时只读光盘上的动画和声音;C、安装时只装了一个引导程序,运行时的要从光盘上读所有的数据(很多多媒体教学光盘就是这样的)。我们主要是破解A、B两种情况。
前些天从伪装者大哥的破解乐园下载了一个非常好玩的游戏:“奇妙大百科:不可思议的机器”,觉得很不错,今天逛碟市,发现了“重返奇妙大百科:不可思议的机器-巧夺天工”,当即买了下来(D版),回到家一装,最大安装结果竟是光盘版的,可怜我那用了两年的老光驱!如果是别的游戏我就退了,但是这可是我最喜欢的游戏,就自己动手改成硬盘版,它是上面的B型,过程如下:(请先用最大安装)
首先,如果不放光盘进去的话,它就会出一个对话框,要求你放入这个游戏的光盘,这说明它肯定先判断是否有光盘放进去了,没有就弹出这个对话框,好,就用loader载入evenmore.exe,下bpx getdrivetypea,进入游戏以后马上就被拦下来了,按一下F12,就返回到evenmore的领空,来到这里:
:0042C056 8B0D381F4A00 mov ecx, dword ptr [004A1F38]
:0042C05C C605351F4A0001 mov byte ptr [004A1F35], 01
:0042C063 E858030000 call 0042C3C0
:0042C068 8BD0 mov edx, eax
:0042C06A 8D4C244C lea ecx, dword ptr [esp+4C]
:0042C06E E85D070200 call 0044C7D0
:0042C073 8A44244C mov al, byte ptr [esp+4C]
:0042C077 881D351F4A00 mov byte ptr [004A1F35], bl
:0042C07D 3AC3 cmp al, bl
:0042C07F 7410 je 0042C091
:0042C081 8D4C244C lea ecx, dword ptr [esp+4C]
:0042C085 51 push ecx
:0042C086 FFD7 call edi ----从这里出来;实际上就是getdrivetypea
:0042C088 83F805 cmp eax, 00000005 ----比较是不是光盘(光盘的返回值是5,硬盘是3)
:0042C08B 0F8455010000 je 0042C1E6 ----是光盘就跳到后面接着执行,不是光盘就要你放入光 盘
因此,从0042C086的那个CALL中出来,EAX中应为3,下R EAX 5,将返回值强制改成5,让程序以为放了光盘,按一下F5,程序继续执行,没有要你放入光盘了,但是屏幕过一下就黑了,没有什么反应。按一下ALT+F4,程序会问你是否退出,按“确定”,就正常的退出来了。
估计造成以上现象的原因是:程序在执行时不仅判断是否有光盘放进去了,还要读光盘上的某个文件(多半是动画文件或声音文件),由于读不到,因此停下来了。
打开注册表,发现在hkey_local_machines\software\sierra online\setup\evenmore下有一个键:cdpath,值为:F:\Contraptions\Files,我就将它改成了:D:\Contraptions\Files,并将光盘上对应的目录地F:\Contraptions\Files拷贝到硬盘上D:\Contraptions\Files。再运行一遍程序,还是不行。
这次换一个方法,先运行filemon,再用loader载入,还是下bpx getdrivetypea,拦下后还是按一下F12,还是下r eax 5,还是按一下F5,等屏幕黑了以后,按一下ALT+Tab,切换到filemon中,看到有很多的not found,这多半就是我们缺的文件,看一下,intro.tbv,还有很多的wav文件。将光盘的\Contraptions\Files下的这几个文件(tbv)拷贝到这个游戏的安装目录中,再用上面的方法执行一次,哈,成功了!可以玩了。
但是别高兴的太早了,过一段时间它又要读光盘,如果没有检测到光盘,还会要你放入光盘。我们就下bpx getdrivetypea,按确定,马上就被拦下来了,按一下F12,又来到了0042C088的位置,下r eax 5,按一下F5,又被拦下来了,再以后,就有很多的中断,并且还读软驱,我受不了了!
改吧:我一开始是将0042C086处的那个CALL改成了mov al,5(机器码是B005),可是不行,再将je 0042C1E6改成了jmp 0042C1E6,还是不行,只好将cmp eax,5改成cmp eax ,3。
用ue找到:FFD783F8050F8455010000,改成
FFD783F8030F8455010000
问题就解决了!
最后说一句:如果还想要背景音乐的话,还要将光盘下的music.tbv这个文件拷贝到游戏的安装目录中去;如果想要听解说的话,就将光盘下的voice.tbv拷贝到游戏的安装目录中。
(额外效果:这个光盘版的游戏放入光盘玩时,有时还要读软驱,可能原来是用磁盘保护的,被人解密了,但是用这个方法改成硬盘版后,就不读软驱了)

除非下载补丁,要不然就没办法了,如果能的话还出那么多种虚拟光驱.

用镜像软件把光盘作成镜像文件就可以了

没有,还是用虚拟光驱吧,虚拟上去以后就行了