12558网页游戏私服论坛

 找回密码
 立即注册
游戏开服表 申请开服
游戏名称 游戏描述 开服状态 游戏福利 运营商 游戏链接
攻城掠地-仿官 全新玩法,觉醒武将,觉醒技能 每周新区 经典复古版本,长久稳定 进入游戏
巅峰新版攻 攻城掠地公益服 攻城掠地SF 新兵种、新武将(兵种) 进入游戏
攻城掠地公 散人玩家的天堂 新开 进入游戏
改版攻城掠 上线即可国战PK 稳定新区 全新改版,功能强大 进入游戏
少年江山 高福利高爆率 刚开一秒 江湖水落潜蛟龙 进入游戏
太古封魔录 开服送10亿钻石 福利多多 不用充钱也可升级 进入游戏
神魔之道 签到送元宝 稳定开新区 送豪华签到奖励 进入游戏
神奇三国 统帅三军,招揽名将 免费玩新区 激情国战,征战四方 进入游戏
龙符 三日豪礼领到爽 天天开新区 助你征战无双 进入游戏
王者之师 免费领豪华奖励 免费玩新区 6元送6888元宝 进入游戏
三国霸业 战车-珍宝-觉醒-攻城掠地SF-全新玩法 免费玩新区 攻城掠地私服 进入游戏
手游私服盒子 各类免费游戏 0.1折送海量资源 各类手游私服 进入游戏
皇家MU2 《奇迹 2:传奇》韩国网禅公司《奇迹》正统续作。 3D锁视角Mmrpg 暗黑3+传奇+流放之路+奇迹 进入游戏
查看: 398|回复: 0

[原创] CE基础-CALL找法:帝国时代2之转化CALL

[复制链接]

71

主题

71

帖子

152

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
152
发表于 2021-7-26 00:10:42 | 显示全部楼层 |阅读模式
导言
  直入主题,通过找转化CALL谈一些找CALL技巧@永恒光阴


工具准备
[Asm] 纯文本查看 复制代码内存工具:CE7.0游戏本体:AOE II:HD过程分析
  分两步,第一步根据游戏内某动作进行逻辑分析,第二步根据逻辑分析进行CE分析
  # 逻辑分析
    任务:重要是根据游戏动作与CALL的相关性(这一点可以在CE中的Ultimap功能展现),通过拆分游戏动作步骤而找出直接或间接相关数据,从而可以使用CE进行分析
    对AOE II:HD的逻辑分析
      起首,在游戏中实行僧侣施放转化这个技能的完备动作,通过分析,可以得出一个相近的逻辑过程:选中某僧侣 -> 选中转化技能 -> 选中某仇人 -> 检查转化条件 -> 吟唱过程 -> 吟唱(转化)完成 -> 信念值减少
      其次,对这些步骤进行分析,找出蕴含的直接或间接相关的数据,比如选中某仇人,可能选中ID(某仇人数据结构的标识)这个数据会改变,也可能选中地点(某仇人数据结构的基址)也会改变,乃至选中/未选中这个标识(某仇人数据结构的状态)也会改变
      最后,开始对目的CALL进行正向(找前一个CALL)或逆向(找后一个CALL)的筛选(见总结更详细分析原因),这里我们找的是转化CALL(即要对转化完成过程进行分析),就可以正向对吟唱过程进行分析,大概逆向对信念值减少过程进行分
析,固然也可以直接对 转化完成过程进行分析,这里对转化完成过程分析并假设敌我存在某种标识来决定转化完成,仇人可以加入我方,所以只需要根据这种标识变化,进程CE分析并找到关键代码
  # CE分析
    任务:重要是根据逻辑分析阶段找出的相关数据,通过CE工具来查找并找出关键代码,再通过关键代码找出关键CALL
    对AOE II:HD的CE分析
      第一步,通过查找某仇人血量,来找到某仇人结构的动态内存区域,这里血量偏移是esi+30,esi即为某仇人结构的基址 - 附加说明:这里所说的基址是相对于动态内存块的开始地点,一般是相对于结构而言,比如人物结构,它包罗+4处的ID,+30处的血量等


      

      


      第四步,现在开始使用“向上跟踪法”(见我另一篇贴:
向上跟踪法)找关键赋值代码,可以得到关键数据泉源这个CALL(函数)的第一个参数

      

      第五步,知道关键数据是CALL前push的参数后,我们返回这个CALL,来到调用CALL的层,可以看到CALL前明显的push,对它进行下断点分析,可以分别得到参数含义,这时转化CALL初步找到 - 附加说明:这里ecx通过与找edi泉源时一起分析

      

      第七步,这样我们就可以控制人物的敌我标识了,脚本如下[Asm] 纯文本查看 复制代码[ENABLE]//code from here to '[DISABLE]' will be used to enable the cheatalloc(newmem,2048)label(returnhere)label(originalcode)label(exit)newmem: //this is allocated memory, you have read,write,execute access//place your code here// 起首得到目的ID指针push edipush ebxmov edi,["AoK HD.exe"+527378]mov edi,[edi+70]mov edi,[edi+34]// 其次得到基址指针mov ebx,["AoK HD.exe"+5264DC]mov ebx,[ebx+edi*4]// 最后赋给ecxmov ecx,ebxmov eax,[esi+08]mov eax,[eax+0C]mov edx,[edx+4C]pop ebxpop edipush eaxcall edxjmp "AoK HD.exe"+1413Boriginalcode://mov eax,[esi+08]//mov eax,[eax+0C]jmp newmemexit:jmp returnhere"AoK HD.exe"+1412F:jmp newmemnopreturnhere:  [DISABLE]//code from here till the end of the code will be used to disable the cheatdealloc(newmem)"AoK HD.exe"+1412F:mov eax,[esi+08]mov eax,[eax+0C]mov edx,[edx+4C]push eaxcall edx//Alt: db 8B 46 08 8B 40 0C

总结
# 对找CALL的理解
  找CALL的本质照旧归根于游戏动作与CALL的相关性,这里前面已经说过,CE中Ultimap就是一个典型,但Ultimap功能有限很多游戏不能附加,所以照旧得回归CE工具的本质-数据分析
因此,我们在游戏动作与CALL之间,通过数据分析来连接它们。这里分析游戏中转化技能得施放动作,可以得到相关数据,接着通过分析相关数据,可以得到关键CALL
# 对找CALL的方法总结
  方法无非两种,一种是找直接变化的数据,这个类似找什么写入(我称之为主相关);另一种是找间接访问的数据,类似找什么访问(我称之为副相关)
  我们对逻辑过程:[选中某僧侣 -> 选中转化技能 -> 选中某仇人 -> 检查转化条件 -> 吟唱过程 -> 吟唱(转化)完成 -> 信念值减少]进行分析
     1. 主相关举例
       过程:此篇找转化CALL就是如此,先找敌我标识,然后得到关键代码,接着得到关键CALL,最后转化为可控制脚本
       说明:这里转化竣事会修改敌我标识
     2. 副相关举例
       过程:先找到信念值数据,然后在信念值未满的情况,使用技能,这时我们可以得到检查条件的关键代码,继续顺藤摸瓜,可以找到其他检查条件:科技树检查、好汉检查、转化检查等
       说明:这里检查条件的关键代码会访问信念值,只有当信念值 >= 100才能成功

# 对正推与逆推的筛选的说明
  正推:一般是分析所找CALL的步骤的前一步骤,固然着实无奈再前一步骤也行
  逆推:一般是分析所找CALL的步骤的后一步骤,固然着实无奈再后一步骤也许
  适用情况:正推、逆推都是在当对所找CALL无头绪时,对前后步骤分析,可以向所找CALL逼近,而且对无参CALL(全局参数传入情况)特别有效,且对无知有参CALL(对参数不明的情况)也有效
# 对数据的捕捉总结
  我把它分为两种:动态数据以及固定命据。动态数据是随游戏某动作而改变的,而固定命据从游戏加载就不会发生改变(这里与静态数据不同),但是它会被访问(不被访问就是“废数据”了)
  动态数据常见有
    1. 开关式(比如选中/未选中),一般搜0/1
    2. 数值式(常见的),按数据类型搜
    3. 循环式(在某个自界说范围内增减,而不是数据类型的范围内),只能搜变化数值
    4. 特殊式(在几个特殊值之间往返变化),对于有规律情况可以搜增减,对于极端情况只能搜变化数值
    5. 共有指针(点击不同的人物出现不同的值,包括各级指针值),这个暂时没有好的办法去寻找

    6. 相关式(比如:植物大战僵尸的香蒲攻击方式,先遍历,再获取坐标,最后子弹跟踪。这个时候只改子弹跟踪的跳是会崩的),需要找到全部相关值并一起修改
    其它待补充......

  固定命据常见有
    1. 初始化值,比如植物大战僵尸的植物攻击力/攻击间隔/攻击范围等,固定命据的修改只能依靠与它相关的动态数据,并找到它的初始化关键代码
    2. 独有指针,比如根据某个动态数据独有的关键代码,找到的指针,它的各级指针是不会变化的(也存在某级指针存在几个值得情况)

    3. 静态区域,比如基址的存放处,全局变量的存放处等,可以被间接访问
    其它待补充......
  以上说明只是某种做法,可以随不怜悯况而变,但其本质不变......

End
  有问题的欢迎在帖子下留言,我会找时间帮助解答;也欢迎其它交流

来源:http://www.12558.net
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
楼主热帖
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|12558网页游戏私服论坛 |网站地图

GMT+8, 2024-11-24 12:10 , Processed in 0.125000 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表