邪恶叔 发表于 2010-9-4 15:48:39

被动技能的制作教程

被动技能,它的制作思路,与主动技能的制作思路是有一定不同的。这种不同主要在于对技能发动事件的响应,即所使用的事件不同。
      如果做的是一些类似发球效果的普攻附带技能 ,可以使用闪电之球(新的)这个技能来做,不过能够使用这种方法添加的技能有限,具体请自己尝试。另外球类几率技能一定要smart或attack命令才会触发,否则100%的概率也没用。所以如果无法发动效果,就用触发为单位发布命令吧。
             实际上大多时候,我们都是采用判断攻击的方法。下面的技能就是一个例子:

               这个是个简单的被动技能,就是单位进行攻击时有一定概率击晕面前一定范围的单位。
               前面都是主动技能,这里给大家做一个被动技能的演示。这个被动技能是模拟的,并没有主动技能,如果你要一个类似的英雄技能,你可以做一个没有施放效果的被动技能,通过这个技能的等级来影响数据。这里我就不添加主动技能了。
               要范围眩晕,可以使用的从属技能有几个,例如,穿刺、战争践踏……我这里使用的是穿刺。
               技能的T为:

不可否认,这种方法很简单,不过它有个致命弱点,那就是S流。
         所谓S流,就是攻击然后狂按S键。目的是为了使如上方法制作的被动技能的技能效果多次发动。会有这个问题的原因是单位 - 任意单位 被攻击这个事件的响应时在攻击单位真正的攻击前,也就是在攻击前摇没有结束前就响应了事件。当技能效果发动后,玩家还可以通过发布停止命令来打断单位的普通攻击。于是技能效果就不断的叠加。
         解决的方法是用单位接受伤害事件:单位 - (XXX) 接受伤害)。不过这个事件也不是那么完美。关于这个我们先不去研究,我们先看一个技能。




这是个比较复杂的技能。现在我们不是要研究整个技能,我们只要注意startreg,reg,attacked这三个触发就行。其中startreg,reg这两个触发的存在意义就为attacked注册事件。我们使用这样的方法正是因为接受伤害事件的第一个问题——正常使用时只能选择初始放置在地图上的单位。
       另外的一个问题是:这个事件所判断的是伤害,我们无法用它区分开技能伤害还是普通伤害,然而我们的技能要求是普通攻击附带,而释放技能时不会产生效果。因此,我们不得不用条件来做区分。
       可以区分的有如下几个方面:1、伤害值。技能伤害是特定的值(有益技能的伤害是0),我们可以通过设置英雄的普通伤害是某个特别的值来区别,具体可以使用-1被的致命一击或者其他方法(例如上面的近战抵抗护盾,就是判断反弹伤害的值)。2、魔法效果。大多时候,我们都是使用这个方法,只要判断攻击目标身上是否有特定BUFF就行。不过因为有法球冲突,这样的判断还是有问题的。3,结合者两条。基本上这种方法都是用-1倍带魔法效果的致命一击+0伤害值判断。然而因为带有魔法效果的致命一击会打断目标施法(这个BUFF的效果基本上与重击一样)。
         
       关于被动技能所要说的就这么多。其他的方面参考普通主动技能的制作即可,如果想添加上概率的话,在被注册的触发加上一个判断随机数是否大于某个数的条件即可。

pl05129951 发表于 2010-10-19 20:33:26

先下载下来再说

1224127093 发表于 2011-1-10 15:38:32

强烈支持呀

68112037 发表于 2011-3-5 19:10:36

回复 ou99空空 的帖子要是 是在学习技能后有几率发动技能呢   

衮2011 发表于 2011-3-19 16:48:28

````````````````多字不看- -

523569 发表于 2016-1-1 21:19:32

支持偶久 支持了啊 学习技能

liqiongxian 发表于 2018-9-29 12:14:00

RRRRRRRRRR

liqiongxian 发表于 2018-9-30 10:57:59

啊啊啊啊啊啊啊啊啊啊啊
页: [1]
查看完整版本: 被动技能的制作教程