XSE脚本教程之脚本是如何写成的Posted on 2011 年 07 月 13 日 by 口袋精灵
感谢会员 liuyanghejerry 的投递~
二、脚本是如何写成的
脚本的功能虽然多种多样,可是形式却很整齐,有相对固定的格式.
那么我先以一段示例脚本介绍一下脚本的基本格式:
#org @start
lock
faceplayer
message @1 NORMAL
release
end
稍稍解释一些最基本的东西:
#org @start
XSE中的每一个脚本都是以#org开头的,它标志着一个脚本的开始.
后面的@start是指明这个脚本在ROM中存放的位置,它是一个地址[更官方的说,叫偏移量(offset),不过叫地址的话更容易理解].
中间的代码暂且略去,剩下:
end
这个end就表示这一段脚本已经结束了,是每段脚本不能缺少的.
口袋的ROM中有上百个命令,其对应的结构也是五花八门,组合出来的脚本就更是千变万化,如果靠我一个个的教给大家,肯定是不现实的.如果需要参考,最好的就是参看ROM中原始的脚本.
那么如何参考呢?
我们现在打开AM,绑定好XSE,然后随便打开(反编译)一个脚本:
这里有一点误解:反编译的样式必须和编译相同.
反编译的脚本其实是添加过注释的,也就是说并不完全是脚本.
那么什么是注释呢?
注释就是用来解释、说明脚本的附加文字,不属于脚本,XSE在编译的时候会自动处理为空白.XSE默认符号"”"(不包含引号)后的内容为注释,其作用范围是该行之后的部分.
例如:
#org @ddd
lock”表示锁定
faceplayer”abcdefg…
…
…
end
其实相当于:
#org @ddd
lock
faceplayer
…
…
end
所以XSE反编译出来的:
msgbox @3 MSG_KEEPOPEN ”
"Where the talents of TRAINERS\\nare…"
实际只是
msgbox @3 MSG_KEEPOPEN
过滤掉的那些部分只是给人看的,再次编译的时候根本不需要保留.
同样的还有:
”———
” Strings
”———
其实对于XSE来说,这部分根本不存在,我们自己写脚本的时候根本不需要写这些.与此类似的情形还有不少,这里就不再一一赘述了.
有些人自己写脚本还要按照反编译出来的样式,填充不必要的注释,是很可笑的.
这样,我们可以参考ROM中任意的剧情是如何实现的.
而有时候,我们可能会遇到一些陌生的命令或者忘记了某个命令的用法,这就要求助于命令帮助了.
打开命令帮助有两种办法:
1.在菜单中手动打开,然后输入想要查找的命令
2.在脚本中任意选中一个命令,然后按F1
当然,XSE的命令帮助是英文的(而且作者HackMew不允许汉化),大家最好还是掌握一些英文知识.
感谢会员 liuyanghejerry 的投递~
二、脚本是如何写成的
脚本的功能虽然多种多样,可是形式却很整齐,有相对固定的格式.
那么我先以一段示例脚本介绍一下脚本的基本格式:
#org @start
lock
faceplayer
message @1 NORMAL
release
end
稍稍解释一些最基本的东西:
#org @start
XSE中的每一个脚本都是以#org开头的,它标志着一个脚本的开始.
后面的@start是指明这个脚本在ROM中存放的位置,它是一个地址[更官方的说,叫偏移量(offset),不过叫地址的话更容易理解].
中间的代码暂且略去,剩下:
end
这个end就表示这一段脚本已经结束了,是每段脚本不能缺少的.
口袋的ROM中有上百个命令,其对应的结构也是五花八门,组合出来的脚本就更是千变万化,如果靠我一个个的教给大家,肯定是不现实的.如果需要参考,最好的就是参看ROM中原始的脚本.
那么如何参考呢?
我们现在打开AM,绑定好XSE,然后随便打开(反编译)一个脚本:

这里有一点误解:反编译的样式必须和编译相同.
反编译的脚本其实是添加过注释的,也就是说并不完全是脚本.
那么什么是注释呢?
注释就是用来解释、说明脚本的附加文字,不属于脚本,XSE在编译的时候会自动处理为空白.XSE默认符号"”"(不包含引号)后的内容为注释,其作用范围是该行之后的部分.
例如:
#org @ddd
lock”表示锁定
faceplayer”abcdefg…
…
…
end
其实相当于:
#org @ddd
lock
faceplayer
…
…
end
所以XSE反编译出来的:
msgbox @3 MSG_KEEPOPEN ”
"Where the talents of TRAINERS\\nare…"
实际只是
msgbox @3 MSG_KEEPOPEN
过滤掉的那些部分只是给人看的,再次编译的时候根本不需要保留.
同样的还有:
”———
” Strings
”———
其实对于XSE来说,这部分根本不存在,我们自己写脚本的时候根本不需要写这些.与此类似的情形还有不少,这里就不再一一赘述了.
有些人自己写脚本还要按照反编译出来的样式,填充不必要的注释,是很可笑的.
这样,我们可以参考ROM中任意的剧情是如何实现的.
而有时候,我们可能会遇到一些陌生的命令或者忘记了某个命令的用法,这就要求助于命令帮助了.
打开命令帮助有两种办法:
1.在菜单中手动打开,然后输入想要查找的命令
2.在脚本中任意选中一个命令,然后按F1
当然,XSE的命令帮助是英文的(而且作者HackMew不允许汉化),大家最好还是掌握一些英文知识.