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

[灌水] 口袋妖怪攻击定义修改计划

口袋妖怪攻击定义修改计划

出于个人爱好,我想把口袋妖怪绿宝石的攻击定义修改成DS平台上的定义(即物理攻击与特殊攻击定义的修改)。
虽然说是个人喜好,但我相信这会给GBA平台上的口袋妖怪带来新活力。

现在我已经用NO$GBA把战斗中对攻击的判定指令找出来了(可能还有其他指令我没找到),
我把它修改成根据技能编号来决定攻击的判定,用几个技能测试了下发现成功了,但是专爱头巾、觉醒技能没有测试。
(注意:我指的NO$GBA不是DS模拟器,是一个可以把ROM指令反编译成ARM指令的工具)

我找的的判定指令如下:
08069598 4651 mov  r1,r10      (r1为技能属性编号)
0806959a 2908 cmp  r1,8h        (r1为技能属性编号)
~
08069704>2F09 CMP  R7,9H        (R7为技能属性编号)
~
0806970c 2809 cmp  r0,9h        (R0为技能属性编号)

所以目前的工作就是要把原有的技能顺序重新排列。
宝石版的技能在DS平台上对应的物理或是特殊我已经弄好了表格,要换顺序的技能有110个左右。
但是换技能顺序这个工作非常麻烦。
首先技能的各项属性可以用RV来更改,技能名字调换也不算太难,只是苦力活...
但是如果调换技能的话,冲浪术、潜水术、碎岩术,秘密力量这4个技能在地图上就失去地图效果。
碎岩术和秘密力量只要用XSE编辑脚本就可以非常轻松解决,问题是冲浪术和潜水术,
因为我们不知道这两个技能的脚本地址,所以要找到脚本的指针才能修改。
但是对于我这个刚学修改ROM的人来说我连指针式是什么都不知道。

还有一个非常困难的问题就是技能的动画。因为有些技能对应的图片都是一样的,而且有些技能是1回合,有些技能是2回合。
所以如果只修改图片就会影响其他技能的动画。我们必须找到运行技能动画的脚本,然后再修改。
这个脚本在NO$GBA上很容易找到,但他是以ARM指令的形式出现,这个我就完全不会改了。

所以我希望有兴趣的人,能帮忙解决地图技能脚本和技能动画脚本的问题。
如果发现我的计划里还有什么方面没想到的,尽管提出。
感谢~~!

[ 本帖最后由 starxxxxx 于 2009-11-8 21:15 编辑 ]

TOP

LZ的计划可以说很全了。。。【沙发】加油啊

TOP

首先还是非常佩服LZ的这个工程,因为这个实行下来非常漫长,需要一定的毅力和技术能力。而且能够从ASM这个角度来思考问题也非常值得赞扬。
不过我想LZ遇到的问题恐怕还不止这些呢。(等你真正开始ASM的时候就知道了,呵呵)
实际上我对更换顺序的思路不是很赞同。
因为这个工程的庞大程度和复杂程度都是匪夷所思的,一旦出BUG甚至难以找到根源。
建议LZ采用逐个配对的办法来对每个技能进行攻击类别的鉴别。
比如系统要调用10号技能时,直接去一个对应的表当中(当然,技能对应的表项是需要一个小计算的)寻找,就像PM的名字一样,用一个表来表达每一个技能的实际类别。听起来可能会觉得占据空间,但实际上占有的空间并非你想象的那么夸张。因为表达的技能类型只有物理、特殊、干扰这三类,所以每个技能所占有的鉴别HEX大小只有半个字节就足够了,这样宝石系列总共不到400个技能,只需要200个字节就足够了。比你去整个重排技能将省力许多。
另外如果已经计划到这个份上了,增加技能是否也在考虑之列?


想死你们了!

TOP

雖然明白你的目的,但製作方式,不太明白~~
所以暫時未能給予任何意見,不過我覺得如果可以改技能/新增技能的話,可不可以以同樣的方法,新增精靈/新增屬性呢??
但如果可以弄出來的話,定是對改版界的一大貢獻~~~
可能那些老外還未弄出來呢~XD---->說說而已~~
希望lz可以成功弄出吧~~^^

TOP

引用:
原帖由 liuyanghejerry 于 2009-11-8 22:44 发表
首先还是非常佩服LZ的这个工程,因为这个实行下来非常漫长,需要一定的毅力和技术能力。而且能够从ASM这个角度来思考问题也非常值得赞扬。
不过我想LZ遇到的问题恐怕还不止这些呢。(等你真正开始ASM的时候就知道了 ...
其实我现在最怕的还是我的技术,我9月份才开始学ROM的改版。...
ASM什么的我也不知道是什么,好像是和ARM一样是编译语言。..
其实我一开始也是想用逐个配对的方法,但问题是我根本不会改...
不过现在知道可以使用逐个配对的方法,我就先朝这个方向搞。
现在还是要学下改法,如果知道的话告诉下。
增加技能或PM的话我还没有这个技术....

TOP

引用:
原帖由 starxxxxx 于 2009-11-13 19:18 发表

其实我现在最怕的还是我的技术,我9月份才开始学ROM的改版。...
ASM什么的我也不知道是什么,好像是和ARM一样是编译语言。..
其实我一开始也是想用逐个配对的方法,但问题是我根本不会改...
不过现在知 ...
459277344

以上是我的Q,想好好学的话可以来找我。


想死你们了!

TOP