Board logo

标题: [疑问] 请问有没有修改地图上技能效果的工具 [打印本页]

作者: starxxxxx     时间: 2009-10-31 17:18     标题: 请问有没有修改地图上技能效果的工具

假如我想让某技能在地图上有冲浪功能,有没有相关工具可以完成?
为什么我见到别人能把漩涡改成金银版那样的地图效果?
作者: liuyanghejerry     时间: 2009-10-31 17:22

因为那是tile+脚本的功效。
作者: starxxxxx     时间: 2009-11-1 08:38

那可否使用脚本工具把在地图上使用冲浪的技能改成其他技能?
作者: liuyanghejerry     时间: 2009-11-1 11:28

引用:
原帖由 starxxxxx 于 2009-11-1 08:38 发表
那可否使用脚本工具把在地图上使用冲浪的技能改成其他技能?
是这样的,冲浪技能是你在水边对着水图块按键发生的事件(当然,从技能里选择冲浪另当别论),这样的事件虽然也是脚本,但是你没有办法在AM上看到,因为这是图块本身携带的事件(图块的信息里面会有一个指针,指向一段脚本),所以要修改这样的行为需要你修改地图块事件。目前看来,还没有直接修改图块事件的工具,需要想办法找到这个指针。

不过利用脚本,可以“创造”新的地图技能,比如用AM在一棵树上放置一个事件脚本,然后去编写这个脚本即可(可以实现一定的动画效果)。
作者: starxxxxx     时间: 2009-11-1 18:21

那目前修本修改器里(如XSE)里面的每一句脚本是否对应用UE打开ROM的那些数字?
如果能的话就可以通过UE找出来了...
可否将XSE里的脚本改成UE打开ROM里面的那些数字?
顺便问下有没有宝石版技能在DP里对应物理、特殊攻击的表。[tsj52]
最后问下a-tack_0915的下载地址,找了很多网站都过期了。。。

[ 本帖最后由 starxxxxx 于 2009-11-1 20:55 编辑 ]
作者: liuyanghejerry     时间: 2009-11-1 22:53

脚本里的一切都是UE里面的东西,只是帮你把那些HEX整理成更容易理解的东西。
不懂你说的啥意思,脚本其实本来就是一堆数字而已……
表可能在,但没找到过,也没人找,主要是缺乏有效的思路……
那个工具你在工具箱看看,有了的话就下载吧,没有的话我抽空再找找看
作者: starxxxxx     时间: 2009-11-2 21:53

例如你在脚本里的某个句子,能不能把他翻译成一串16进制数字,然后通过UE的搜索功能找出来?
作者: liuyanghejerry     时间: 2009-11-2 22:13

引用:
原帖由 starxxxxx 于 2009-11-2 21:53 发表
例如你在脚本里的某个句子,能不能把他翻译成一串16进制数字,然后通过UE的搜索功能找出来?
脚本本来就是HEX串。你在编译完毕之后,可以得到它的地址(编译之后肯定会弹出个窗口,里面就有各个脚本段的起始地址)。然后用UE转到那个地址就是了。
作者: starxxxxx     时间: 2009-11-6 20:40

我观察了下,砍树和碎石都有下列语句:
if 0x0 goto 0x8256703
checkattack 0xF9
compare LASTRESULT 0x6
if 0x1 goto 0x8256703
setanimation 0x0 LASTRESULT
bufferpokemon2 0x0 LASTRESULT
bufferattack 0x1 0xF9
那可不可以直接把F9(碎石技能编号)改成39(冲浪技能编号)
然后把他转成1串的16进制数字,然后用UE找出来?要怎样转换?
作者: liuyanghejerry     时间: 2009-11-6 20:46

引用:
原帖由 starxxxxx 于 2009-11-6 20:40 发表
我观察了下,砍树和碎石都有下列语句:
if 0x0 goto 0x8256703
checkattack 0xF9
compare LASTRESULT 0x6
if 0x1 goto 0x8256703
setanimation 0x0 LASTRESULT
bufferpokemon2 0x0 LASTRESULT
bufferattack 0 ...
这一段脚本的功能是这样的:
[xse]
if 0x0 goto 0x8256703'如果结果为0x0则跳转
checkattack 0xF9'检查是否会招式0xF9
compare LASTRESULT 0x6'检查下结果
if 0x1 goto 0x8256703'如果相同就跳转
setanimation 0x0 LASTRESULT'这里是用来准备播放那个动画的
bufferpokemon2 0x0 LASTRESULT'将PM的名字写入变量
bufferattack 0x1 0xF9'将招式的名字写入变量
[/xse]
整个过程里没有具体的招式实现脚本。
如果要制作一个类似的地图技能,你首先需要的就是那个检查是否有招式的命令,其次就是那一段动画(但播放动画的核心你貌似没节选出来),之后就是那两个buffer(作用就是:XX使用了XX)。像树被砍断之类的效果很难做出来,但是能够让人物爬上原本不能爬的地方这样的效果还是能够实现的(强制移动,嘿嘿)。
至于你把它复制出来有什么意义呢,这只是调用地图技能的其中一段脚本而已,并不是地图技本身啊。
作者: starxxxxx     时间: 2009-11-7 00:00

我不是想增设地图技能,而是把冲浪和潜水在地图上的效果调换,即用潜水来冲浪,用冲浪来潜水。
我的设想是这样的,例如compare LASTRESULT 0x6,
如果能转换成16进制代码,则用UE搜索出来,直接改成checkattack 0x39所对应的16进制代码。
这可不可行?
作者: liuyanghejerry     时间: 2009-11-7 01:41

引用:
原帖由 starxxxxx 于 2009-11-7 00:00 发表
我不是想增设地图技能,而是把冲浪和潜水在地图上的效果调换,即用潜水来冲浪,用冲浪来潜水。
我的设想是这样的,例如compare LASTRESULT 0x6,
如果能转换成16进制代码,则用UE搜索出来,直接改成checkattack 0x ...
我很好奇你干嘛不直接用XSE改,而非要用UE。
作者: starxxxxx     时间: 2009-11-7 09:27

引用:
原帖由 liuyanghejerry 于 2009-11-1 11:28 发表


是这样的,冲浪技能是你在水边对着水图块按键发生的事件(当然,从技能里选择冲浪另当别论),这样的事件虽然也是脚本,但是你没有办法在AM上看到,因为这是图块本身携带的事件(图块的信息里面会有一个指针,指 ...
因为我以为你说不能用XSE打开冲浪和潜水的脚本...
在AM上看不到,那要怎样用XSE打开?

[ 本帖最后由 starxxxxx 于 2009-11-7 17:59 编辑 ]
作者: liuyanghejerry     时间: 2009-11-8 15:31

引用:
原帖由 starxxxxx 于 2009-11-7 09:27 发表

因为我以为你说不能用XSE打开冲浪和潜水的脚本...
在AM上看不到,那要怎样用XSE打开?
需要地址一个-。-得弄到地址
作者: starxxxxx     时间: 2009-11-8 17:52

我尝试用UE搜,但是搜不到,难道脚本对应的16进制码不是按顺序排列的?
为什么按写入后得出来的16进制码有问号?
这个指针要怎么搜?我尝试在使用冲浪的时候搜索冲浪的技能编号,
但没有找到只要用冲浪就等于39的内存址(39为冲浪编号)
顺便问个新问题,目前有没有工具可以完全把两个技能在战斗中的动画调换?
作者: liuyanghejerry     时间: 2009-11-8 18:04

16进制全是数字(0-F),怎么可能会有符号出来呢-。-
这个指针不好搜,我抽空帮你找一下有没有老外的文档直接写了这些的。
内存址那句话没看明白-。-
RV就可以吧,RomViewer。见工具箱。
作者: starxxxxx     时间: 2009-11-8 20:30

那个搜内存址就是用模拟器搜金手指...
RV不是只能改技能的数值吗?怎么可以改动画?




欢迎光临 口袋社区-Poke The BBS (https://poketb.com/bbs/) Powered by Discuz! 6.1.0F