MDD

这里说的魔法弹就是大家常说的子弹问题,因为引入了Timeline编辑,刚好可以把魔法弹和Timeline结合起来综合讨论。

常见的魔法弹技能

普通的子弹->

闪电链(有自己行为的子弹)->

召唤物(有自己生命的子弹)

魔法弹概念

我将魔法弹定义为有自主行为的技能生成物

一个技能生成物的行为可能会有一个无限的延申

例如我们要制作一个永久存在的闪电链,当敌人靠近就会进行弹射行为

魔法弹实现

一个简单的魔法弹逻辑我们靠硬编码非常容易实现

但是开篇也提到了

魔法弹的上限其实就是一个有生命属性的AI

所以行为树是一个非常好的魔法弹逻辑制作方案

原因有2:

1.行为树本就适合简单ai的编写。

2.行为树相对于goap之类的复杂ai编写方案更轻量,在制作游戏过程中更适合做既简单又不简单的魔法弹。

魔法弹与Timeline编辑的关系

魔法弹与timeline编辑最重要的关系就是他们两没有关系

让我来看一个比较极端的例子

卡尔的召唤小火人技能:

技能GIF

这个技能timeline如下

slate示例图

可以看到这一段时间轴的总长为0.5s(mddskillengine slate设置默认60帧/s)

而召唤出来的精灵是个长时间持续的单位

这时这段timeline做为一个控制技能表现的辅助工具则无力对精灵之后的生命做出过多的控制

它对于精灵的控制止步于:在某个位置召唤出精灵

这就是单段timeline编辑表现的边界

在边界内timeline可以精确的控制表现,边界外则无力控制。

所以对于制作辅助技能表现的timeline工具而言,我们应该专注于边界内的事情

将边界内的控制力慢慢推向最高。


记录历程,整理思路,共享知识,分享思维。