怎么用ce查找单机游戏的物品代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么用ce查找单机游戏的物品代码相关的知识,希望对你有一定的参考价值。

只要增减所持物品数量进行搜索轻松搜索到。然后点击对应地址,查看内存,向前4位左右一般就是物品代码。

主要信息:

在过去,欧共体国家对进口和销售的产品要求各异,根据一国标准制造的商品到别国极可能不能上市,作为消除贸易壁垒之努力的一部分,CE认证应运而生。因此,CE认证代表欧洲统一(CONFORMITE EUROPEENNE)。

事实上,CE认证还是欧共体许多国家语种中的"欧共体"这一词组的缩写,原来用英语词组EUROPEAN COMMUNITY缩写为EC,后因欧共体在法文是COMMUNAUTE EUROPEENNE,意大利文为COMUNITA EUROPEA。

葡萄牙文为COMUNIDADE EUROPEIA,西班牙文为COMUNIDADE EUROPE等,故改EC为CE。当然,也不妨把CE认证视为CONFORMITY WITH EUROPEAN。

CE认证标志并非由任何官方当局、认证机构或测试试验室核发,而应由制造商或其代理商根据上述八种模式中的一种(或混合),自行制作和加贴。部分欧盟官方规定的产品,需在获得欧盟官方机构(公告号机构)颁发的带有公告号的CE证书后,方可加贴CE标志。

参考技术A 一般来说,搜索物品数量。这个很简单吧,不加密的游戏只要增减所持物品数量进行搜索轻松搜索到。然后点击对应地址,查看内存,向前4位左右一般就是物品代码。。偶尔程序差距,所以向前的位数略有改变。。总之尝试就行了。

Cheat Engine(CE)教程

目录

前言

CE有个自带的教程,包括精确扫描、未知初始值、浮点数、代码查找、指针、代码注入、多级指针、共享代码,本篇记录下

一、简介

Cheat Engine ,简称CE,是逆向工程师常用的几大神器之一,也是游戏汉化、破解以及外挂编写中常用的工具,其功能包括:

  • 内存扫描
  • 十六进制编辑器
  • 调试工具
  • 可以进行反汇编调试、断点跟踪、代码注入等诸多高级功能
  • 支持 lua 语言,可以实现自己定义的逻辑功能,而不仅仅是简单的锁定数据。也可以在代码注入的同时注入 lua 插件,使游戏进程与 CE 进程进行交互。 CE 的大部分功能都可以通过 lua 来操作
  • 它还支持 D3D Hook 功能,可以在游戏中显示十字准星,也可以绘制功能菜单,同时也可以对 D3D 的调用栈进行跟踪调试
  • 自带变速功能,通过 Hook 游戏相关函数改变游戏速度
  • 自带了一个 Trainer 的功能,可以将自己在 CE 中实现的功能单独生成一个 exe 文件,并可以使用 lua 创建比默认样式更加复杂的窗体或功能

下载:建议到吾爱破解下

二、教程

开始教程

打开进程

1、精确值扫描


简单流程:

  • 精确扫描100
  • “打我”
  • 精确扫描新的数值
  • 重复直到只有一个地址并修改值为1000


2、未知初始值


流程:

  • 未知搜索
  • “打我”
  • “减少的数值”
  • 重复直到只有一个地址并修改值为5000





3、浮点数


流程:类似精确值扫描,改为浮点数即可



4、代码查找


流程:

  • 用上面的办法找到地址
  • 右键“找出是什么改写了这个地址”
  • 指令改为空



替换为空即可

5、指针


流程:

  • 找到地址
  • 查看“是什么改写了地址”
  • 查看“详细信息”
  • 搜索指针地址并修改值为5000






6、代码注入


流程:

  • 找到地址
  • 找到代码
  • 反汇编
  • 根据要求修改





几个解释

alloc(newmem,2048) // 申请 2048 字节的内存,newmem 就是这个内存地址
label(returnhere) // 定义用于跳转的标签 returnhere
label(originalcode) // 定义用于跳转的标签 originalcode
label(exit) // 定义用于跳转的标签 exit

修改如下:

7、多级指针


流程:

  • 找到地址
  • 找到指针
  • 不断找指针
  • 修改值



注意这里有个偏移量18


然后“是什么访问了地址”



这里提示的地址和上一次提示的地址是一样的
研究下:

  • mov esi,[esi] 这条指令访问了这个地址
  • 那么 [esi] 原来是啥?原来的 esi 不就是这个我们监视的地址





找到基址了!!
此时,真正的内存地址是

[[[["Tutorial-i386.exe"+2566E0]+0C]+14]+00]+18



到此即可
其实CE自身是有搜索指针的功能的,就不用上面这样一步一步来

8、共享代码


流程:

  • 找出4个血量地址
  • 查找代码
  • 区分敌我
  • 修改代码


浏览内存





发现有个队伍编号1和2
区分出敌我,那就简单了
进行代码注入


分析:

  • 原始代码是 mov [ebx+04],eax,意思就是,血量处于 ebx+04 的位置
  • 再看 Dave 的血量地址和队伍编号地址,两者做个差值(16进制减法,可以用计算器算),应该是0C,如果血量是 ebx+04,那么队伍编号就应该是 ebx+04+0C 就是 ebx+10
  • 我们需要在运行原来代码之前判断一下 [ebx+10] 是否等于 1

修改如下:

完结撒花!

结语

学会使用CE的基本功能

以上是关于怎么用ce查找单机游戏的物品代码的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序游戏怎么修改数据

CE的使用方法有哪些?

cheatengine怎么用

Windows 逆向OD 调试器工具 ( CE 工具通过查找访问的方式找到子弹数据基地址 | 使用 OD 工具附加游戏进程 | 在 OD 工具中查看 05869544 地址数据 | 仅做参考 )(代码

Windows 逆向使用 CE 分析内存地址 ( 运行游戏 | 使用 CE 工具分析游戏内子弹数量对应的内存地址 | 内存地址初步查找 | 使用二分法定位最终的内存地址 )

开始写游戏 --- 第五篇