游戏之家 > 游戏库

《异教危机》的修改方法

子弹在内存中存放上,是以4的倍数存的,也就是说,出门是你有,14发子弹,内存中就是56,而且如果你只是这样找,恐怕你也不一定找的到,因为游戏存储内存时,好像并不是正常的双字节格式,这里建议用TS,用他可以很容易找到。找到后就可以下断点,找到代码了,改起来也容易,一个NOP,就搞定。

现在要说最关键的地方了,这个游戏的内存是固定的,但为什么我还是无法做出真正通用的修改呢?因为它的代码居然是动态的,具体我就不说了,我也不明白他怎么实现的,不过怎么回事我是看清了,就是没想明白怎么处理,知道的请跟下贴。

我乱七八糟说了一堆,相信有修改能力的人,在自己的机器上,无限弹是不成问题了,没能力的,等有人找到办法做出修改再说吧,这个我目前还没想到办法。最后提供点有用的数据(生命我还没有找到(没找呢))。

子弹的地址:一般是0x17e52fdd  | 0x17e62fdd

子弹代码地址:0x18e61953  | 0x18e71953

子弹内存数值:子弹数*4

子弹处代码:

18E71920    55              push    ebp

18E71921    8BEC            mov     ebp, esp

18E71923    53              push    ebx

18E71924    A1 F8782318     mov     eax, [182378F8]

18E71929    C1E8 08         shr     eax, 8

18E7192C    BB D82FE617     mov     ebx, 17E62FD8

18E71931    01D8            add     eax, ebx

18E71933    8B00            mov     eax, [eax]

18E71935    50              push    eax

18E71936    B8 00040000     mov     eax, 400

18E7193B    5B              pop     ebx

18E7193C    29C3            sub     ebx, eax

18E7193E    89D8            mov     eax, ebx

18E71940    50              push    eax

18E71941    A1 F8782318     mov     eax, [182378F8]

18E71946    C1E8 08         shr     eax, 8

18E71949    BB D82FE617     mov     ebx, 17E62FD8

18E7194E    01D8            add     eax, ebx

18E71950    89C3            mov     ebx, eax

18E71952    58              pop     eax

18E71953    90              nop     //这里原来是mov [ebx],eax,NOP掉,就全枪无限了

18E71954    90              nop

18E71955    5B              pop     ebx

18E71956    5D              pop     ebp

18E71957    C3              retn

以上的地址,在XPSP2下,你多进几次游戏,不行就重启,100%有相同的时候。

另外我发现这游戏接上手柄和不接手柄还不一样,具体差多少,我还没有细研究。

上面写的比较乱,不过相信在和我水平一样,或比我还高的人眼里,应该能看出些东西,跟踪调试一下,就会知道是怎么回事了,希望有能够解决动态分配空间及代码的,在这里跟贴贴出方法。

顺便说一下,我就是JACK。   JACK==gamehack

在一楼贴上最近更新的V1。10修改器,如果可以使用,可以无限生命,无限武器,效果很不错。(未通关,后期不知,应无问题)。

使用方法: 打开修改器,进游戏后把画面停在开始那里,就是可以选新游戏,读档那里,按修改器里的,读取数值,如果是56,点对应下方的修改代码,就可以无敌了,没有提供代码恢复功能,重开游戏才能恢复。

接手柄和不接手柄时,游戏的内存状态不一样,而且同样是不接手柄,内存状态也并不每次都一样。所以两边的按钮都试试,只要读出来的是56(手枪的子弹数*4,默认为14发),就可以点击下面的修改代码按钮啦。

做的有够累,游戏有够BT,请使用了的玩家,发贴支持一下。

刚刚忘说了,包里我还放了一个网友制做的汉化,我试了,好用,替换文件就可以,是脚本。

注意,全屏游戏时要是不行,请换成窗口化再试试。也许可以。游戏累人,不准备继续研究了。