PVZ2国际版自制关卡教程第二弹——关卡框架
学会了JSON格式,接下来就可以正式进入关卡制作环节了。下面是一个关卡的基本框架:
为了更清晰,作者这里使用了电脑,手机与电脑并没有差别,但最后还是要在手机上游戏里测试。
代码中
波浪号
或
未填入值的项
即需要根据关卡详情填写,下面我们来逐条解释代码的意思。
首先是总的花括号内:
#comment
是此关卡的标题,但实际上和关卡没有多大关系,可以随便填,作用应该是让设计关卡的你区分每一个关卡,如填入:
"#comment": "Test1"
objects
是一个总的列表,其元素为每一个具体的关卡设置。可以看到列表里面有多个花括号,每一个都对应着设置,下面逐一解释。
第一个花括号中:
objclass
固定填入
LevelDefinition
,可以相当于这一设置的标题。这项设置是用来设置关卡的常规内容。
objdata
的值是一个花括号括起来的,即具体的设置。
objdata中:
Description
的值填入关卡描述,内容会出现在刚进入关卡时屏幕的下方,可以随便填,如:
"Description":"A easy test"
LevelNumber
的值填入数字,即此关卡为第几天,对关卡没有太大影响。
Modules
的值是一个列表,规定的是游戏的玩法模式,会与下面的设置呼应,代码中已有的三条是一般每个关卡必要的模式,决定了僵尸胜利的条件和生成的波次,无脑填入就好,具体的玩法模式及设置会在下一篇介绍。
Name
即关卡名,填入的值会在游戏进行时显示在屏幕上。如填入:
"Name":"Test1"
StartingSun
填入数字,用于设置初始阳光数量,会受初始阳光强化道具的加成。此条可以删去,即使用默认阳光数。
StageModule
用于设置场景,填入值的格式是"RTID(世界名Stage@LevelModules)"如想要未来世界的场景即填入:
"StageModule":"RTID(FutureStage@LevelModules)"
注意大小写。
第二个花括号中:
aliases
也可以理解为一个设置的标题,它的值是一个中括号,里面一般是写着对应的游戏模式。如这里的"NewWaves"就对应了游戏模式中的"RTID(NewWaves@CurrentLevel)"
objclass和objdata
在这一项设置填入的值是固定的,抄上去即可,注意写objdata时别忘了它的值是一个花括号。
第三个花括号中:
这条设置是对波次的常规设置。
aliases和objclass
固定。
objdata中:
FlagWaveInterval
的值填入数字,是规定每几波出现大波。如总共有10波,填入5则第5波和第10波会有大波提示。
MaxNextWaveHealthPercentage和Min…
是规定场上僵尸总生命值降低至原总生命值的百分之多少时出现下一波僵尸,一般不去改动。可以填入小数如0.55即55%。
WaveCount
的值填入数字,即一共有几波僵尸。
Waves
的值是一个列表,其元素格式都是["RTID(Wave~@CurrentLevel)"],波浪号填入数字,代表这是第几波,WaveCount的值是多少,就要写到多少波。如:
"WaveCount":3,
"Waves":[
[ "RTID(Wave1@CurrentLevel)" ], [ "RTID(Wave2@…)" ], [ "RTID(Wave3@…)" ]
]
ZombieCountdownFirstWaveSecs
的值填入数字,决定从开始游戏到第一波僵尸到来的时间,单位是秒。
接下来就是对波次的具体设置:
可以这样写:
aliases
中的波浪号填入数字,即这一项设置是对第几波的设置。Wave1就是对第一波的设置。
objclass
填入的值表示从右方出僵尸(常规出怪)。
objdata中:
AdditionalPlantfood
填入数字,表示此波带有多少叶绿素。
Zombies
是一个列表,每个元素就是具体的每个僵尸,元素的格式都是:
{
"Row": 数值, "Type": "RTID(~@ZombieTypes)"
}
Row
为僵尸出现的行,从上到下依次是一二三四五行,删去则随机。
Type
即僵尸种类,波浪号填僵尸名。
如在第二行出一个钢琴家僵尸:
{
"Row":2,
"Type":"RTID(piano@ZombieTypes)"
}
最后是
version
,似乎与关卡没有关系,但必须写上,值为1即可,注意其所在位置,是与
objects
同级的。
至此,一个关卡的模型就出来了,可以试试自定义出怪了。将自制的关卡文件替换原来的关卡,注意文件名,比如文件名为EGYPT1,就替换了原来的埃及第一天,埃及第一天就是你自制的关卡了。要是替换后游戏闪退,则是格式出了问题,检查有没有少了逗号或双引号。若游戏进得去但关卡闪退,则是填入的值出现了问题,排除错误后,成功进入关卡,就可以游玩自制的关卡了。
但你很快发现,关卡没有让你选植物,也没有给定植物,没法玩。这是因为游戏模式并没有选植物模式,在下一篇会依次介绍游戏模式和对应的设置,让你的富有创意的自制关卡完整起来。此篇就到这里,下一篇见~