Pokemon Center | 口袋中心 以口袋妖怪为主题并带有其他动漫游戏的讨论

标题: 【记录】技能修改 [打印本页]

作者: jiangzhengwenjz    时间: 2015-5-5 21:19
标题: 【记录】技能修改
本帖最后由 jiangzhengwenjz 于 2015-6-2 13:52 编辑

一切基于火红。

事实上目前并没有时间来看这个,主要是把51节的前2天看的一点微不足道的东西先记录一下,日后更新。
参考:Jambo51(部分研究与教程、工具编写),JPAN(研究)

首先由于原版技能应予以保留,因此有必要进行扩充。以下仅列出已测试的必须扩充的表格:(这种方法仅支持到511个技能,若要更多参考Jambo51的帖子,工具的话自行修改PGE的ini)

1、0x250C04(技能数据表)共4260字节,注意重定向后必须修改2个地址的指针 0x250C04 0x250C08(当然由于要扩充所以可以先用原来的数据进行代替,新增字节数12*新技能数)

2、0x247094(技能名称表)共4615字节,修改指针,并用原数据先填充(每个13字节)

3、0x1C68F4(技能动画指针表)共1420字节,修改指针并进行填充。

4、0x4886E8(技能介绍指针表),当然也要改指针并进行填充。

5、0x25011C(技能脚本命令指针表),这里只是为了增加Jambo51新增的callasm指令,本来共F8个但由于编号从0开始所以callasm编号将为F8。

6、0x1D65A8(技能效果指针表),共856字节。(最多能到256个,编号从0~255,注意最后一个指针不是具体的技能效果,所以扩充后也将其放在最后)

然后就是解限&增加命令:

1、命令的增加

编译Jambo51的代码并将新指针加入到重定向后的技能脚本命令指针表后。(thumb模式)

  1. .text
  2. .align 2
  3. .thumb
  4. .thumb_func
  5. .global battlescriptcallasm
  6. main:
  7. push {lr}
  8. push {r1-r7}
  9. ldr r0, scriptlocation
  10. ldr r0, [r0, #0x0]
  11. ldrb r1, [r0, #0x1]
  12. ldrb r2, [r0, #0x2]
  13. lsl r2, r2, #0x8
  14. orr r1, r2
  15. ldrb r2, [r0, #0x3]
  16. lsl r2, r2, #0x10
  17. orr r1, r2
  18. ldrb r2, [r0, #0x4]
  19. lsl r2, r2, #0x18
  20. orr r1, r2
  21. bl bx_r1
  22. ldr r0, scriptlocation
  23. ldr r1, [r0, #0x0]
  24. add r1, #0x5
  25. str r1, [r0, #0x0]
  26. pop {r1-r7}
  27. pop {r0}
  28. bx r0
  29. bx_r1: bx r1
  30. .align
  31. scriptlocation: .word 0x02023D74
复制代码

当然需要让BSP识别这个命令,可以在头文件中添加:

在commands.bsh中添加
  1. #command callasm 0xF8 0x1 "Offset of routine" 0x4
复制代码
即可。(注意这样的话编写时callasm必须写成严格的指针形式,8不能漏)


2、解限:

只有一处代码执行检测造成限制,在0xD75FC。
  1. mov r0, #0xB1
  2. lsl r0, r0, #0x1
  3. cmp r0, r1
复制代码
将这3条指令通通写成0000就行了。

具体内容待更新(或许周末?或许下周?)

511号技能测试(羽栖)
[163]http://imgsrc.baidu.com/forum/pic/item/d3ed1010b912c8fcbd078c8bf9039245d7882162.jpg[/163]

(好吧我承认我只是开个坑督促自己做下去而已)

暂时坑掉,楼主最近缺乏空闲时间
作者: 殇月    时间: 2015-5-5 21:26
刚逛就看到JZW聚聚发神贴了。
作者: 海のLUGIA    时间: 2015-5-5 22:30
还好羽栖有羽毛舞的动画素材可以用~
作者: gujiahao12    时间: 2015-5-6 10:14
对于这个,只能膜拜
作者: awp38184    时间: 2015-5-6 13:11
看不懂。。。只好交出膝盖了。。。
作者: Ocean_Apart    时间: 2015-7-22 14:21
然而我到现在还没有搞明白技能脚本到底是什么?跟技能动画一样么?
作者: jiangzhengwenjz    时间: 2015-7-22 17:59
Ocean_Apart 发表于 2015-7-22 14:21
然而我到现在还没有搞明白技能脚本到底是什么?跟技能动画一样么?

应该类似、只不过研究更透彻
作者: 判仔团    时间: 2015-7-23 21:01
Ocean_Apart 发表于 2015-7-22 14:21
然而我到现在还没有搞明白技能脚本到底是什么?跟技能动画一样么?

类似于xse把数据用命令表示方便我们编辑
作者: Ocean_Apart    时间: 2015-7-24 12:37
判仔团 发表于 2015-7-23 21:01
类似于xse把数据用命令表示方便我们编辑

但是这样,最后做出来的东西,是什么?
作者: jiangzhengwenjz    时间: 2015-7-24 22:44
Ocean_Apart 发表于 2015-7-24 12:37
但是这样,最后做出来的东西,是什么?

具体的技能效果
作者: Ocean_Apart    时间: 2015-7-25 12:36
jiangzhengwenjz 发表于 2015-7-24 22:44
具体的技能效果

原来是这样,懂了




欢迎光临 Pokemon Center | 口袋中心 以口袋妖怪为主题并带有其他动漫游戏的讨论 (http://162.218.49.243/) Powered by Discuz! X3