PC6下载站

分类分类

gdb修改游戏方法分享

关注+2012-03-01作者:lff

2 页 第 1 页

  这时候跳出任何框子都选OK, 他会运行一段时间,这段时间也就是程序在左ARM的汇编的过程,做完后就是出现了程序的汇编语言了。下面就是要读汇编了。读汇编和GDB调试是最花时间的,我近年修改了有几十个游戏了,平均每次成功修改需要花8-10小时左右的时间,是不是太笨了啊我?还有很多时候是靠运气找到断点的,不是靠技术。很多时候就是要自己不断地去试,一步步走程序才能有结果的。

  在FUNCTION这个TABLE里面,你可以看到所有的子程序名称。你需要自己去猜关键的修改子程序可能会是哪个?哈,很难的。主要找些关键字眼,比如“monry"/gold/exp/hp/mp/level up/buy/store/sell/coin" 这些字眼都合经验、金钱,升级有关。像救世主这个,有一个很明显的子程序名字,“add exp",很有可能就是加经验值的地方。.

  

  然后双击它, 就进入IDA VIEW TABLE

  

  iDA VIEW TABLE很重要, 你几乎所有的活动都是靠这里。那么这里就列出了所有的程序的汇编语言了。

  在这个子程序里面按鼠标右键,选择graph view, 你可以看到程序流程。这个子程序流程比较简单,有些复杂的流程图很能帮你看清楚程序的走向。那些个判断的地方尤其是要注意的。你想,程序判断你有没有钱买东西,有没有经验值达到升级的条件,都不得依靠判断语句才能实现吗?

  

  有没有发现这个流程里面有一个判断,CMP R0,R3, 然后跳转到了LEVEL UP子程序,很明显这里一定是判断你获得的经验值够不够升级,如果够了,就进入升级的子程序了。也就是说如果猜想正确的话,硬性修改R0,R3寄存器的值,你就可以直接升级了。那么什么时候会有经验值的变化呢?显然就是打完怪物的时候啦。所以这时候你就可以用GDB调试你的猜想了。GDB的使用不详述了,这里主要讲如何找到断点。小提示,PS AX 找到游戏进程后,就可以用GDB了。

  

  在打怪物前设置断点,在PC的GDB里面输入break *0x6b4e4. 然后继续游戏打怪。

  

展开全部

相关文章

更多+相同厂商

热门推荐

  • 最新排行
  • 最热排行
  • 评分最高
排行榜

    点击查看更多

      点击查看更多

        点击查看更多

        说两句网友评论

          我要评论...
          取消