Skip to content

mcube-12139/jtool-builder

Repository files navigation

Jtool Builder

一个把jtool地图集中成一个可独立运行的游戏的工具。
该工具完全无需依赖Game Maker等其他软件。

用法

输入:

  • 地图目录、皮肤目录、音乐目录。
  • 游戏名。
  • 地图属性文件。
  • 封面图文件。
  • 输出目录。

输出:

  • 可独立运行的游戏。

地图目录

用户应该把游戏中使用的所有地图放置在同一目录下。点击“地图”列表下方的目录输入框,选择地图目录,列表中即会出现该目录下的所有文件。
注意:只支持jtool map(*.jmap)格式的文件,其他格式文件不能被正确识别和读取。

皮肤目录

皮肤决定一个地图的外观。如果您在使用jtool,那么其下的skins目录应该有如下结构:

  • skins
    • skins.ini
    • pat_default
      • skin_config.ini
      • ...
    • k3s5
      • skin_config.ini
      • ...
    • brown_block
      • skin_config.ini
      • ...

这正是jtool builder所需的目录结构。
点击“皮肤”列表下方的文件输入框,选择skins.ini文件,列表中即会出现其中描述的皮肤名列表。
再点击该文件输入框下方的目录输入框,选择skins目录,这样jtool builder就能找到这些皮肤的正确位置。

音乐目录

当游戏在关卡之间切换时,它播放不同的音乐。
用户应该把游戏中使用的所有音乐放在同一目录下。点击“音乐”列表下方的目录输入框,选择音乐目录,列表中即会出现该目录下的所有文件。
注意:只支持OGG文件(*.ogg)格式的文件,其他格式文件不能被正确识别和读取。

游戏名

游戏的名称。生成游戏后,其中的可执行文件名将和它一致;游戏中窗体前缀也将和它一致。
游戏名必须是合法的文件名,不能包含非法字符,否则会使生成过程失败。

地图属性文件

地图属性文件描述所有地图的先后顺序,以及各个地图对应的皮肤和音乐。它应当是有如下格式的文本文件:

<map_name_0>|<skin_name_0>|<music_name_0>
<map_name_1>|<skin_name_1>|<music_name_1>
...
<map_name_n>|<skin_name_n>|<music_name_n>

<map_name_n>, <skin_name_n>, <music_name_n>分别是第n个地图的地图文件名、皮肤名、音乐文件名。文件名可省略后缀,如first.jmap可简写成first
?title地图名有特殊的含义,它不对应任何地图文件,而表示标题界面。例如:

?title|pat_default|title.ogg

表示在标题界面使用pat_default皮肤,播放title.ogg音乐。
如果把皮肤名留空,那么这个地图的皮肤将会是默认的。(砖、刺全是纯黑)
如果把音乐名留空,那么游戏进行到这个地图时,正在播放的音乐将停止,并且不播放新的音乐。

点击“地图属性”文件输入框,选择地图属性文件,jtool builder就能知道所有的地图属性。

封面图文件

封面图就是游戏的封面。它的具体作用是:当游戏开始时,它将在画面正中被展示。

点击“封面文件”文件输入框,选择封面图文件,jtool builder就能知道游戏所使用的封面图。如果留空,那就什么也不会被展示。

注意:只支持PNG文件(*.png)格式的文件,其他格式文件不能被正确识别和读取。

输出目录

生成游戏时,jtool builder将在输出目录下创建一个与游戏名同名的目录,并把游戏输出到该目录下。

注意:输出目录不能是jtool builder所在的目录或其子目录。

特点

  • jtool builder只把使用到的数据添加到生成的游戏中。因此用户可以把多个游戏用到的地图、皮肤、音乐文件放置在同一目录下,在生成游戏时,没有被用到的文件不会被读取。
  • jtool map中的inf, dot, sav, bor属性会在生成的游戏中有相同表现。具体来说,如果其中的inf属性为1,那么当游戏进行到这个地图时,Kid可以进行无限次跳跃;如果dot属性为1,那么当游戏进行到这个地图时,Kid将会变成一个小点。用户可以利用这点进行花样关卡设计。
    地图中的这些属性值取决于您使用jtool时的操作。例如,如果您开着无限跳保存地图,那么这个地图就会是一个“无限跳地图”。
  • jtool中能使用的所有物体,在jtool builder生成的游戏中都可以正确表现。但在jtool中给实例写的代码都不会有效果,因为jtool map文件不保存它们。
    其他不在jtool map文件中保存的物体,在生成的游戏中都没有表现。
  • 地图属性文件中,地图的先后顺序就是它们在游戏中出现的顺序,当Kid接触传送门时,它将根据所述顺序被传送到下一个地图。因此,通常情况下,除最后一个地图外,所有地图都应该包含Kid起始点和传送门实例,以使玩家能进入以后的关卡。而最后一个地图中应该不包含传送门实例,也不包含关卡,而是被用作结束画面。事实上,jtool builder生成的游戏在进入最后一个地图时,就算作游戏结束(存档界面上会出现Clear!!字样)。

About

一个把jtool map组装成独立游戏的工具。

Resources

License

Stars

Watchers

Forks

Packages

No packages published