首页 > 编程知识 正文

网页游戏辅助工具哪个好用,网页游戏辅助教程

时间:2023-05-06 14:04:50 阅读:267818 作者:4329

该教程为系列教程,后续教程程会持续更新

对当前教程有疑问请在下方留言,我会按照大家建议修改和完善课程内容。请大家多多关注支持。

 

CE找地址教程

目录

CE找地址教程

1.讲在前面

2.数值类型

3.搜索精确的数值

4.搜索模糊数值

技巧-模糊搜索法

5.搜索浮点数

技巧-二分排除法

6.模糊搜索的补充

7.常见游戏的数值特征

FPS人物坐标

FPS人物视角


1.讲在前面

    本问讲的是找地址教程,并不是找基址教程,找基址教程会在本博客专栏后面的教程里讲解。

    课程从最简单的找地址说起,逐渐深入。另外分享一个些主流游戏类型的关键数据搜索技巧,提高大家的搜索效率。

    本文以植物大战僵尸和cs1.6为示例。因为我发现大部分涉及的搜索技巧,这两个游戏里面都会涉及到。

2.数值类型

    游戏中的各种数据都是存在内存里面,我们在CE搜索的时候,首先要知道我们要搜索的是什么数据类型,这样才不会走岔路,CE所列举的数值类型是对所有数值通用的,这里我对每个数值类型做一下说明

类型内存大小说明字节1-128 到 127 或 0 到 2552 字节2-32,768 到 32,767 或  0 到 65,5354字节4-2,147,483,648 到 2,147,483,647 或 -2,147,483,648 到 2,147,483,6478字节8-2^32 到 2^32 -1  或    0 到2^64 - 1单浮点41.2E-38 到 3.4E+38    精度6位小数双浮点82.3E-308 到 1.7E+308 精度15位有效小数           

 

 不同的数值有不同的范围,我们搜索的时候,要先排除不可能的数值范围。

  比如人的生命值为1883 ,那就不可能是字节型。因为字节型最大能表示255

  比如金钱为500000,那么就不可能是字节型,和2字节型。因为2字节最大能表示的数是65535

  实际搜索中,常用2字节,4字节来搜索整数。常用单浮点来搜索小数。

3.搜索精确的数值

    这种地址即,所见即所得。界面上写着什么数值,内存中就是什么数值。这种也是最简单的搜索法。

    这里搜索是植物大战僵尸的阳光数值。

 

                                             

    首次搜索75                                                              再次搜索100

   

    可以看到,这时候我们搜到这个地址就是阳光地址了,我们修改数值为2500

    这时候我们看到阳光值已经变成2500了

 

4.搜索模糊数值

    这里我们采取的例子是植物大战僵尸金钱的数值(下左图)

  

    问题:

    这里我们按照之前方法搜索54910,发现搜索结果为空(上右图)。

     

    即,游戏中金钱的数值,并不是以54910的数值存在的。

    这时候,就需要我们的模糊搜索法了。

技巧-模糊搜索法

    模糊搜索法是在不知道数据具体是多少,却能知道数值的变化规律时,采用的的搜索方法。此时,我们依据数据的变化去定位数值的基址。

      

    首先,我们选择未知初始值,单击首次扫描。这时候我们可以搜索到4794w个地址

 

      

    我们买个化肥,金币减少,这时候我们 再次扫描  减少的数值。

    重复   买物品,搜减少数值   操作

 

    

    经过多次筛选,剩下992个数值。这时我们停止消费金钱,多次再次扫描未变动的数值。剩下3个地址,

 

   

    我们对这三个数值进行依次修改尝试,发现第二个地址为正确数值,显示数值= 实际数值*10

    至此,我们通过模糊搜索找到了金钱的基址已经显示数值和实际数值的对应关系。

    附注:模糊搜索扫描类型的解释

        部分模糊搜索条件需要用户输入数值,以x,y代替

    1.值大于....(x):  在当前扫描结果中,筛选出值大于x的地址。

    2.值小于....(x):在当前扫描结果中,筛选出值小于x的地址。

    3.值介于....(x,y)两者之间: 在当前扫描结果中,筛选出    >=x 并且 <= y的地址。

    4.增加的数值: 相当于上次扫描结果,数值增加了。如 先前值 25,当前值 28;先前值1000,当前值2234。

    5. 数值增加了....(x):  相当于上次扫描结果,数值增加了x。当x输入为2时,先前值 25,当前值 27 满足条件;先前值1000,当前值2234不满足条件。

    6.减少的数值: 相当于上次扫描结果,数值减少了。如 先前值 25,当前值 12;先前值1000,当前值834。

    7. 数值减少了....(x):  相当于上次扫描结果,数值减少了x。当x输入为2,先前值 25,当前值23 满足条件;先前值1000,当前值834不满足条件。

    8.变动的数值:相对于上次扫描结果,数值发生了改变。

    9.未变动的数值:相对于上次扫描结果,数值未发生改变。

5.搜索浮点数

    这里类型不一致主要是,浮点数和整数。浮点数可以表示带小数的数值,而整数不行。在绝大部分游戏中,浮点数是必不可少的数据类型。

    因内存中浮点数和整数的表示方法不一样(具体详细参照浮点数在内存中的存储方式),以整数形式的值去搜索浮点数,是不可能搜到结果的。我们用CE写一个浮点数100,看看他对应的整数是多少

   可以看到,浮点数100,对应的整数值为 1120403456。

    注:这里说明一下,CE中类型为 2字节,4字节,8字节均为整数型。单浮点,双浮点均为浮点型。具体类型定义,请参数C语言数据类型定义。

    下面就是实战环节了。

    CS1.6人物生命值为浮点数(Valve后续作品求生之路生命值却是整数,摸摸头)。

    这里不讲解以整数型搜索的错误示范,网友们可自行尝试。修改后即使显示的生命值变成了自己想要的数值,但实际扣血中并不生效。如你现在生命值为85,你通过整数值搜索出的地址改为100,下次扣血依然从85开始算。

  

    这里我们看到目前的生命值,是100 。我们搜索浮点数 99 到101。

    这里为什么会搜索99 到101,而不是直接搜索100?

    这里是经验之谈,比如很多游戏内存里面生命值是80.4,界面上显示的是80,有的游戏内存里生命值是79.1,他界面上依然显示80。由此可见,内存中数值和界面上显示的数值可能有1的误差,误差的原因是把浮点数转整数,根据不同的取整方式,造成不同的显示结果。但是,cs1.6这款游戏你直接搜精确数值浮点数100就好了,也能搜索出来。

    因此,当我们发现目标数值是浮点数的时候,我推荐用范围搜索,因为这个能适用所有游戏。

 

    这里我们改变一下生命值,当前生命值为80 ,的我们搜索79 到 81

    重复  减少生命值,再次搜索   操作

    问题,无论如何重复搜索,都会剩下将近两百个地址。按照之前的方法,一个一个算是不可能的。现在就介绍一种排除方法。

技巧-二分排除法

    这里,我们先把搜索的结果都添加到地址栏里。

按住shift选中第一条和中间的一条,选中差不多一半的地址,按space,或者右键菜单锁定地址

 

   锁定后,激活栏会变成,这表示值被锁定,锁定表示CE自动写入固定数值。比如锁定的时候这个数值,是100,那么每隔一定时间(默认0.5秒),都会朝这个地址写入100。

   锁定地址之后,
     1  如果发现我们在游戏中消耗的生命值会自动回复,则表明,我们要找的地址在锁定的地址中。

     2  如果我们游戏中的生命值正常扣,则我们要找的地址不在锁定地址中。

 

 此时,我们发现生命值变成了94,则我们要搜索的地址不在目标范围内。这时,我们应该删除当前锁定地址。并在锁定剩下的一半的地址。 

 

 

判断生命值是否正常扣除,重复之前判断。

    1 如果锁定的地址,不能对人物的生命产生影响,删除当前锁定的地址,锁定剩下地址的一半的地址。

    2 如果锁定的地址,能锁住任务生命。删除未锁定的地址,把当前地址锁定的地址解锁一半,看生命值是否影响。

我们的思路是,通过锁定,排除掉不对生命值影响的地址。

    

    通过一段时间的尝试,我们发现只留下四个地址,我们就依次修改生命值,看哪个生效,最终,找到地址0x080B1D5C为任务的生命值。锁定该地址后,人物生命任何形式的消耗都讲自动回复。

   修改成100 后,生命值变成100。

6.模糊搜索的补充

    模糊搜索的先决条件是,你知道数值是按照什么规律变化。

    要是你不知道数值如何变化,那怎么搜索呢。

    比如消耗金钱,可以搜索,减少的数值。获得金钱可以搜索增加的数值。但是,比如枪械的后坐力,很多同学可能无从入手,不知道后坐力数值的特征。

    这里我给大家提供一种解决办法,或者说一种思路。解决这类问题主要是两种思路,

    一种是来源于自己推测,如果你是个游戏开发人员,你自己实现后坐力如何测试。比如说冷却时间,一个魔方的冷却时间是5秒,那么我会搜索一个计时器,记录当前距离上次释放的时间,从0 涨到5000ms。

    一种来源是经验,可以从其他地方收集,或者你自己的经验。比如fps游戏人物的位置是浮点数类型的,不是整数型,等等。

    文章最后一节会补充一些游戏的数值特征,并且会根据情况持续更新完善。

7.常见游戏的数值特征 FPS人物坐标

x,y,z均为单浮点浮点数。并且数值响相邻,如 x地址 + 4 = y地址   x地址+ 8 = z地址。

FPS人物视角

游戏中人物视角主要包括水平视角和垂直视角。

cs1.6 :

垂直视角最顶部为-89.0  最底部为89.0。
水平视角范围 为 0.0-360.0 ,垂直视角地址-4 = 水平视角地址

天际起源:       垂直视角最顶部为89.0  最底部为271。
                      水平视角范围 为 0.0-360.0 ,垂直视角地址-4 = 水平视角地址

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。