2024年1月23日发(作者:)
CE傻瓜教程:找出植物大战僵尸的冷却地址
数据类型要改成BYTE。从代码中就看出来了
打开植物大战僵尸,祭出CE大神。选择植物大战僵尸的进程 进程。
进入无尽模式
开始建造前,切换到CE,扫描未知初始数值,数字很大,我们不管它
此时我们选中向日葵进入建造。切换CE 选择扫描 更改的数值,等待向日葵冷却结束后,点击 再次扫描。
现在我们进入游戏,不进行任何建造。 切换到CE选择扫描未更改的数值 如此反复操作,不再详述。
扫描到最后只剩下9个地址。经简单确认 070f88A0 就是我们要找的第1格的冷却地址
右键 选择 查找写入该地址的代码 ,此时切换到游戏 点击向日葵,拿起来但不建造,再次放下
这两行如何理解呢
第一条我们拿起向日葵的记录
第二条我们放回向日葵的记录
当然选择 mov [eax+ecx+70],01 双击
此时EAX=0 ECX = 070f8830 ECX + 70 = 070f88A0 再次确认就是这条记录
搜索 070f8830 只有一个结果 0CEEF7A4 ,右键选择 查找访问该地址的代码
查找 0CEEF668 得到一大串结果。
观察一下,第1个比较特别,其它都是070 0C3 开头,选中 00F58578 右键 选择 查找访问该地址的代码,
右键选择 查找访问该地址的代码
查找 00F57E10 得到最终结果
添加指针。
此时我们已经成功找到植物大战僵尸第1格的冷却指针,将其锁定为1就可实现植物大战僵尸第1格无冷却进入快速建造的目的
为什么要锁定为1呢?
教程到此结束
..以前我搜索过 我搜索的简单点,冻结的时候搜索1 没冻结搜索0 然后就出来了。。然后就是得出来地址+上偏移=第2格植物的冻结时间第2格地址在加上偏移就等于第3格植物的冻结时间(后面接着.+偏移。。。。).
[原创] 植物大战僵尸无CD找法+思路
无CD其实很简单的,下面,教教大家怎么找无CD
首先,打开游戏和CE,并且附加进程
数值类型选1,随便找一个植物,在植物变亮的时候搜索1
变暗以后搜索0
重复以上步骤,直到剩下30个左右的地址的时候,一个个的改成1,看看是否变亮。
最好从下往上试,因为一般都是出现在底下
我的运气不错,最底下的第一个就是正确的地址
然后在地址上点右键,选择寻找写入这个地址的代码
进去改变一下植物的状态,如果是暗的,就等变亮,如果是亮的,就把他变暗
我是把他变暗了
好了,有东西出来了
但是我们不要管他,在改变一下植物的状态
此时,又有东西出来了
好了,我们比较并且分析一下
这两行代码,第一行是植物由亮变暗,第二行是植物由暗变亮
两个有什么区别呢,就在于最后的一个数值,由亮变暗是00,由暗变亮是01
那如果我们把由亮变暗的数值也改成01呢,会怎么样,我们试试
单击第一行代码,点显示反汇编,打开了新窗口
然后我们把00改成01
然后点确定,回游戏看看吧
哈哈,无CD实现了。
如何写成修改器呢?我们还是用内存写法
找到反汇编的地址,是004B4CA1
记下来,到内存查看器的下半部分
右键点击 选择跳转到地址
然后输入004B4CA1
确定以后跳转到了004B4CA1
这里,目前的地址是C6 45 48 01
本来应该是 C6 45 48 00
因为我已经改成无CD了,所以成01了
我们写内存的时候也写成01
具体写法就不多讲了,因为大家熟悉的制作修改器方法不同
把004B4CA1写字节集C6 45 48 01就实现无CD了
教程完毕,谢谢观赏
大家好,我是kaixin9611。
我刚刚看了三个教程,第一个就是管理员:我爱秘籍:CE傻瓜教程:找出植物大战僵尸的冷却地址(ht tp:///)
Clare:植物大战僵尸无CD找法+思路(h t t p:///)
大象哥的:大象的游戏修改教程第6部(这个在顶置就不贴地址了)
大象哥的总体来说看懂一点点,没全懂的情况下我又结合了另外两位的搜索方法,搜索出了《植物大战僵尸年度版》3DM破除时间限制版。
我的方法比较独特,需要在:我爱秘籍+Clare搜索思路,然后参照大象哥的一些推理运算方法来得出结果。
步骤一,我们首先用
[我爱秘籍的扫描类型:未知初始值+改变的数值+未改变的数值]+[Clare的数值类型:1字节(或者其它版本CE里面的字节,Byte)]
为什么不说他们两个其中一人的方法呢?
先看我慢慢道来
在我的实验过程中,无论他们任何一个人的方法都可以达到最终目的,但是搜索此版本的游戏单一的话比较烦恼。
我们可以好象上面那样去设置CE,然后再进行搜索
1、设置好以后我们就搜索[未知初始值]
2、进游戏,拿起植物的情况下到CE搜索[改变的数值]
3、进游戏,植物拿着不放,回到CE搜索[未改变的数值]3次左右
4、进游戏,把植物取消不拿着(不是种下去)的情况下,回到CE搜索[改变的数值]
5、进游戏,植物拿着不放,回到CE搜索[未改变的数值]3次左右
6、现在我们就可以直接利用Clare的方法,0和1,植物暗了搜索0,植物亮了搜索1
7、很快就得到剩下6-10个左右的地址以后,我们就把搜索到的地址全部放到下面,逐一检查数值(如果植物是亮的话,你就把CE的数值改成 0,相反则改成1)来测试结果
8、我们找到结果右键[查看谁在写入这个地址]把这个窗口放在一边,回到游戏,拿起植物,放下植物做几次,得到的更多信息是:
EAX=13189FB0
EBX=1DD771A8
ECX=13189F88
EDX=00000001
ESI=1DD771A8
EDI=1DD771A8
EBP=0012FB94
ESP=0012FADC
EIP=004B4D1D
Probable base pointer =13189FB0
004b4d12 - call dword ptr [0070a2fc]
004b4d18 - int 3
004b4d19 - mov byte ptr [eax+48],01
004b4d1d - ret
004b4d1e - int 3
很明显,EAX=13189FB0 偏移+48
但是如果我们搜索4字节HEX:13189FB0 我们是找不到任何结果的
如果搜索1字节HEX:13189FB0,对没错可以找到很多地址,但是保证你头晕。
大象哥说:你在我的第六视频里面没有听到我说:附近这两个字吗?
我立刻茅塞顿开。
那么现在我们就开始用大象哥的推理运算的方法
选择在上面信息:13189FB0距离最近的数值。
究竟是什么呢?
ECX=13189F88和EAX=13189FB0是最近的。
那么好,我们就搜索ECX=13189F88,也就是13189F88。
但是CE给我们的信息是004b4d19 - mov byte ptr [eax+48],01
Probable base pointer =13189FB0
明明就是搜索:13189FB0
那么你搜索一个不相关的地址可以得到基址吗?
其实是可以的。
只要我们是在更多信息那里得到的是004b4d19 - mov byte ptr [eax+48],01
偏移量是+48
13189FB0减去13189F88的偏移量是:28
再加上更多信息给我们的偏移量48,两个偏移量结合起来的总偏移量是:48+28=70
那么在这条信息里面搜索13189F88,偏移量就是70,换句话说就是:MOV EAX,
[ECX+[EAX-ECX]+48] (不知道有没有表达错)
使用[数值类型:4字节]搜索13189F88以后,我们就得到一个地址:1DD77304(只有一个了,拜托,我想了很多方法都是N个,而且N=6到7位数的)
接着下来很容易反复“查看谁在访问这个地址”就可以得到基址:007794f8
最后,透露一下《植物大战僵尸年度版》3DM破除时间限制版的植物冷却时间的基址是:007794f8,而动态地址表达式就是:
[[[[007794F8]+868]+15C]+70]
搜索方法就此结束了。图就不帖了,有空我再给大家上传一个视频吧!
其实这次主要学习到了红色字的那部分,令到自己的思维更加的开阔了。
上一次的贴子我也说过,我是自学的,本身只有VB基础并且不高的技术情况下看贴子,看文章学回来的。
得到的结果都不容易,高手们请不要喷我,多指点我一下好吗?


发布评论