游戏工程

如上一篇教程所说,project文件夹下的每个子文件夹,都是一个游戏工程。
当点开一个游戏文件夹时,最外层的结构是这样的。

这也是一个标准的吉里吉里/KAG游戏的结构。
当点下krkr.exe时,就会自动查找Data文件夹,或者名为Data.xp3的打包文件,如果存在,就尝试执行。


Data文件夹

继续打开Data文件夹,会发现里面有更多内容。
看起来很复杂,但实际上有一部分文件夹是空的,所以不用太紧张。
空文件夹的主要的作用是提示,建议你将不同用途的素材放到对应的文件夹下,以方便管理。
下面对所有的文件和文件夹的作用进行说明。

接下来重点介绍的是THE NVL Maker独有的内容。
对于吉里吉里/KAG模板里本身就存在的系统文件,如system文件夹下的内容,请自行查看吉里吉里/KAG官方说明文档或其他教程。


macro文件夹

macro文件夹是存放NVL界面配置文件和自制宏的地方。
各种.tjs为扩展名的界面配置文件,推荐通过界面编辑器来修改。
至于自制宏,则包括由姓名编辑器自动生成的姓名宏,以及可以自由添加修改的空白宏文件。
这些文件具体的用途如下。


map文件夹

map文件夹是存放nvl自定的地图和养成面板设定文件的地方。
两种设定文件的扩展名分别为.map和.edu。
但是本质上都是tjs格式的字典记录,因此也可以直接使用文本编辑器打开查看。


nvl文件夹

nvl文件夹是存放THE NVL Maker的系统框架和各种TJS插件的地方。
在早期版本里,nvl文件夹里的内容都放在macro内,后来为了区别系统代码和界面配置文件,新增了这个文件夹。
这样的好处就是,THE NVL Maker每次更新版本时,只需要更新nvl文件夹,而不用担心无意中覆盖了已经编辑好的界面配置文件。
另外,原来放在system文件夹内的TJS插件,也转移到了这里。
这样保证了system文件夹内的文件都是吉里吉里/KAGEX的标准配置。假如遇到KAG系统需要更新的情况(虽然几乎是不可能的),也不会和其他部分互相干扰。

基本上,系统界面都会由两个部分组成:系统脚本文件和宏文件。
系统脚本文件负责界面的“逻辑”部分。例如显示按钮、等待用户操作、返回。
而宏文件内的函数则定义了具体的功能,并准备了简单的宏指令让系统脚本使用。
这样的写法让系统脚本显得很短而且容易看懂并修改。(相对来说宏文件就不那么容易了……)


scenario文件夹

scenario文件夹是存放剧情脚本的地方。
在标准的吉里吉里/KAG工程里,在KAG系统加载完毕后,第一个读取的剧情脚本文件就是first.ks。
这点对THE NVL Maker来说也是一样的。first.ks里,会先将nvl的系统框架加载进来,之后才开始游戏,进入标题画面或具体的剧情脚本。