3.1.1 喊话功能
ZC: SuperARC说话,能用此方法吗?
【01:25】找一个突破点:【01:55】输入框 输入文字(这里输入的是"1111111111111111111111111") --> CE搜索喊话内容的地址,【02:33】扫描类型 选"文本" (其实选"字节数组"也能够扫出来,"字节数组"的话 它输入的就是16进制的数字了),【02:50】CE输入的字符串只要是与游戏里面输入的字符串相同或是它的的子集就可以了 --> 【03:05】如果我们CE搜索不到的话,还可以尝试 指定CE搜索Unicode字符串。我们测试的时候输入数字,也就没有了大小写的分别了 --> CE找到 好几处地址 --> 【03:40】游戏中输入"2222222222222222222222222" --> 【03:45】CE输入"2222222",再次扫描 --> "aaaaaaaaaaaaaa"/"aaaaaaa" 再次扫描 --> 就剩两个地址(一个基址 & 一个非基址)
【04:25】CE中 选中 某一行,双击 列"类型"对应的信息 --> 将"长度"设置大一点
【04:55】CE里面修改 找到的两个地址对应的 字符串值 ==> 发现 绿色基址 对应的是 喊话内容
【05:20】游戏中 按下回车键(也就是喊话),发现喊话的内容是 那个非基址对应的字符串内容... 也就是 这里才是真正存放喊话内容的地方
【05:47】他猜测 这个绿色基址 是VC和文本框关联的一个变量,∴它才会是基址
【06:10】在CE中修改 非基址对应的字符串内容,此时 游戏中喊话内容输入框里面没有任何喊话的内容 直接按回车键,它也能喊出 非基址对应的字符串内容
【07:05】游戏中 按下回车键的时候,什么地方读取了 非基址对应的字符串的内容,(CE “查找读取该地址的代码”) 就在 喊话CALL的附近了
【07:38】CE --> 设置 --> 标签"代码查找" --> 我们尽量使用"使用调试寄存器(硬件断点)"。【07:45】这里我们使用 "外部寄存器"来试一下:
【】
1、
2、