分享到新浪微博 分享到QQ空间 打印

[疑问] 请教关于改版

请教关于改版

出于个人爱好,我想把绿宝石的物理、特殊攻击定义改成DP的。
于是我便开始翻一些N年前的改GBA ROM帖子,有不会的就问问TGBUS里的人。
从开始接触以来应该有几个星期了吧,终于今天找到了判定的其中一个语句。
首先说明下,由属性的实际数值可以明显知道,
由属性判定是物理还是特殊的ARM句子应该是CMP RX,8H(RX可以是任意一个寄存器,8H变成9H也可以)
这样的语句首先我们可以知道有两个或以上,因为判定你的攻击有一个,判定别人的防守也有一个,可能专爱也要有一个。
我们的任务就是把这些语句全部搜索出来),然后改成我们想要的句子。
————————以上可忽略——————————————————
问题是假如我要在ROM的空白尾段用UE增加一些地址来决定每个技能是属于物理还是特殊,
那究竟要怎么增加?用什么ARM句子才能选择性地读取我新增的地址?
还有NO$GBA有没有搜索定值或ARM句子的功能?

[ 本帖最后由 starxxxxx 于 2009-10-18 22:11 编辑 ]

TOP

需要先找到原来游戏中定义的部分,然后再进行反编译,再把你写好的ASM代码编译进去,才可以说是完成。


想死你们了!

TOP

我一直不明白反编译是什么意思,
如果说是ARM代码换成4位数的话NO$GBA就可以轻松完成。

TOP

引用:
原帖由 starxxxxx 于 2009-10-20 20:39 发表
我一直不明白反编译是什么意思,
如果说是ARM代码换成4位数的话NO$GBA就可以轻松完成。
没错啊,确实可以轻松搞定,但你得到的是一片代码。我们可以将一个游戏运行的过程划分为无数个小程序,这些小程序分别去完成不同的事情。
举个例子,这次的火红中字版就是将字模读取程序进行了修改。
你使用NO$GBA虽然能够得到代码,但却是无目的代码,根本无法确认具体的子程序的具体位置。况且NO$GBA会尝试将一切HEX都解释为代码,这更是无助于修改的。
进行这样的修改,所要做的有两方面,一方面是把处理用的子程序找出来并理解,另一方面就是构造一个自己的。


想死你们了!

TOP