完成效果
本处的制作过程,同样主要用来阐述房间中功能的实现。场景摆件、场景怪物的模型设置与摆放此前已进行介绍,本处不再赘述。
在这一房间中,主要共有以下的功能:
1、玩家进入房间门口区域后,激活boss。
2、boss被激活后,会以一定逻辑攻击和释放弹幕技能。
3、boss死亡后,打开通往下一阶段的道路。
首先是准备工作。同样的,从预设库中的单位类型中,选出适合作为boss的单位类型,复制并进行各属性(名称、模型、普攻、最大生命值等)的修改
这里我们选择阿蛟作为最后的boss。
我们同样需要进行阿蛟的技能制作。这里,我们希望阿蛟能释放出多个大招的水龙。
因此,对于投射物,我们可以复用官方技能中阿蛟大招的投射物逻辑,如图所示
在技能中,我们创造出多个投射物,再分别让其向各个方向运动。如图所示。
最后,我们把技能配置到自定义单位中,阿蛟的技能位中去
至此,我们完成了准备工作,制作了一个拥有弹幕技能的阿蛟。然后我们编辑全局触发器,实现前述的3个功能。
为了实现房间的所有功能,我们需要制作多个触发器。
同样新建一个文件夹,用来进行完整的boss玩法编辑。
在文件夹下创建2个触发器组,其一名为“触发boss”,用来实现前述的功能1;其二名为“BOSS的AI和死亡”,用来实现前述的功能2、3。如下图所示。
在“触发BOSS”触发器组下创建1个触发器,命名为“触发boss的AI”,实现功能1。
将“触发BOSS”的初始状态设为打开,如图所示。
接下来,在“小boss死亡”触发器组下创建2个触发器,分别命名为“打开boss技能”、“boss死亡”,分别用来实现前述的功能2、3。
由于我们的功能2、3依赖于功能1,所以和瞄准房间类似,需要把触发器组的初始状态设为禁用,在功能1执行后再开启。如图所示。
以下对各个触发器的功能和制作方法分别进行说明。
1、触发器【触发boss的AI】
这里我们需要监听的事件是单位进入指定区域,因此选择【单位-任意单位区域事件】,监听进入最终boss区域,如图。
对于动作,我们需要在触发后,分别开启另外2个触发器,并把自身关闭。如图所示。
完整触发器如下图
2、触发器【打开boss技能】
这个触发器用来控制boss的行为逻辑。
我们希望boss在被触发后执行以下的行为逻辑:
(1)攻击接近的敌人,并进行追击,在一定范围以外脱战返回原点
(2)周期性释放弹幕技能
这里我们编写了3个自定义的行为树AI,包括编辑行为树和填写行为树内参数,分别如图所示。
行为树1:读取单位的当前位置(和瞄准房间内的一致)
行为树2:原地防守并追击后返回。可调节警戒距离、脱战距离、普攻距离
行为树3:原地释放无目标的技能1次
关于行为树的原理、各类节点介绍,以及其他更为详细的AI模块说明,可参考【AI模块说明书】,本处同样不再展开。
完成行为树编写后,我们需要再在触发器内进行调用,并填写行为树参数。
由于boss技能的触发器在进入区域后打开,因此我们不需要实质性监听事件。这里通过【计时器-经过一段时间】来实现,让开启1秒后即触发boss的AI。
动作这里,我们先让boss运行行为树1,获得位置信息,再让boss执行行为树2,进行原地警戒,设置参数如图所示
接下来,我们开启一个子触发器。我们希望通过子触发器开启boss周期性的释放技能和原地警戒,因此让子触发器周期执行。
在子触发器中,我们先让boss在每周期开始时终止警戒,在周期的第2秒释放技能,在第6秒继续进行原地警戒和追击。
完整的触发器如图所示。
3、触发器【boss死亡】
这里我们需要监听的事件是boss(阿蛟)的死亡事件,因此我们需要选择【单位-指定单位事件】,和瞄准玩法房间的方式一致。
对于动作,我们需要在boss死亡后,关闭行为树内的子触发器。最后删除阻挡的地图摆件。
完整的触发器如图所示。
这样,我们就实现了boss玩法的触发器设置。