请选择 进入手机版 | 继续访问电脑版

 找回密码
 点一下
查看: 13786|回复: 7

技能制作初级教程(不要在这回复)

  [复制链接]
发表于 2008-8-27 13:30:19 | 显示全部楼层 |阅读模式
因为这个教程完全是与技能制作相关的,所以发在技能区了,诸位路人老大们看着不爽就请丢到教程区吧 。 这个是个相当基础的教程,只是提供给对于制作技能不是很明白的WE爱好者使用,为他们提供一些基础的知识和思路。至于高手们,就帮我找找错误吧,毕竟我这个作者的级别也不过是新手晚期。

认真的说,这个教程是个T技能的教程,无T技能实在是不知道有什么可说的,它需要对于WE的了解达到一定的程度(特别是技能和特效),而J技能,因为我不会J所以也没法写,不过想来会J的人士已经不需要这样一篇基础教程了。

我说过,我是新手晚期。这个不是谦虚,毕竟我真正的开始正式的使用WE不过才两个月(不要看我的注册时间),所以教程内的一切都是我自己的想法,所以有所疏漏或是很正常的,许多名词的定义都是我自己下的,希望大家不要为此骂我。

另外欢迎大家指正。不过请不要在这里回复,一会我会发个专门的帖子(http://www.islga.org/bbs/read.ph ... page=1&toread=1)。后面还有要写的呢,谁帮我吧最后那个回复删除。

另外下载的也发上来了,就是我是用office2007写的,老版本的office打不开。

技能.rar

909 KB, 下载次数: 6489

评分

参与人数 1威望 +10 收起 理由
sxlrose + 10 优秀文章

查看全部评分

 楼主| 发表于 2008-8-27 13:36:26 | 显示全部楼层
一、 概述
无论你做的是一个什么技能,你都要有一个思路。这是你所做的技能的根本,如果你没有一个确定的思路,那么毫无疑问,你做不出你想要的技能。
制作一个技能,首先你要考虑的问题就是你要做一个什么样的技能,因此你需要知道技能都有什么样的。以下就是从各个方面对与技能的分类,通过确认你所想制作的技能的详细分类,你就可以很方便的确定这个技能的制作思路。

从技能制作基础分类,可分为:无T技能,T技能,J技能。
从技能施放类型分类,可分为:主动技能,被动技能,自动技能,光环技能。
从技能施放目标分类,可分为:点目标技能,单位目标技能,无目标技能。
从技能目标数量分类,可分为:单体技能,群体技能。
从技能施放结果分类,可分为:伤害技能,召唤技能,效果技能,特殊技能。
从技能施放画面分类,可分为:动作技能,效果技能。
从技能持续时间分类,可分为:持续型技能,立即型技能。
从技能施放者数量分类,可分为:独有技能,共有技能。
从技能所有属性分类,可分为:英雄技能,单位技能,物品技能。
从技能制作关系分类,可分为:原始技能,修改技能。
从技能组成类型分类,可分为:单一技能,组合技能。
……

以上是我个人的分类,并非官方的定义,如此定义,是为了方便技能制作思路的完善。实际上这些分类只是部分,不过把一个技能从以上几个方面分类之后,一个技能的主体脉络就出来了,下面我详细解释一下,每一个分类对应的思路。

1、 从技能制作基础分类

这个分类实际上可以不是最先考虑的,但也是不得不最先考虑的。制作一个技能,我们首先要知道我们要用什么来做。实际上三个类别对应的正是我们制作技能的三种方法。使用这三种方法来制作技能会有不同的需求和效果。

无T技能。这是我们最先接触到的技能,包括WE自己带的技能都算。这个是在制作技能入门时我们最先面对的技能,说它是最简单的技能不为过。而制作一个好的无T技能并不是想象中的那么简单,为了能够制作出你想要的技能效果,首先你必须对于每个技能本身十分了解,尤其是每个技能的特效分布。举例来说:穿刺这个技能的效果是一条直线,两个相邻特效的距离中等,特效的出现顺序大约是同时。而烈焰风暴这个技能的效果是一个圆范围内,两个相邻特效的距离很近,特效出现的顺序是中间的一个先出现,然后死圆范围的,另外还有一个(什么时候出现我也不太清楚)。当你对于上面我所说的很了解时你才能为了达到所需要的效果而选择出正确的技能。关于无T技能,我所了解的不是很多,唯一可以提示大家的是制作它的时候经常需要用到一些自释放技能(不是自动技能,大部分自己技能需要人工控制下才开始自动施放),比如:工厂,凤凰火焰,献祭……相比其他两种类型的技能,无T技能还是有者其特别的好处的,那就是它会更加的不卡。这个是我自己的想法,理由就是我相信WE自带的技能的相关排泄做的要比我们好,同样是多个需要排泄的点、或者特效、或者其他,这些自带技能的排泄的时机与完全性都要比我们利用T或J做的好。至于我的这种猜测是否正确,就需要各位帮忙想办法测试下了。

T技能 。这个就是这篇技能所要描述的,它是正是进入新手期的新人所使开始用的,并且即使是老手,大约很多时候会用它。它的优点很多,几乎八成技能可以通过T来做,学习也不是很复杂,上手也很容易(相对于J技能)。不过它的缺点也更加明显。不用UI无法排泄就是一个很大的问题(自定义代码那东西叫T么?应该是部分的J吧),而且有些技能用T做很困难,另外T技能的移植性不是很好,如果一个技能需要可以被多个单位使用的话,变量冲突是个很大的问题,虽然不是无法解决。

J技能。老实说,我不会J。倒不是因为它太难,实际上只要学过一些编程语言便很容易入门,只是一直没有那个时间,相比于T它上手比较慢,需要记忆的东西很多,不过会了这个大约就什么都能做了(只要WE允许),详细的我也不多说了。

2、 从技能施放类型分类

为了说明方便,我们需要定义一个名词——主体技能。
主体技能,就是技能的持有单位所持有的技能,大部分技能会涉及到许多个技能,而我们所说的主体技能就是添加到单位身上那一个,一般来说我们制作的一个技能只有一个主体技能,不过在少数情况下也有可能会没有主体技能或者有多个主体技能。相对的除了主体技能,一个组合技能中的其他技能我们称知为从属技能。
这个分类就是为了你选择主体技能的依据了。如果你要做的是一个主动技能,自然你要选择一个主动的主体技能,如果你要做的是一个自动技能,自然你要选择一个自动的主体技能如果你要做的是一个被动技能,自然你要选择一个被动的主体技能。在某些情况下,被动技能不需要主体技能(有时即使有一个,也不过是用来看说明的)比如多少词攻击、杀死多少个单位后出现效果的技能。

3、 从技能施放目标分类

]这是选择主体技能的另一个依据,它涉及到对于技能施放时机、目标的选取(详细我会在后免说)。具体来说也就是你要做个什么样的技能,你就要选择一个什么样的主体技能。

4、 从技能目标数量分类

这个分类就是你的技能施放结果影响到单位的数量,也是主体技能选择的一需要考虑的内容。而且有些时候为了可以影响到多个目标,需要用T选取单位。
5、 从技能施放结果分类

这是也选择主体技能的一个依据,对应分类选择就可以了。关于伤害和召唤对象的问题我也会在后面说,效果技能是指减速那一类的技能。这里特别说明一下特殊技能这个分类。这个分类的范围比较广,两个特殊技能分类的技能之间也很有可能没有什么联系,实际上我并没有见过多少这样的技能。传送类的技能算是其中的一种吧,还有建筑建筑物是另一种。实话说这个分类就是包括了所有不属于其他三种类型的技能。

6、 从技能施放画面分类

这是当我们做一个技能的最主要的部分,虽然相对于技能本身它并不是很重要。之所以这么说是因为我们做一个技能的目的就是要一个有着我们所需要的动画的技能。而制作技能的动画也是制作一个技能最有难度的地方。
我所分的两个类别的区分不是很明显,现在通常做出的技能一般都同时带有动作和效果。这种区分只是看一个技能的侧重点,实际上一个动作技能的特效制作和一个特效技能的特效制作是没有区别的。

7、 从技能持续时间分类

这个是一个选取主体技能的依据。对于持续型技能和立即型技能的制作上的差别不是很大:暂停单位、眩晕……都是控制时间的方法,当然如果你用的主体技能本身也可以是一个持续技能,在某些时候这样会更方便一些。

8、 从技能施放者数量分类

这个就是关系到变量冲突等一系列问题了。J技能是没这个麻烦的,无T 技能用不到变量自然也没关系,变量冲突是T技能的一个特有问题。实际上这个问题有两种解决方案:一是使用一些自定义代码(类似J,我一直不认为这样做出的技能不是纯T技能),二是巧妙的使用数组,使用数组就要求技能制作者的自身水平了。

9、 从技能所有属性分类

这样的名称是容易引起误会的,不过看详细类别就可以明白我的意思。普通技能和英雄技能的差别就是普通技能不用也无法升级(当然可以T控制了,我是说手动),很容易添加和删除。而英雄技能是可以升级的,完全的添加和删除需要工程升级,比较麻烦,物品技能跟普通技能差不多,就是要有物品才能施放。
通过这九个方面几乎技能的主体思路就出来了,不要说这样分类了你还想不出来你心中的技能怎么做。制作技能的思路的第一个部分就是确定用什么来做和选什么样的主体技能,而后是相关的画面效果和数据。确定了这些就可以开始实际的制作一个技能了。


另外为了说明方便,我又添加了两个技能分类:

1、 从技能制作关系分类

原始技能就是WC3自带的那些技能,无论你是否修改过,简单的说就是物体编辑器中技能类别下的标准技能;修改技能就是你自定义的新技能,任何一个修改技能都有一个相对的原始技能作为基础。这个基础就是你在用T发动技能时所选择的项目。
2、 从技能组成类型分类

单一技能就是无T的一个原始或修改技能从属技能合主体技能都一定是单一技能;而组合技能就是多个单一技能组成的完整技能。大部分T技能都是组合技能,当然部分简单的也还是单一技能。
回复

使用道具 举报

 楼主| 发表于 2008-8-27 13:38:16 | 显示全部楼层
二、 当技能施放

事件是由一个触发的起始,也是一个T技能的起始。当主体技能开始施放时我们需要获取一些相关信息来为我们下面的步骤做准备。一般来说我们通过这个事件来获取施放技能的动作:
[trigger]
事件
    单位 – 任意单位 开始施放技能
[/trigger]

当然,你也可以根据需要选择使用的事件:单位 – 任意单位 准备施放技能,单位 – 任意单位 停止施放技能……如果是召唤技能的话还可以使用单位 – 任意单位 被召唤(召唤单位),有些记录攻击次数或者杀敌次数的会使用单位 – 任意单位 被攻击,单位 – 任意单位 死亡。注意任意单位事件是对所有单位都加上事件,那么相应的,它会占用内存,当我们做演示的时候用的少可以不必在意,如果是使用在地图中最好把所有的任意单位事件统一使用(用同一个T通过判断条件来运行不同的触发,这样任意单位事件会使用的更少些),以减少地图卡的可能。

相对的为了确定目标的正确我们就要添加条件
[trigger]
条件
    (施放的技能) 等于 XXX
[/trigger]

XXX代表你的主体技能。对应单位 – 任意单位 被召唤(召唤单位)我们使用条件(召唤者) 等于 XXX;对应单位 – 任意单位 被攻击 我们使用条件(攻击单位) 等于 XXX;对应单位 – 任意单位 死亡 我们使用条件(凶手单位) 等于 XXX。

这样施放技能的动作就得到了,不过要注意的是被动技能的施放的事件无法获得,解决这个问题的方法有两个:一,是如果被动技能有魔法效果,可以通过判断被攻击单位身上是否有特定的魔法效果。不过这种方法特别麻烦,因为得到伤害和得到魔法效果不是同时的,我把判断延迟加大到0.2秒才可以做出正确的判断。下面是相关的演示
演示1.w3x (17 KB, 下载次数: 3062) .
另一个犯法就是模拟技能,获取单位 – 任意单位 被攻击 事件,然后随机数概率,发动效果。
获取技能施放的事件之后就要得到施放一些数据了,比如,目标单位,目标点……这是根据主技能的原始技能确定的(原始技能就是指当你把一个技能改造成为主技能时,你所改造那个技能)获取数据可以采用这样的动作:

[trigger]
动作
    设置 XXX = YYY
[/trigger]

XXX代表记录的变量名称,YYY代表对象,对象根据XXX的类型和事件确定。如果搞不清楚用哪个的话可以看一些其他的介绍T的教程。
可以得到的除了直接记录的数据,还可以间接获得,比如施放目标的位置。
回复

使用道具 举报

 楼主| 发表于 2008-8-27 13:42:16 | 显示全部楼层
三、技能的施放画面

技能的施放画面是我们在做一个组合技能时最主要制作的部分,而这也是一个组合技能最复杂的地方,一个组合技能的价值就在这里。一般我们称技能释放画为施放效果,为了与伤害,减速一类的施放的效果区别,所以我们在这里才称之为技能释放画。
在这里,我由浅入深的说明一下一个技能的效果的制作。

㈠、基本的技能施放画面果

1、几何技能画面

做一个什么样的T技能最简单呢?这个问题拿去问的话,九成以上的人会回答圆技能。至于为什么会有这么多人这样回答,我想原因就在于圆的坐标点太容易找。一个静态的几何技能施放画面的核心就是点的确定。而正因为点好确定,所以静态的圆技能会被技能区的诸位无视吧。
[trigger]
动作
      设置 XXX = (从 AAA 开始,距离 BBB 方向 为CCC 度的位移处 )
[/trigger]

这个就是找到从一个点开始极坐标位移处点的动作。如果使用循环,就可以找到在一个已知圆心和半径的圆任意等分圆周的一系列点,也就是这个圆的一个内接正N边形的顶点。当你记录下这些点并在每个点上创建好特效(或者单位),一个简单的圆技能效果就完成了。动作如下

[trigger]
动作
      For NUM 从 M到N,做动作
       LOOP – 动作
             设置 XXX = (从 AAA 开始,距离 BBB 方向 为CCC 度的位移处 )
             特殊效果 – 在 XXX 创建特效:……
[/trigger]

NUM是自定义循环整数,当然你是可以用循环整数A或B来代替的,但是都用这两个会引起冲突,还是自定义一个吧。XXX是个点变量,如果你不再需要使用这个点你可以使用一个单独的变量,如果你还需要这些点的话,就用数组记录吧。另外你也可以创造单位。
自然,为了达到最好的效果,你需要找好等分的数量和圆的半径的关系。如果你做的是一个正多变形技能施放画面的话,也是一样的。
同样的道理用坐标位移点你也可以 做出矩形,三角形技能,用法都是一样的,利用这两个动作找好你需要的点就可以了。

除去固定点特效的技能施放画面,还有随机点的。使用的是这个动作:

[trigger]
动作
      设置 d = (XXX 内的随机点)
[/trigger]

XXX是一个矩形区域。

2、动作技能施放画面
动作技能施放画面是完全不同于几何技能施放画面效果的技能释放画面,它所利用的不是在点上创建特效或绑定单位特效,而是单位的模型的动作动画。
当你在WE里选择一个放置好的单位,或者在物体编辑器里选择单位的模型,或者你在触发编辑器的特效的动作选择特效时,WE的主窗口的左中部会显示这个模型的动画。
如下图。
   未命名.jpg
在这里你可以看到每一个模型的样子及它的所有动作。

图中黑色圆圈的地方就是我们在做一个动作技能效果时所需要的代码。播放动画的代码。

当我们要一个单位播放它的模型的某一个动作的动画时,我们用这样的动作:

[trigger]
动作
     动画 – 播放 XXX 的 YYY 动作
[/trigger]

XXX是你要播放动画的单位,YYY就是上面说的动画的代码。

下面动作的动作是恢复单位的动画,一般都是恢复到stand动画。

[trigger]
动作
     动画 – 重置 XXX 动作,恢复到正常装态
[/trigger]

注意,单位的walk动画无法用T播放出来(有UI可以)。
补充下WALK动画的播放方法
WALK动画的播放

对于常制作动作类技能的WEER来说,
单位的WAKL动画的播放是一件很讨厌的事情
因为它不像stand,attack,动画那样可以直接用播放动画的方法播放
如果你试着使用动画 - 播放 (触发单位) 的 walk 来播放WALK动画
你会发现单位只是动了一下
实际上WALK动画是需要循环播放的
那么当我们要播放单位的WALK动画时怎么办呢
很简单
只要设置单位的移动速度为0就可以了
……
简单吧


㈡、基本技能施放画面的扩展

几何技能效果和动作技能施放画面就是组成一个技能的小股的基本单元,几乎所有的技能的施放画面都是由他们组成,但是仅仅依靠他们是不够的,我们还有在他们的基础上改进,这样我们做的技能才会更加的华丽。

1、移动

移动是技能释放画面的最常用的扩展,无论是几何类技能施放画面还是动作类技能施放画面都会用到。动作类施放画面的三个常用效果(跳跃、影子、击退)都会用到移动,当然,特效是无法移动的,不过如果需要的施放画面是移动的特效,那么一般都会把特效加到单位的模型上去,通过单位的位置变化来表现特效的位置变化。 因此无论是几何技能释放画面中的移动还是动作技能释放画面中的移动都是单位的移动。而单位的移动有两种方式,它们也在不同的条件用在不同的效果中。单位的普通移动是第一种移动,这种移动的使用就对单位发布移动命令。

[trigger]
动作
     单位 – 对 XXX 发布 移动 命令到目标点:YYY
[/trigger]

这种方式的移动一般很少使用,原因有两个方面,一是它有速度上限(单位的移动速度上限是522),二是这样的移动的路径不确定,长距离移动会影响效果。另外,当单位基础速度=0时,表示该单位不能移动,不能转向,这时无论你给他加多少移动速度都是不会动的。当单位基础速度=1时,该单位移动为0,但只要给他加移动速度,就可以动了。最小/最大移动速度为负数时,将被作为1来处理第二种移动方式就是用T来移动单位位置,这种方法比较常用,但是还是有诸多限制,比如远距离的快速运动很容易露馅。

对应的动作是单位 – 移动单位的一些列动作。

转向也可以算是移动的一种特殊方式,有些时候是要改变一下单位的面向角度的。单位 – 移动单位 这个系列的动作中有可以转向的动作,除此之外你还可以使用单位 – 设置 单位面向角度 的一系列来转向,特别是当你需要确定转向时间时,你可以用这个动作

[trigger]
动作
     单位 – 设置 XXX 的面向角度为 YYY 度,使用时间 ZZZ 秒
[/trigger]

除去以上两种转向动作,还有一种可以在普通移动中改变单位的面向角度的动作(移动单位的动作会打断单位的原有的移动命令,而且当普通移动时单位会自动面向移动方向,所以移动单位中的改变角度和设置单位的面向角度都是使用在站立不动的单位上的)

[trigger]
动作
     动画 – 锁定 XXX 的 YYY 朝向 ZZZ ,偏移坐标 (0.00,0.00,0.00)
[/trigger]

XXX是要改变面向方向的单位,YYY是选择身体还是只有头部(我没用过头部的),ZZZ是面向的单位,这个动所作锁定的面向方向的角度的给定不是通过点或者实数数据,而是通过面向的单位给予的,后面的三个坐标是面向单位的偏移。要恢复正常用动画 – 重置 XXX 的身体朝向。

关于技能释放画面的移动,可以说的就这么几点,但是在实际使用中还是比较复杂的,为了能够达到一个好的效果,来回调节是不可避免的。
几何技能释放画面移动一般都是利用T的移动动作移动的,确定好移动到的点和移动之间的时间间隔就可以了。

动作技能释放画面移动是很常用的,也是比较讨厌的,从简单的方面书,动作技能释放画面移动的使用所要注意的与技能释放画面移动相差不多,确定好移动到的点和移动之间的时间间隔是首要的。移动时的单位动画,也就是单位模型的WALK动作则是效果移动中最麻烦的地方。

如果你使用的是单位的普通移动,自然没有这个顾虑,单位的普通移动是会播放单位的WALK动画的。但是当你不得不用T的动作来作出效果移动那就麻烦了。这个问题我自己都没有完全解决,WALK动画的播放可以使用如下动作:
[trigger]
动作
      动画 – 播放 XXX 的#Y 的动作
[/trigger]

注意这个动作是使用了UI才有的,其中Y是播放动画的序号,这个就自己找吧,


技能释放画面移动在实际中有一个典型的使用,那就是单位影子,为了使影子可以跟随主体,你必须移动影子单位,这里一般都是使用这样的T

[trigger]
事件
      时间 – 每 A 秒触发事件
条件
动作
      设置 –  B = ((C)的位置)
      设置 –  D = (从 B 开始,距离 E ,方向为 ( C 的面向角度)度的位移处)
      单位 – 对 F 发布 移动 命令到目标点: D
[/trigger]
A是循环的时间间隔,C是主体单位,E是影子和主体的距离,F是影子单位。这个触发就是间隔一定时间移动到主体的背后一定距离的位置。当然你也可以不要这个距离,根据需要进行取舍。这种影子一般都是用在疾风步上的,如果是技能效果上的不需要WALK动画的影子,同样用T移动单位就可以了,不需要特别的动作。  此外影子的移动还有别的办法,具体请看最后的移动影子那个演示的说明。

2、单位的动作动画播放速度

这个是动作技能释放画面上要用到的,相关的动作是

[trigger]
动作
     动画 – 改变 XXX 的动画播放速度为正常速度的 YYY%
[/trigger]

这个通过对YYY的改变我们可以达到很多效果,比如通过设置YYY为负数来使动画逆向播放(不过先要把动画播放到最后才行),或者通过改变动画速度来指定单位的某一段动画(需要找好恰当的等待时间和速度,而且很难保证播放的段落是想要的,只是理论上成立,实用性很小)。

动作动画播放速度的设置和使用的内容很少,但是在动作技能释放画面的制作上的使用率相当高,要想做好一个动作技能,必须对动作动画播放十分了解并熟练掌握。
3、高度变化

动作技能释放画面制作中使用第二多的技能释放画面的扩展。

想要使单位的高度可以发生变化,首先要使想改变高度的单位是飞行单位——只有飞行单位才可以改变高度。不过我们不需要更改单位的移动类型(有些时候也无法改变),只要为单位添加上暗夜精灵族的风暴之鸦技能,如果改变高度的单位是一个可以操作的单位,你不希望显示这个技能你可以对那个单位的所有玩家禁用这个技能。详细的动作如下

[trigger]
动作
     单位 – 添加 风暴之鸦 给 XXX
     玩家 – 禁用 风暴之鸦 对 (XXX 的所有者)
     动画 – 改变 XXX 的飞行高度为 YYY ,改变速率: ZZZ
[/trigger]

当改变完成后删除风暴之鸦技能就可以了。

改变高度是一个持续性的动作,持续时间同当前高度与改变高度的差和改变速度有关。

4、颜色修改

这里的颜色修改是指模型颜色的修改。
无论要修改的是什么模型(单位、特效)的颜色,都需要把这个模型添加给一个单位作为模型文件,之后根据需要可以使用T修改或者修改单位的数据使单位创建后就是被修改好的颜色。T的动作:

[trigger]
动作
         动画 – 改变 XXX 的颜色比例 (a%,b%,c%),透明度d%
[/trigger]

a、b、c分别为红、绿、蓝三种颜色的百分比。这里的颜色不是直接修改单位模型的颜色,而是修改模型的三原色透明度,而不是模型的贴图颜色,所以你最多只能使一个模型不改变颜色或者变成纯黑,而无法把一个单位的模型变为纯白。

闪电特效的颜色可以直接改,动作如下

[trigger]
动作
         闪电效果 - 改变 AAA 的颜色值为(XXX YYY ZZZ) Alpha通道值为 MMM
[/trigger]

AAA是所要改变的闪电特效,MMM是透明度,XXX、YYY、ZZZ是红、绿、蓝三种颜色的比率,大小是0~1的实数。(关于闪电特效的其他内容后面会说)

5、从属技能

有很多的完整技能在施放并不是只使用了主体技能一个技能,有些时候它还会使用一些从属技能。制作出的组合技能中去除主体技能的其它相关技能我们称之为从属技能。

通常这些从属技能是为了达到某种效果或者为范围内的单位添加魔法效果、伤害。一般来说在几何技能效果里通常用到的都是冲击波、穿刺等直线从属技能。为了可以为目标单位添加上指定的魔法效果可以使用带魔法效果的从属技能,为了方便达到一些特别的效果,我们也会用到一些从属技能。

使用从属技能,除了少数的自动施放技能,我们都要通过一条动作来发动技能。发动的技能的动作是单位 – 发布命令 的一系列动作,根据从属技能的技能施放目标分类来选择相应的动作。而选择的施放技能为该技能的原始技能。

群体技能就是使用从属技能的一个典型的例子,一般的,主技能是英雄技能,而从属技能是单位技能。

有几个特别的从属技能比较常用:球体、蝗虫、魔法书。球体是用来添加绑定效果的,一般是新建的单位就需要带有某个绑定特效时使用这个技能,免去用T添加和排泄的麻烦。蝗虫技能一般是用来使单位无法选择和关闭碰撞的。魔法书可以做天赋技能,方法是把致命一击之类的被动技能加入魔法书,再对玩家禁用魔法书,这样就可以使英雄有类似天赋技能的被动技能。魔法书还可以是单位的可见技能超过五个。

walk动画播放.w3x

19 KB, 下载次数: 1604

回复

使用道具 举报

 楼主| 发表于 2008-8-27 13:49:29 | 显示全部楼层
四、 技能施放完成后的结果

制作完成技能的释放画面,余下的任务就是完成技能的施放效果了。无论是伤害、魔法效果、召唤生物还是其他,一个技能总会有一种或更多的施放效果。

下面我们就来考虑每种施放效果如何添加。

1、 伤害

伤害是最普通的技能施放效果,九成以上的技能拥有伤害。伤害的添加有两种方式,一种是技能附带,另一种是T添加。

技能附带是很方便的一种方法,一般来说大部分技能都是这样添加伤害的。这个唯一需要注意的就是有些技能上的伤害不是由一个数据确定的,是多个数据一同确定,需要详细计算。

另一种方法是用T添加。动作是:
[trigger]
动作
    单位 – 命令 XXX 对 YYY 造成 ZZZ 点伤害,攻击类型: AAA 伤害类型: BBB
          单位 – 命令 XXX 在 N 秒后对半径为 M 圆心为 YYY 的范围造成 ZZZ 点伤害,攻击类型: AAA 伤害类型: BBB
[/trigger]

第二条动作是对单个单位和范围内单位造成伤害的动作。使用时要注意范围伤害是不分敌我的,包括发动伤害的单位。一般来说对范围内的敌对单位的伤害都是用单个单位的伤害。具体方法:

[trigger]
动作
    单位组 – 选取 MMM内所有单位做动作
    LOOP – 动作
            单位 – 命令 XXX 对 (选取单位) 造成 ZZZ 点伤害,攻击类型: AAA 伤害类型: BBB
[/trigger]

MMM是选好的单位组,比如圆范围内施法单位的敌对可以这样选择:

[trigger]
动作
    单位组 – 选取 (半径为 M 圆心为 YYY 且满足 (((匹配单位) 是 (XXX 的所有者) 的敌对单位) 等于 TURE) 的所有单位)内所有单位做动作
    LOOP – 动作
            单位 – 命令 XXX 对 (选取单位) 造成 ZZZ 点伤害,攻击类型: AAA 伤害类型: BBB
[/trigger]

当然也可以不在添加伤害时添加,提前选好。

2、 魔法效果

魔法效果这个施放效果是好删不好加。删除魔法效果可以使用 单位 – 删除魔法效果 的一系列动作。

要添加魔法效果,只能使用从属技能添加。要注意的是魔法效果的实际效果是技能附带的,比如你把减速的魔法效果换成眩晕(物体编辑器中魔法效果那项),那么当你对某个单位使用了这个技能,那个单位的身上依旧会显示成为被眩晕,但是目标单位实际上是是被减速了。这是因为魔法效果只是在一定时间内保留在目标单位身上的一个特效,和对应的说明。真正的效果是技能自身添加的。

所以你可以随意更改魔法效果,但是要注意区域效果和单体效果不能通用。

另外有一个问题要注意,你可以吧一个技能的魔法效果更改为不可见,但是你不能在技能的数据中删除掉魔法效果,也就是说如果你吧一个本来带有魔法效果的技能的魔法效果一项清空的话,就会出现问题。这种问题在光环技能上特别明显。

演示2.w3x (14 KB, 下载次数: 1270)

出现这种问题的原因是一个带有魔法效果的技能的魔法效果项被清空后,技能会为目标单位添加单位的默认魔法效果。而当此技能是一个光环技能,技能开始判断一个已经带有魔法效果单位是否带有光环的魔法效果时,由于单位身上带有的是默认的魔法效果,并非是技能设置的魔法效果(不知道它是怎么判断的,对比项是什么)于是再次添加了技能的属性。于是对于每个光环属性的带有者会得到两倍的光环效果(不可叠加的效果不变)。

3、 召唤生物

召唤生物这种施放效果的种类比较多,要注意对应技能的施放条件,比如有些是对尸体施放的。如果无法找到需要的基础技能,就需要模拟了。另外召唤技能的召唤单位的持续时间是无限的,比如地穴领主的腐尸甲虫技能就是没有时间限制的,而有些是可以调节的。还有召唤数量的问题,有些技能召唤出的单位可以叠加,有些则会在下次召唤时会消失,甚至有些技能之间发生冲突无法同时使用。

4、 其他

除去以上三种,还有一些其他的施放效果,比如传送等。想做这类施放效果,那就需要对WE更加了解了。
要特别说一下的是属性影响的技能,比如DOTA中的屠夫的积尸技能,就是通过计算杀人数来影响单位的属性的。

[trigger]
动作
    英雄 - 修改 XXX 对 YYY : 添加 ZZZ 点
[/trigger]

XXX是要修改的属性,YYY是修改的英雄单位,ZZZ是修改的值,其中添加也可以修改为减少。

其它属性需要用附属技能修改,比如可以用加各项属性的物品的技能修改,不过要注意三围(力量、敏捷、智力)和攻击防御有些附属技能不是直接加上(原始数据),这会影响到一些相关内容的计算,所以使用哪个附属技能要有所考虑。
回复

使用道具 举报

 楼主| 发表于 2008-8-27 14:03:06 | 显示全部楼层
五、技能的相关(部分内容参考老的WE教程,可能有些错误)
一个成品技能除去动画效果和施放效果,还需要说明等相关的内容。这一部分的内容就是介绍这些。 另外做一些在做技能需要用到的内容也会在这里说明。
㈠技能自身相关

1、技能说明

技能的说名自行更改就可以。   

要用到技能的数据的地方,可以使用代码<技能代码,数据代码>,相应的代码在物体编辑器里按Ctrl+D就可以得到了。你可以参考原始说明。

想用彩色字的话使用如下代码|(八位彩色代码)(内容)|r,(不要添加括号),比如你可以添加|cffffcc00D|r来输出一个金黄色的D字母。具体颜色的代码可以在工具区下载。

2、按钮位置

显示—按钮位置—关闭 X:设置可开启或关闭的技能开启后图标的横排位置。也就是技能图标在单位命令栏的横排位置。
显示—按钮位置—关闭 Y:设置可开启或关闭的技能开启后图标的纵排位置。
显示—按钮位置—普通 X/Y:设置技能图标的位置。
显示—按钮位置—研究 X/Y:设置学习技能时技能图标的位置。

技能图标的位置具体如下:
│X0,Y0│X1,Y0│X2,Y0│X3,Y0│
│X0,Y1│X1,Y1│X2,Y1│X3,Y1│
│X0,Y2│X1,Y2│X2,Y2│X3,Y2│

技能与技能图标位置之间最好不要重叠,这样技能也许会看不见。如果位置重叠,技能会隐藏,但被动技能一样发挥作用,另外一般的单位只能同时显示5个技能,多余的技能则有可能看不到,所以如果单位身上的技能很多,可以用魔法书放到一起使用。

3、目标允许

设置技能可对其施法或作用的单位类型,这些选项可以分组:

空中、地面、建筑、守卫是4大类,如果选只选了这4项就能够攻击绝大部分物体。这4项必须至少选一项,否则单位就无法战斗。

A组:中立、敌人、玩家单位、结盟的。
B组:别人的、自己的。
C组:古代的(应译为古树)、非古代的。
D组:可攻击的、无敌的。
E组:有机的、机械的。
F组:死亡、活的。
G组:英雄、非-英雄。
H组:自杀性的、非-自杀性的(有生命倒记时的单位:比如水元素,先知的狼)。

各个组内是或关系,即满足其中一个就可执行,而各组间是且关系,即有满足所有的条件才可执行,比如A组中选择空中,G组选择英雄,那么因为英雄是地面单位,所以不满足条件,不能攻击。

关于技能的所定允许,当你想对技能的所定允许进行大幅度的改变时,你照着单位的所定允许改是不行的,因为每种技能的所定允许是WE事先设置定的,也就是什么样的技能就会有什么样的所定允许,就好像ID一样,在这里他的所定允许的ID改变或混乱了,这个技能都不会达到你要的效果。比如对尸体释放的技能,如召唤死尸技能,当你修改之后将无法施放。

㈡技能制作相关

1、    马甲单位

马甲这个名称已经变得通用。它是指在技能制作里指用来施放从属技能位或用来承载模型的单位。

如果不希望马甲单位可见的,可以修改单位的可见度。相应的动作如下:
[trigger]
动作
    动画 – 改变 XXX 的颜色比例 (a%,b%,c%),透明度d%
[/trigger]

d为透明度百分比,将d设为100就不可见了,但是要注意如果改变的单位获得了隐身或者虚无一类的改变单位透明度的魔法效果,那么当技能效果失去时,单位会恢复0%的透明度。
如果马甲初始就看不到,可以设置马甲的模型为空。这样也同样没法选取了,同时按Alt不可以看到血条,但是碰撞还有。

如果希望单位不可选取,或者单位不受碰撞限制,可以为单位添加蝗虫技能。注意隐藏显示带有蝗虫技能的单位后,该单位变得可以选取,但不能作为目标,并且按Alt会显示单位的血条。

如果你要改变一个模型的方向,例如你要把一个模型由垂直变为水平,你可以把它设为一个马甲单位的模型文件,然后再修改这个单位的X,Y轴的旋转角度。把它改为负数就可以了,具体请自己尝试。

马甲的颜色修改请参看前面的第二章的颜色修改部分。

使用马甲时有两点是需要注意的,一是马甲单位占用人口要改成零,另外是马甲单位不要自动攻击,当然特殊情况除外。,人口的问题修改状态 – 占用人口,攻击问题要修改战斗 – 允许攻击模式。

2、碰撞

碰撞这个问题单独拿出来说是因为它比较复杂。

单位有碰触体积这个数据,这个数据是与单位能否通过建筑之间或者建筑和建筑之间缝隙相关的,(两个大建筑之间的缝隙是64,大小建筑之间,或者大建筑与地形障碍之间的缝隙是32,小建筑彼此之间或小建筑与地形障碍之间是16,只有小于缝隙的单位才可以通过缝隙)。

T中有关闭单位碰撞的动作。
[trigger]
动作
    单位 – 设置 XXX 关闭 碰撞
    单位 – 设置 XXX 开启 碰撞
[/trigger]

不过这样设置有一个问题,那就是关闭了碰撞的带可以通过其他的单位,而其他的单位无法通过已关闭碰撞的单位。实际上隐身技能的可以穿过其他的效果就是关闭了单位的碰撞。
如果你想把两个单位重叠时,你可以把关闭碰撞的单位移动到正常单位的位置,如果相反,则无法重叠。如果你想使一个单位即可以穿过其他单位,也可以被其他单位穿过,你可以添加蝗虫技能或设置单位移动类型为飞行。

新建单位的重叠目标单位即使有蝗虫技能或者飞行类别也是无法重叠的(有一些偏差),需要在创建后再移动一下单位,某些用单位摆效果图形时要注意这点。

3、单位绑定特效

[trigger]
动作
    特殊效果 – 创建并绑定特效到 YYY 对 XXX ,使用模型: ZZZ
[/trigger]

把一个特效绑定到单位身上,可以使用这个动作,其中的YYY就是附加点代码。

模型附加点代码对应模型的位置如下:
主要部位 :
overhead 漂浮在单位的头顶上,但不随单位的动作而晃动
head 在单位的头上,并随单位头部的动作而晃动
chest 在单位的胸部 ,并随单位胸部动作而晃动
origin 预设,就是在单位的位置上,不会晃动
hand 手上(有时和在武器上很难分清)会随手动
foot 脚上 会随脚动
weapon 武器上 会随武器动一般在武器的半截位置或尖端
sprite 游符,小精灵(只对建筑、机械单位及英雄血法有效)也就是围着血法转的球体,配合下面的first second third fourth fifth sixth使用,但不是所有建筑或机械都有这六个位置,这六个位置对于不同事物是不同的。用时可以自己测试。若没有修饰默认为first
medium 中间(只对建筑有效)配合下面的first second third fourth fifth sixth使用,测试结果是最后一种部位有效。
large 全体(只对建筑有效) 同上
mount 坐骑(只对有坐骑的有效)
rear (对四足动物或有坐骑的有效)就是他们的屁股位置

部位位置修正 :

left 左边(如hand left=左手,输入left hand也是)
right 右边
rallypoint 集结点,但是这个集结点是指默认集结点位置,不会随你在游戏中的点选而改变
具体搭配挺多大概有:
left chest,right chest,left mount,right mount,left hand,right hand,left rear,right rear,mount rear,left foot,right foot,weapon left,weapon right
举例:拿人族骑士来说吧(因为他几乎所有部位俱全)特效是旗帜
origin-在身体偏右侧地面上,会随骑士移动移动,单不受他的修饰性动作的影响
hand=right hand/hand right-在右手,手举起时旗帜会挥动
left hand/hand left-在左手,同上
head-在头上,扭头时旗帜也动(没有left head与right head)
chest-向前进时胸部前倾,旗帜也是
left chest=left mount=mount left=chest left、right chest=right mount=mount right=chest right:身体一侧,会随身动
left/right:在左/右前腿,会随腿动而动
rear=right rear:在右后腿(马的腿)
left rear:在左后腿
mount:在马头上
mount rear 马屁股上
foot= (right foot )=right
left foot=left
weapon left(不可写left weapon):左手武器尖端
weapon=weapon right:右手武器

给大家说一下加东西的附加点怎么写吧
技能就用球体吧
在头的上面:overhead
戴在头上(如头盔):head
在身体上(也可以放翅膀):chest
在手上(如拿武器、盾牌等,一般会在默认的拿武器手上):hand
在左手上:hand,left(两个附加点)
在右手上:hand,right(两个附加点)
在武器上:weapon
在脚上:foot
在左脚上:foot,left(两个附加点)
在右脚上:foot,right(两个附加点)
在脚下(光环的位置):origin

注意, 如果使用了错误语句如:left eye只会从左到右执行有意义部分即left;若写成了eye  left则什么也不执行。最后在说一句,不是所有的单位都有以上附加点的。
除了绑定特效的动作,技能或魔法效果的附加点也用这个代码。

当给一个单位添加特效时,你也可以使用球体技能。在某些时候,球体技能是相当方便的。

4、排泄

排泄是一个很讨厌的问题,如果一个复杂的技能不排泄,在实际应用中往往会导致地图特别的卡。一般认为需要排泄的内容有点和特效,其他内容可以不排泄。
排泄的方法是用J语句(对应不同的类型使用的也不同),当然如果你使用了UI你就可以直接用T了。不过无论使用哪种方法排泄你都要把排泄的内容用变量记录下来。

5、算法

算法就是技能相关数据的计算。比如几何技能效果的位置的确定,伤害的确定……算法可以说是一个技能的灵魂。一般的技能需要的算法都是很简单的,不过也有复杂的时候,比如我所做的一个连接地图上的某些单位成为最大多边型的算法,光运算就有七十行。
想做好算法主要需要对于一些WE以外的知识的十分了解,特别是几何技能施放画面中的算法,它需要对平面几何,直角坐标系,极坐标系运算十分熟悉和了解要是这些不是很精通,想要做出复杂技能施放画面很难。

6、技能替换

如果你需要把一个技能替换成为另外一个技能,你可以使用添加删除技能的方法,也就是把被替换的技能删除,添加上替换成的技能。这种方法只是对单位技能有效,如果你用这种方法替换英雄技能,你会发现你当英雄升级的时候他可以学习那个被删除的技能,而替换后的技能无法升级。那么如何才能替换英雄技能呢?
替换英雄技能需要使用工程升级这个技能,你只要把工程升级技能的数据 – 技能升级(1、2、3、4都一样)这一项的数据修改为被替换的技能,替换为的技能两个就可以了(被替换的技能在前)这样就可以把英雄技能替换了。

7、选取单位

很多时候为了达到我们想要的技能效果,我们是需要在地图上选择出一些单位。这种选取在很多时候我们都是需要使用的,那么我们如何恰当的选择出我们需要的单位并对每个单位做动作呢?选择单位的判断有种,一种是单位在范围内(满足一定条件),另一种是单位拥有特定的特点(魔法效果,单位类型,玩家……)。两种可以综合使用
选择单位做动作使用的是单位组 – 选取单位组内的单位做动作,这个动作同if、for动作一样,分为单个动作和多个动作两种。恰当的选取单位就需要我们恰当的设置这个动作中的单位组部分,我们可以选择出我们想要的单位。

首先是选择范围,一般都是圆范围或矩形范围,还有玩家范围(属于哪个玩家),需要的话我们可以带有条件。条件都可以添加很多,这就要根据你要选择的单位的特点添加了。
我们也可以用添加单位到单位组的方法来辅助选择,把选好的单位添加到某个单位组后,使用单位组 – 选取单位组内的单位做动作来执行动作。

8、闪电特效

设置闪电特效,如:死亡之指的红色闪电,先知的连锁闪电。要注意:
闪电特效的特点就是在2个点之间创造1个闪电型效果,什么叫闪电型效果?就是像闪电一样可变化长度且快速传导的效果,它的启始点是释放单位的位置,终止于目标单位的位置。
不是任何有启始点和终止点的技能都可以设置光影效果,能拥有光影效果的技能有连锁闪电,死亡之指,医疗波等等。

大部分可以设置光影效果的技能只能有1种光影效果,如:死亡之指,法力吸取等,但个别技能可以有2种光影效果,如:连锁闪电,医疗波等,这种技能的光影效果的分为主要和次要两部分,主要的就是施法单位和第一目标单位之间的光影效果,次要就是上级目标单位和下级目标单位之间的光影效果。但如果只设置1种光影效果,那么就默认主要和次要的光影效果都是同样的。

9、相关资料

这些都是我在各个教程上找到的可能用的到的东西。大家参考着看吧,有些已经穿插在教程里了。因为是在某个收集一堆东西教程里找的,也不知道原作者是谁,所以就不提原作者了。另外有些地方做了删改。

⑴英雄属性

【生命值】
等级1生命值=初始生命值+初始力量*每点力量的生命值奖励
等级N生命值=等级(N-1)生命值+每升一级的力量奖励*每点力量的生命值奖励
参数说明:(英雄单位的力量决定其生命值,初始生命值、初始力量以及每升一级的力量奖励可在物体编辑器中修改,每点力量的生命值奖励可在游戏平衡性常数表中修改,默认值为25)

【魔法值】
等级1魔法值=初始魔法值+初始智力*每点智力的魔法值奖励
等级N魔法值=等级(N-1)魔法值+每升一级的智力奖励*每点智力的魔法值奖励
参数说明:(英雄单位的智力决定其魔法值,初始魔法值、初始智力以及每升一级的智力奖励可在物体编辑器中修改,每点智力的魔法值奖励可在游戏平衡性常数表中修改,默认值为15)

【力量】
等级1力量=初始力量
等级N力量=等级(N-1)力量+每升一级的力量奖励=初始力量+每升一级的力量奖励*(N-1)
参数说明:(英雄单位的力量决定其生命值,同时也决定其生命回复率不断递增,初始力量、每升一级的力量奖励以及生命回复率可在物体编辑器中修改,每点力量对生命回复率的奖励可在游戏平衡性常数表中修改,默认值为0.05)

【敏捷】
等级1敏捷=初始敏捷
等级N敏捷=等级(N-1)敏捷+每升一级的敏捷奖励=初始敏捷+每升一级的敏捷奖励*(N-1)
参数说明:(英雄单位的敏捷决定其防御力,同时也决定其攻击和移动速度不断递增,初始敏捷以及每升一级的敏捷奖励可在物体编辑器中修改,每点敏捷对防御力、移动速度以及攻击速度的奖励可在游戏平衡性常数表中修改,防御力奖励默认值为0.3,攻击速度奖励默认值为0.02,但在游戏平衡性常数表中敏捷的移动速度奖励默认为0)

【智力】
等级1智力=初始智力
等级N智力=等级(N-1)智力+每升一级的智力奖励=初始智力+每升一级的智力奖励*(N-1)
参数说明:(英雄单位的智力决定其魔法值,同时也决定其魔法回复率不断递增,初始智力、每升一级的智力奖励以及魔法回复率可在物体编辑器中修改,每点智力对魔法回复率的奖励可在游戏平衡性常数表中修改,默认值为0.05)

【攻击力】
等级1攻击力波动范围=[初始攻击力+主属性基础值*每点主属性的攻击力奖励+伤害色子面数]——[初始攻击力+主属性基础值*每点主属性的攻击力奖励+伤害色子面数*伤害色子每面的伤害值]
等级N攻击力波动范围=[等级(N-1)攻击力+每升一级的主属性奖励*每点主属性的攻击力奖励+伤害色子面数]——[等级(N-1)攻击力+每升一级的主属性奖励*每点主属性的攻击力奖励+伤害色子面数*伤害色子每面的伤害值]
参数说明:(英雄单位的主属性决定其攻击力,但攻击力是一个波动值,受伤害色子面数及伤害色子每面的伤害值这两个参数的影响而产生波动范围,其中伤害色子每面的伤害值是单位每次攻击时在(1,设定值)区间随机生成的数值,当取最小值1时则是攻击下限;当取最大值,也就是伤害色子每面的伤害值的设定值时是攻击上限。初始攻击力、主属性基础值、每升一级的主属性奖励、伤害色子面数以及伤害色子每面的伤害值可在物体编辑器中修改,每点主属性的攻击力奖励可在游戏平衡性常数表中修改,默认值为1)

【防御力】
等级1防御力=初始防御力+防御基础值+初始敏捷*每点敏捷的防御力奖励
等级N防御力=等级(N-1)防御力+每升一级的敏捷奖励*每点敏捷的防御力奖励
参数说明:(英雄单位的敏捷决定其防御力,初始防御力、初始敏捷以及每升一级的敏捷奖励可在物体编辑器中修改,防御基础值及每点敏捷的防御力奖励可在游戏平衡性常数表中修改,其中防御基础值是指未计算初始防御力以及敏捷奖励前的防御力数值,游戏平衡性常数表中默认值为-2,每点敏捷的防御力奖励游戏平衡性常数表中默认值为0.3)

【技能伤害】
等级1技能伤害=技能初始伤害
等级N技能伤害=等级(N-1)技能伤害*上一数值因素+等级因素*N+固定因素
参数说明:(技能初始伤害可在物体编辑器中修改,上一数值因素、等级因素以及固定因素可在物体编辑器技能设置的自动填充地层中修改
⑵战斗相关

武器类型:没有、普通、立即的、炮火、炮火(直线)、箭矢、箭矢(溅射)、箭矢(反弹)、箭矢(直线)

没有 - 不能攻击其它单位,如小精灵、鬼魂
普通 - 所有近战单位,受吸血光环、荆棘光环影响,不受强击光环影响。//注:大多3C里狼洞的狼的射程虽有600但还是属于近战单位
立即的 - 代表单位有火枪手和直升飞机,与其它远程攻击比较它的优势是攻击发出后立即作用于目标单位,不用担心子弹在空中飞行而有所延时
炮火 - 范围溅射性攻击,以目标单位为圆心周围的单位都会受到伤害,攻击范围有下限,即目标距离太近时无法攻击目标,被打死的目标没有尸体。代表单位有迫击炮小队、粉碎者、绞肉车
炮火(直线) - 直线溅射性攻击,能伤害到站在目标后面的其他单位,攻击范围有下限,即目标距离太近时无法攻击目标,被打死的目标没有尸体。代表单位有投刃车
箭矢 - 最常见的远程攻击模式。
箭矢(溅射) - 范围溅射性攻击,以目标单位为圆心周围的单位都会受到伤害。代表单位 奇美拉、变身后的恶魔猎手
箭矢(反弹) - 代表单位是女猎手
箭矢(直线) - 直线溅射性攻击,能伤害到站在目标后面的其他单位。代表单位是狮鹫骑士

主动攻击范围: 主动攻击进入有效范围的敌方单位,与之相对应的是被动攻击--当原单位或它附近的朋友被攻击时会反击。注:当主动攻击范围设为0时实际是最大攻击范围。

允许攻击模式:没有、只攻击1、只攻击2、都

没有 - 不能攻击其它单位

只攻击1 - 只有 (战斗-攻击1-) 里的数据起作用
只攻击2 - 只有 (战斗-攻击2-) 里的数据起作用
都 - (战斗-攻击1-) 和 (战斗-攻击2-)里的数据都起作用,但是在目标允许的选项里有重叠的话则只发挥攻击1里的数据的作用
这里额外提示下,如果想改变一个单位的这个数据,可以使用古树的扎根技能。

基础防御:单位的初始防御或英雄敏捷为0时的防御。注:英雄默认的基础防御是-2

全伤害影响范围,中等伤害影响范围,伤害因素-中等的,小伤害影响范围,伤害因素-小的,这些数据只对应武器类型为 箭矢(溅射) 和 炮火 起作用。以变身后的恶魔猎手为例分析:

全伤害影响范围    50
中等伤害影响范围  150
伤害因素-中等的  0.50
小伤害影响范围    250
伤害因素-小的    0.25

在以目标单位为圆心,50为半径的圆内的单位将受到与目标同等的伤害; 在以目标单位为圆心,50为内径,150为外径的圆环内的单位将接受目标50%的伤害; 在以目标单位为圆心,150为内径,250为外径的圆环内的单位将接受目标25%的伤害。

补:全伤害影响范围还对箭矢(反弹) 起作用,当然两个单位的距离小于这个范围时就有可能被反弹的箭矢击到

伤害丢失因素:对应武器类型为箭矢(反弹)、箭矢(直线)、炮火(直线)起作用。如女猎手的伤害丢失因素是0.5,意为被反弹到的下一个单位所受伤害为前一个单位的50%; 投刃车的伤害丢失因素是0.2,意为被溅射到的单位所受伤害为主单位的80%。

基础伤害、伤害数量概率、攻击伤害面,三者共同决定单位的实际攻击力。设基础伤害为A,伤害数量概率为B,攻击伤害面为C,那么该单位的攻击力为A+B~A+B*C。以对战中的火枪手为例,A=16,B=2,C=4,他的实际攻击力就是18~24。注:伤害数量概率和攻击伤害面最好不要设为0,否则会有BUG

伤害升级数量:与升级科技中的攻击伤害奖励对应,与防御升级奖励相类似

允许伤害范围目标:对武器类型为炮火、炮火(直线)、箭矢(溅射)、箭矢(反弹)、箭矢(直线)的单位有效。变身的恶魔的溅射不会伤害到自己人而奇美拉会,炮手拆建筑时旁边的树会倒,这些的不同都可在此修改

动画回复点、动画损伤点,决定攻击动作与发出箭矢的同步性。动画损伤点的另一个作用就是限制单位最大攻击速度,即单位的最小攻击冷却时间不能低于动画损伤点
射弹弧度:顾名思义。射弹速率:还是顾名思义。设高无所谓,设得太低这个单位就废了

投射图像:顾名思义……

射弹自导允许:设为true时射出的箭矢会自动跟踪目标而不会因为目标移动而打空,代表单位为不死族的所有防御塔。设为false则与之相反,代表单位为所有远程攻城单位

显示UI:没发现有什么实际作用

溅射伤害范围、溅射伤害距离,对武器类型为炮火(直线)、箭矢(直线)的单位起作用。

目标允许:空中、地面、建筑、守卫、中立、别人的、古代的、可攻击的、地形、墙、敌人、无敌的、有机的、朋友、机械的、树、桥、死亡、残骸、没有、活的、物品、玩家单位、结盟的、自己的、自杀性的、英雄、装饰品、非-古代的、非-自杀性的、非英雄。

空中、地面、建筑、守卫是4大类,如果选只选了这4项就能够攻击绝大部分物体。这4项必须至少选一项,否则单位就无法战斗(当然它还可以砍柴)。中立、敌人、朋友是一组,设为A组,默认为全选。别人的、自己的是一组,设为B组,默认为全选、原理同上。古代的(应译为古树)、非古代的为又C组,原理同上。可攻击的、无敌的为D组,默认为可攻击的。有机的、机械的为E组,默认为全选。死亡、活的为F组,默认为活的。玩家单位、结盟的,其实这两项应该是朋友的支项,也可以将A组分成中立、敌人、玩家单位、结盟的。英雄、非-英雄为G组,默认为全选。自杀性的、非-自杀性的还没弄明白什么意思。从A到G,7组。组内是兼容的,即满足其中一个就可执行,组间是不兼容的,即某个物体要成为目标允许的对象,而且已经满足了其中一组的条件,那么它必须也要满足其它6组的条件。

运动范围缓冲:未知……

远程:应该译为射程或攻击范围

魔法施放时间间隔时间:应该译为(初始)攻击冷却时间,单位的最小攻击冷却时间不能低于(初始)攻击冷却时间的1/5

最小攻击范围:较常作用于攻城单位,即太近不能攻击

死亡类型:会腐化则有尸体,不会腐化则没有

装甲类型:声音效果而已

锁定作为:与目标允许对应

防御升级奖励:与科技升级中的应用防御升级奖励相对应

攻击类型

防御类型

⑶光环BUG

光环的分类:

系统对光环效果类是以WE中魔法效果项来划分的

比如将2个专注光环,其中一个魔法效果改掉,那么2个光环都将会起作用,而当一个光环数据项数为2的光环(如邪恶)与另一个不同的光环魔法效果改为一样,当2者碰头时。那么就会听见“Bang”的一声,就跳到桌面了。

这里讨论的是同时出现%数和确切数值同类光环时的情况:众所周知的同类光环作用,取大优先,对于负数也提醒一下:-1是大于-2的,而当上述两者光环同时作用时将有什么效果?
两个魔法效果相同的光环同时作用时:

A、 当后作用者光环参数小于前者(这里%光环参数以100%=1来计算),此时为正常情况,取大优先,所以数值不会有变化,并只取前者效果。
B、 当后作用者光环参数大于前者,此时按取大优先的原则,将会取后者值,但是会仍旧保持前者的光环效果并且按%计算“这一项将不会发生变化。即原先是%光环,现在仍按%来计算,但数值将会取后者

举例说明:(以专注光环为例)

A:+300防御光环  B:-100%防御光环  C:-9999防御。一单位先受到A光环作用,后受到B光环作用,结果是只取A(300>-1),效果防御+300。
另一单位先受到B光环作用,后受到A光环作用,结果将是防御增加300倍(英雄则以基础计算,即敏捷=0时的防御)。
一单位先受到B光环作用,后受到C光环作用,结果是只取B,防御减少100%,
另一单位先受到C光环作用,后受到B光环作用,结果将是防御减少1。

⑷关于镜像的详细解析

下面是几乎所有可能会和镜像扯上关系的技能:

镜像和其他技能的关系:(以下面采用的是默认平衡参数)
分身驱散所有魔法效果,包括各种有时限的变身效果
魔法书中的技能原本对镜像有效的话也可以作用到镜像上
倍击 回避对镜像有效(倍击包括醉拳以及重击的倍率加成部分)
慢性毒药/浸毒武器能显示效果,但无效, (题外:对于毒只要是不同单位,或同单位用不同的毒技能效果都可以叠加)
液体炸弹 燃烧之油 碎片攻击 高射炮火显示效果,但无效,(碎片攻击仅对溅射攻击单位起作用,高射炮火对普通、立即攻击有效)
霜冻攻击 显示效果,但无效
球类效果(包括用球类做的攻击触发类技能)无效
重击 冰封显示效果,但无效,且当镜像所造成的假效果在的时候,会使真身的效果无效化,重击的倍率加成对分身有效,但数值加成那一段无效;冰封对箭矢攻击单位的倍加效果有效。
魔法反馈有效
夜视能力 反隐有效
尖刺外壳 荆棘光环等的反弹无效
尖刺外壳 硬化皮肤的伤害减少无效
凤凰火焰有效
永久献祭 疾病云雾显示效果,但无效
荒芜之地蔓延/驱散有效,而且每分身一次会创造/驱散一次荒芜之地
创建尸体(每隔一段时间变出一具尸体)有效
地精工厂(自动出兵)有效
龙卷风的破坏光环(去血)有效
龙卷旋风(把人刮上天)有效
游荡者 龙卷风漫步者(都是不按Hold会瞎跑)有效
弹幕攻击(多重箭)有效 穿刺剑刃(直线)有效 月刃(弹射)无效 分裂 范围粉碎显示效果,但无效
粉碎(地精变身后的粉碎有效)
抗性皮肤有效
无敌有效(不是喝药水的无敌,是那种永久无敌)
隐形有效,包括影遁技能,另:当拥有两个永久隐形技能时使用魔法以及攻击时都处于隐形状态,只有分身后片刻是非隐形的,而拥用幽灵技能则时刻处于隐形状态。
掠夺无效
重生无效
虚无状态有效
物品上所带物品栏技能对英雄无效(镜像使用自身的物品栏,物品则取真身表层物品,即你能看到的物品栏里的物品)
艾鲁尼之优雅 防御(步兵) 魔法防御(破法者)有效,包括倍乘效果 减少物理 魔法伤害 远程反弹 速度改变等所有效果
狂战士无效
魔免有效 魔法护盾(XX秒阻挡魔法)和魔法伤害减少无效
更换攻击模式有效,如飞行机器炸弹(人类飞行器)
以下是与平衡参数有关的数据:
耐久光环、毒、霜冻、嗜血术、减速等技能改变攻击移动速度总是有效
速度之靴改变移动速度总是有效
增加属性总是有效,且属性附带的加攻加防加回复速度攻击速度都有效
加生命魔法上限总是有效
给予光环支持: 本体拥有的光环,镜像也能给予周围单位该光环的效果影响
攻击防御加成: 判定 所有增加攻击防御的技能 魔法 光环是否有效,不包括属性的加成
攻击速度加成: 设置其它加速技能(如加速手套、邪恶狂暴)是否有效
移动速度加成: 设置其它加速技能(如邪恶光环)是否有效
生命魔法恢复: 能否对镜像使用加血技能 治疗守卫 邪恶光环 生命指环等恢复技能,以及镜像是否能吸血.(唯独力量属性自然回血除外) 魔法恢复与生命恢复类似。
自动施法目标: 如霜冻护甲 心灵之火等自动释放技能是否对镜像自动释放。

镜像默认的平衡参数:
镜像能给予光环支持:                            否
镜像能得到攻击力加成:                          是
镜像能得到防御加成:                            是
镜像能得到攻击速度加成:                        是
镜像能得到移动速度加成:                        是
镜像能恢复生命:                        是
镜像能恢复魔法:                                是
自动施法目标包含镜像:                          否

关于镜像技能参数:(不列出通用技能参数)
技能延迟            分身时那段无敌的时间
镜像数量            创造出镜像的个数
所受伤害            镜像受到的%伤害
施加伤害            镜像造成的%伤害
持续时间            镜像的持续时间
施法距离            分身后本体和镜像离中心点的距离

⑸重击倍击粉碎燃灰等详解、与各种技能的冲突问题
这个是老狼的
在进入正题之前,我们先来看一下下面的问题:
无投射物攻击单位:即攻击时不出现投射物,(攻击方式为普通 立即),包括近战和个别攻击方式为立即的远程单位(如火枪手)
有投射物攻击单位:即攻击时带有投射物,除了上面所说的,其他都属于这类。
为了方便,在下文出现无投射物攻击单位将简称为无投射单位;有投射物攻击单位简称为投射单位

首先是致命一击的解析

致命一击属于物理伤害,所以考虑防御,飘浮的红字部分表示没有计算防御之前的攻击输出,但在多个倍击作用时,红字部分的表述是不正确的。
致命一击技能中有一个必中选项,勾上时,当致命一击被触发,此次攻击将无视回避(同样也无视诅咒技能)

致命一击的计算是以显示的攻击(即白字+绿字部分)为基础的,如燃灰等附加伤害不计入其内

当多个倍击共存时的几率计算

当一个单位同时发动多个倍击时,后获得的技能有效,但作为特例,1倍和0倍的倍击是不会计算在内的
1倍和0倍倍击都没有对攻击加成,它们之间的区别是1倍倍击有红字显示,0倍则没有

举例说明多个倍击共存时的几率计算:
某单位自身拥有20%5倍倍击,先后装备10%10倍倍击、50%2倍倍击装备,则其倍击发动几率如下
2倍倍击几率=50%
10倍倍击几率=10%*(1-50%)=5% (即不发动2倍倍击时的5倍倍击几率)
5倍倍击几率=20%*(1-50%-5%)=9%
合理的排放应该是先取得低倍击装备,后取高倍击
如此可以得到的倍击几率为
10倍倍击几率=10%
2倍倍击几率=50%*(1-10%)=45%
5倍倍击几率=20%*(1-10%-45%)=9%
其攻击加成为10%*(10-1)+45%*(2-1)+9%*(5-1)-1=71%

而实际上50%的2倍倍击极大的影响了本身5倍倍击的发挥,当不装备2倍倍击时,
其攻击加成为10%*(10-1)+18%*(5-1)-1=62%
可见,在这里2倍倍击的加成效果是极差的,所以有时候像这种高暴率低倍击的负面影响是不能忽视的,甚至在某些情况下增加一个这样的技能反而会使战斗力下降。

另外当多个倍击同时发动时,只要其中任何一个倍击带有必中效果,则该次攻击即无视回避


重击:

该技能其实分为两部分来考虑,

1是倍击部分,相当于致命一击,在对战中这部分是为0的,要讨论的话可以直接作为致命一击来研究
2是固定的伤害加成,该部分是比较特殊的,下面讨论的也是这部分的伤害

重击的固定伤害加成部分,对于无投射单位来说,该部分属于魔法伤害,所以不计防御,对英雄护甲造成70%伤害,对魔免不造成伤害,但能击晕,而且多个重击技能同时作用时伤害能叠加。例如5个100%2000伤害的重击就相当于100%1W伤害的重击,晕眩时间取其中时间最长者
对于投射单位来说,该部分属于物理伤害,要考虑防御力,对魔免造成伤害但不能击晕,多个重击技能同时作用时与致命一击一样取后获得的重击效果。

同时,当晕眩中再次受到晕眩时,比较当前晕眩剩余时间与新晕眩作用时间,取其中时间长者

重击与倍击的叠加关系:
无投射单位重击与倍击可叠加
投射单位重击与倍击同时发动时,若先获得倍击技能后获得重击,2者效果都发动
若先获得重击后获得倍击,则只发动倍击技能

粉碎:(该为地精修补匠变身后的粉碎技能,对战中效果是100%对建筑造成2倍伤害)

这个技能比较类似于致命一击,但不会有飘浮的红字,可以对单位/英雄/建筑分别选择不同的倍击倍率
关于多个粉碎技能叠加的伤害计算是很恐怖的,他的伤害是相乘来计算的,例如3个5倍粉碎同时作用时,其伤害为5*5*5=125倍!
同时他还能在致命一击的基础上再相乘,如在上例中再加一个10倍致命一击的话,它的伤害将是1250倍!
粉碎不能对重击的固定伤害部分加成
0倍粉碎无伤害输出,0倍伤害+致命一击仍然无伤害输出(乘0了),但不影响重击的固定的伤害加成

燃灰:

燃灰的攻击方式为:第1次附加X点物理攻击,第2次为2X,第3次为3X。。。。。。受攻击者死亡将产生范围爆炸,属于魔法伤害
然会有一点不大为人所知的特性,燃灰效果是高级覆盖低级,低级延续高级,以下为例
A为50伤害燃灰 B为100伤害燃灰
A攻击3次,B攻击1次,其附加伤害为 50 - 100 - 150 - 400
B攻击3次,A攻击1次,其附加伤害为 100 - 200 - 300 - 400
燃灰存在时粉碎将无效。
燃灰与重击以及倍击之间的关系有点复杂
投射单位燃灰与重击以及倍击不能共存,只取后获得技能的效果,
无投射单位单位后获得燃灰技能则重击与倍击无效
无投射单位单位先获得燃灰则与重击以及倍击效果共存,燃灰附加伤害不计入倍击范围

以上各种技能与其他常见技能的冲突问题

灼热之箭 毁灭之球类

倍击与之冲突,后获得的技能有效
重击与之共存
粉碎将无效
燃灰:若是燃灰后获得,则只取燃灰;若燃灰先获得则2者有效

黑暗之箭、冰冻之箭类(无投射单位有Bug,只要学习了技能关闭着也会有技能效果,如黑暗之箭出骷髅,但攻击附加只有打开时才会有)
倍击:后获得者有效
重击:投射单位后获得者有效;无投射单位2者共存
粉碎:将无效
燃灰:投射单位后获得者有效,无投射单位若是燃灰后获得,则只取燃灰;若燃灰先获得则2者有效

燃烧之油 冰封等(冰封对箭矢攻击单位的特殊效果:当冰封产生效果会附带相当于自己攻击力的物理伤害加成,当有多个冰封技能时附加效果相加计算,即X个冰封技能附加X倍攻击)

倍击:仅倍击有效
重击:仅重击有效
粉碎:冰封等有效,粉碎仅在其之后获得才有效,且能对箭矢攻击单位冰分加成部分进行效果倍乘。例2个冰封+2个3倍粉碎,攻击加成为(1+2)*3*3=27倍
燃灰:仅燃灰有效

霜冻攻击等

倍击:仅倍击有效
重击:仅重击有效
粉碎:2者共存
燃灰:仅燃灰有效

球类效果

倍击:无投射单位2者共存,投射单位球类无效
重击:无投射单位2者共存,投射单位球类无效
粉碎:粉碎无效
燃灰:仅燃灰有效

毒素攻击

倍击:无投射单位2者共存,投射单位毒素无效
重击:无投射单位2者共存,投射单位毒素无效
粉碎:2者共存
燃灰:仅燃灰有效

魔法反馈

倍击: 无投射单位有效,投射单位仅倍击有效
重击: 无投射单位有效,投射单位仅重击有效
粉碎: 2者共存
燃灰: 仅燃灰有效

死亡面具类吸血

倍击: 有效
重击: 投射单位加成部分能吸血 无投射单位加成部分不能
粉碎: 粉碎无效化
燃灰: 吸血无效化

吸血药水/光环吸血

倍击: 有效
重击: 投射单位加成部分能吸血 无投射单位加成部分不能
粉碎: 有效
燃灰: 有效

弹幕攻击(多重箭),月刃(弹射攻击)

倍击: 多重无效
重击: 多重无效
粉碎: 2者共存
燃灰: 多重无效

范围性粉碎(对战中牛头的技能)

倍击: 共存
重击: 共存
粉碎: 共存
燃灰: 共存


分裂攻击

倍击: 作用于分裂
重击: 互不干涉
粉碎: 作用于分裂
燃灰: 先学习燃灰则2者都有效,后学习燃灰则仅燃灰有效


关于反弹:

多个荆棘光环间取最大值,尖刺反弹直接叠加,光环与尖刺直接叠加,反弹无视防御,属于魔法伤害
倍击 重击 燃灰加成不会受到反弹,粉碎加成会受到反弹

物理伤害的计算顺序:

1.尖刺反弹类的%减少伤害
2.硬化皮肤类的xx减少伤害
3.防御 艾鲁尼之优雅 狂战士等改变伤害%比的技能以及护甲值的计算
回复

使用道具 举报

 楼主| 发表于 2008-8-27 14:10:12 | 显示全部楼层
六、 某些技能实例

最后这一部分是几个基础的T技能的制作过程,希望诸位新手可以旁类侧通,对自己的技能制作有点帮助。(为了排泄用了UI,需要看演示请自己下个老狼的u,我会尽量少用UI的。)

1、 跳劈

这里的跳劈是指跳过去劈,不是致命一击的别称。跳劈是个基础的动作类技能,虽然不太多,但是还是有新手问的,所以第一个要讲解的就是这个技能。

跳劈这个技能的核心问题就是跳。跳就意味着我们要改变单位的高度。第二个问题就是我们用什么作为主体技能呢?假定我们要做的这个技能是一个单位目标的主动技能,那么风暴之锤是一个比较好的选择,原因是这个技能有眩晕效果,因为我们跳过去是需要时间的用风暴之锤可以省去我们暂停目标单位的过程(但是这样做会打断对方技能),当然大家可以根据自己的目的选择任意的单体单位目标技能作为主体技能。我们在使用风暴之锤之前需要做些修改:初步确定伤害和眩晕时间,删除投射物模型,修改对应的技能说明等。并且把风暴之锤的魔法效果——被击晕的(暂停)——的显示-目标-效果项清空,这样就不会显示眩晕的效果了,另外把显示-图标项、文本-工具提示-效果项也清空,避免露馅。(一般我们的主体技能和魔法效果复制一个新的,以避免冲突。如果确认不会使用原技、原魔法效果能不会用,也可以在原技能修改)

首先是通用的事件和条件,假定我们已经做好了一个原型为风暴之锤的主体技能,其名为跳劈:

[trigger]
事件
      单位 – 任意单位 开始施放技能

条件
      (施放的技能) 等于 跳劈
[/trigger]

下面就是做动画效果了。如果直接使施法单位跳过去会有些麻烦,因为单位碰撞的关系,无论使用哪种方法移动都会涉及到碰撞的问题而影响效果。所以我们要做个马甲,用一般的单位修改都可以,不过用小精灵修改比较方便,因为它不会攻击其他单位。依旧是复制个自定义的小精灵。因为这个跳劈技能是为剑圣做的,所以马甲的模型要改为剑圣的,然后添加蝗虫技能,改移动类型为飞行。这样马甲就做好了。

下面就是这个T的动作部分内容。
[trigger]
    动作
        设置 shifadanwei = (施法单位)
        设置 shifadanweiweizhi = (shifadanwei 的位置)
        设置 mubiaodanwei = (技能施放目标)
        设置 mubiaodanweiweizhi = (mubiaodanwei 的位置)
        设置 juli = (shifadanweiweizhi 和 mubiaodanweiweizhi 之间的距离)
        设置 fangxiang = (shifadanweiweizhi 到 mubiaodanweiweizhi 的角度)
        单位 - 隐藏 shifadanwei
        单位 - 立即移动 shifadanwei 到 mubiaodanweiweizhi
        单位 - 创建 1 个 小精灵 给 中立被动 在 shifadanweiweizhi ,面向角度为 fangxiang 度
        设置 majia = (最后创建的单位)
        单位 - 改变 majia 的队伍颜色为 ((shifadanwei 的所有者) 的颜色)
        设置 gaodu = 0.00
        动画 - 播放 majia 的 attack slam 动作
        动画 - 改变 majia 的动画播放速度为正常速度的 (18500.00 / juli)%
        For i 从 1 到 (转换 (juli / 50.00) 为整数), 做动作
            Loop - 动作
                设置 dian = (从 shifadanweiweizhi 开始,距离 ((转换 i 为实数) x 20.00) ,方向为 fangxiang 度的位移处)
                单位 - 立即移动 majia 到 dian
                动画 - 改变 majia 的飞行高度为 ((35000.00 x (转换 i 为实数)) / juli) ,变换速率: 120.00
                点 - 清除 dian
                等待 0.01 秒
        For i 从 1 到 (转换 (juli / 50.00) 为整数), 做动作
            Loop - 动作
                设置 dian = (从 shifadanweiweizhi 开始,距离 ((juli / 2.00) + ((转换 i 为实数) x 18.00)) ,方向为 fangxiang 度的位移处)
                单位 - 立即移动 majia 到 dian
                动画 - 改变 majia 的飞行高度为 (700.00 - ((35000.00 x (转换 i 为实数)) / juli)) ,变换速率: 120.00
                点 - 清除 dian
                等待 0.01 秒
        单位 - 删除 majia
        单位 - 显示 shifadanwei
[/trigger]

因为涉及到单位的播放动画速度和单位的移动,具体的一些参数还有待调整。

如果你的跳劈不是直接发动的,比如是使用疾风步后才用,那么你可以更改事件和条件,怎么改你自己想一想吧。

演示-跳劈.w3x (19 KB, 下载次数: 2430)

2、移动影子

也就是移动的时候有影子,这里采用了鬼一做的一个技能作为演示,因为它使用的很巧妙。由于原来的技能有些问题,我略微做了修改,
使用了四个T,如下:
[trigger]
YIDONGYINGZI1
    事件
        单位 - 任意单位 开始施放技能
    条件
        (施放技能) 等于 移动影子
    动作
        设置 Hero = (触发单位)
        触发器 - 开启 YIDONGYINGZI2 <预设>
[/trigger]

[trigger]
YIDONGYINGZI2
    事件
        时间 - 每 0.16 秒触发事件
    条件
    动作
        设置 P_s[1] = (Hero 的位置)
        设置 JuXing = (以 P_s[1] 为中心,宽 10.00 ,高 10.00 的矩形区域)
        设置 JiaoDu = (Hero 的面向角度)
        点 - 清除 P_s[1]
        计时器 - 开启 JSQ ,计时方式: 一次性 时间设置: 0.08 秒
[/trigger]
[trigger]
YIDONGYINGZI3
    事件
        时间 - JSQ 到期
    条件
    动作
        如果 ((Hero 拥有 移动影子) 等于 FALSE) 成立则 (触发器 - 关闭 YIDONGYINGZI2 <预设>) 否则 (无动作)
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (JuXing 内存在 Hero) 等于 FALSE
            Then - 动作
                设置 P_s[2] = (JuXing 的中心点)
                单位 - 创建 1 个 步兵 给 (Hero 的所有者) 在 P_s[2] ,面向角度为 JiaoDu 度
                动画 - 播放 (最后创建的单位) 的#6 的动作
                动画 - 改变 (最后创建的单位)  的颜色比例为(50.00%, 50.00%, 50.00%),透明度为 50.00%
                动画 - 改变 (最后创建的单位) 的尺寸缩放为:(90.00%, 90.00%, 90.00%)
                单位 - 设置 0.50 秒 普通 类型的生命周期对 (最后创建的单位)
                单位 - 设置 (最后创建的单位) 爆炸死亡 在死亡时
                点 - 清除 P_s[2]
            Else - 动作
                无动作
[/trigger]
[trigger]
YIDONGYINGZI4
    事件
        单位 - 任意单位 死亡
    条件
        ((死亡单位) 的类型) 等于 步兵
    动作
        单位 - 删除 (死亡单位)
[/trigger]

使用了狂战士技能作为主要技能,使用了步兵作为马甲。

这个技能的思路是施放技能时触发触发器YIDONGYINGZI1,设置好施放单位变量,开启触发器YIDONGYINGZI2。

触发器YIDONGYINGZI2是每0.16秒再次设置变量,并开启一个计时器,时间是0.08秒。计时器到期后运行触发器YIDONGYINGZI3.为了方便排泄,鬼一使用了矩形来传递点。而且矩形也用来判断单位是否移动。这个触发是初始关闭的。

触发器YIDONGYINGZI3是创建马甲,播放移动动画,改变颜色,设置生命周期。

触发器YIDONGYINGZI4是删除死亡的马甲,之所以用这样的方法是为了去除地图上的马甲单位,又不会出现冲突。

总体思路就是单位如果移动了就在之前的一个位置做一个影子,如果没有就不做。

这种方法比较特别,因为每一次创造影子时单位的动作都不是单位当前或者单位在影子处的动作,而且影子完全没有移动。

通常的方法是在单位后面创造一个或几个影子马甲,然后隔一段时间发布一次移动到主体单位命令,这种的我就不做了,大概的动作前面有说,相信你一定可以自己做出来。

演示-移动影子.w3x (15 KB, 下载次数: 1328)

3、击退践踏

动作类技能施放画面的三大效果已经在前两个演示中演示了两个(跳跃、影子)这里我在为地三个效果——击退——做个演示。

击退践踏,顾名思义,就是发动战争践踏同时击退范围内的单位。这个技能的演示很常见,不过还是现做一个给大家吧。

这个技能很简单:
[trigger]
未命名触发器 001
    事件
        单位 - 任意单位 开始施放技能
    条件
        (施放技能) 等于 战争践踏
    动作
        设置 shifadian = ((施法单位) 的位置)
        单位组 - 添加 (半径为 450.00 圆心为 shifadian 且满足 (((匹配单位) 是 ((施法单位) 的所有者) 的敌对单位) 等于 TRUE) 的所有单位) 内所有单位到 danweizu
        设置 danweizushuliang = 0
        单位组 - 选取 danweizu 内所有单位做动作
            Loop - 动作
                设置 danweizushuliang = (danweizushuliang + 1)
                设置 danwei[danweizushuliang] = (选取单位)
                设置 dian[1] = ((选取单位) 的位置)
                设置 juli[danweizushuliang] = ((450.00 - (dian[1] 和 shifadian 之间的距离)) / 10.00)
                设置 fangxiang[danweizushuliang] = (shifadian 到 dian[1] 的角度)
                特殊效果 - 创建并绑定特效到 origin 对 (选取单位) ,使用模型: Objects\\Spawnmodels\\Undead\\ImpaleTargetDust\\ImpaleTargetDust.mdl
                设置 texiao[danweizushuliang] = (最后创建的特效)
                点 - 清除 dian[1]
        单位组 - 清空 danweizu 内所有单位
        等待 0.50 秒
        For i[1] 从 1 到 10, 做动作
            Loop - 动作
                For i[2] 从 1 到 danweizushuliang, 做动作
                    Loop - 动作
                        设置 dian[1] = (danwei[i[2]] 的位置)
                        设置 dian[2] = (从 shifadian 开始,距离 ((dian[1] 和 shifadian 之间的距离) + juli[i[2]]) ,方向为 fangxiang[i[2]] 度的位移处)
                        单位 - 立即移动 danwei[i[2]] 到 dian[2]
                        点 - 清除 dian[1]
                        点 - 清除 dian[2]
                等待 0.01 秒
        For i[1] 从 1 到 danweizushuliang, (特殊效果 - 删除 texiao[i[1]])
[/trigger]

自己看吧。

演示-击退践踏.w3x (19 KB, 下载次数: 1986)

4、刀剑风暴

这个技能不是指对战游戏里剑圣的6级技能,而是指澄海里剑圣的15级技能。这个技能实际上是两个部分,一个是正常的刀剑风暴,另一个是周围的雷电。刀剑风暴没什么可说的,就是正常的,设置好相应的数据就好了。周围的闪电则需要用T来做。这里用到的从属技能是震荡波(牛头人酋长技能,常称之为冲击波),其投射物是闪电盾的。
马甲用什么改都行,不过要保证单位不会自动攻击,一般用小精灵改,不过工人类别的是在左下角有显示的,这一点要注意。

设置好从属技能的冲击波后就要来写T了。

[trigger]

未命名触发器 001
    事件
        单位 - 任意单位 开始施放技能
    条件
        (施放技能) 等于 剑刃风暴
    动作
        设置 shifadanwei = (施法单位)
        计时器 - 开启 timer[1] ,计时方式: 一次性 时间设置: 20.00 秒
        计时器 - 开启 timer[2] ,计时方式: 一次性 时间设置: 0.50 秒
        触发器 - 开启 未命名触发器 002 <预设>
        触发器 - 开启 未命名触发器 003 <预设>
[/trigger]
[trigger]
未命名触发器 002
    事件
        时间 - timer[2] 到期
    条件
    动作
        设置 dian[1] = (shifadanwei 的位置)
        设置 dian[2] = (从 dian[1] 开始,距离 500.00 ,方向为 (随机实数,最小值: 0.00 最大值: 360.00) 度的位移处)
        单位 - 创建 1 个 小精灵 给 玩家1(红色) 在 dian[1] ,面向角度为 默认建筑朝向 度
        单位 - 设置 1.00 秒 普通 类型的生命周期对 (最后创建的单位)
        单位 - 对 (最后创建的单位) 发布 兽族牛头人酋长 - 震荡波 命令到目标点: dian[2]
        计时器 - 开启 timer[2] ,计时方式: 一次性 时间设置: 0.50 秒
        点 - 清除 dian[1]
        点 - 清除 dian[2]
[/trigger]
[trigger]
未命名触发器 003
    事件
        单位 - 任意单位 死亡
    条件
        ((死亡单位) 的类型) 等于 小精灵
    动作
        单位 - 删除 (死亡单位)
[/trigger]
[trigger]
未命名触发器 004
    事件
        时间 - timer[1] 到期
    条件
    动作
        触发器 - 关闭 未命名触发器 002 <预设>
        触发器 - 关闭 未命名触发器 003 <预设>
[/trigger]

第二三个T是初始关闭的。T的内容不用我再说明了吧。如果嫌旋风附近的雷电太少可以把第二个T的动作内容循环几次。
演示-刀剑风暴.w3x (19 KB, 下载次数: 1999)

5、冰火符

这个技能是一个状态类型的技能,就是单位发动技能后,单位身边会出现两个符,一冰一火,被这两个符碰到的单位会被冻结或被火烧。

需要的触发器如下:
[trigger]
未命名触发器 001
    事件
        单位 - 任意单位 开始施放技能
    条件
        (施放技能) 等于 冰火符
    动作
        设置 shifazhe = (施法单位)
        设置 shifazheweizhi = ((施法单位) 的位置)
        设置 dian[1] = (从 shifazheweizhi 开始,距离 120.00 ,方向为 0.00 度的位移处)
        设置 dian[2] = (从 shifazheweizhi 开始,距离 120.00 ,方向为 180.00 度的位移处)
        设置 bingfu = (新建 (shifazhe 的所有者) 的 冰冻符文 在 dian[1] 面向角度:180.00 度)
        设置 huofu = (新建 (shifazhe 的所有者) 的 火焰符文 在 dian[2] 面向角度:0.00 度)
        设置 jiaodu = 0.00
        计时器 - 开启 timer1 ,计时方式: 循环 时间设置: 0.05 秒
        计时器 - 开启 timer2 ,计时方式: 一次性 时间设置: 60.00 秒
        触发器 - 开启 未命名触发器 002 <预设>
        点 - 清除 shifazheweizhi
        For i 从 1 到 2, (点 - 清除 dian)
[/trigger]
这个T的作用是记录相关信息并开启技能效果的触发器。
[trigger]
未命名触发器 002
    事件
        时间 - timer1 到期
    条件
    动作
        设置 shifazheweizhi = (shifazhe 的位置)
        设置 dian[1] = (从 shifazheweizhi 开始,距离 120.00 ,方向为 jiaodu 度的位移处)
        设置 dian[2] = (从 shifazheweizhi 开始,距离 120.00 ,方向为 (jiaodu + 180.00) 度的位移处)
        单位 - 立即移动 bingfu 到 dian[1] ,并面向 shifazheweizhi
        单位 - 立即移动 huofu 到 dian[2] ,并面向 shifazheweizhi
        设置 jiaodu = (jiaodu + 15.00)
        点 - 清除 shifazheweizhi
        触发器 - 开启 未命名触发器 002 <预设>
        For i 从 1 到 2, (点 - 清除 dian)
[/trigger]
这个T初始关闭,是旋转单位的
[trigger]
未命名触发器 003
    事件
        时间 - timer2 到期
    条件
    动作
        单位 - 删除 bingfu
        单位 - 删除 huofu
        触发器 - 关闭 未命名触发器 002 <预设>
[/trigger]

这个T是关闭技能效果的。

技能的施放是通过修改了的凤凰火焰技能加上的。通过添加地图范围内带有这个技能魔法效果的单位,可以修改这个技能的附带效果,比如冰符碰到的单位被冰封(眩晕)被火碰到的单位沉默(灵魂燃烧技能)。这些效果使用对应的单位添加上就可以了。

演示-冰火符.w3x (20 KB, 下载次数: 1296)

6、概率范围眩晕

这个是个被动技能,就是单位进行攻击时有一定概率击晕面前一定范围的单位。

前面都是主动技能,这里给大家做一个被动技能的演示。这个被动技能是模拟的,并没有主动技能,如果你要一个类似的英雄技能,你可以做一个没有施放效果的被动技能,通过这个技能的等级来影响数据。这里我就不添加主动技能了。

要范围眩晕,可以使用的从属技能有几个,例如,穿刺、战争践踏……我这里使用的是穿刺。

技能的T为:
[trigger]
未命名触发器 001
    事件
        单位 - 任意单位 被攻击
    条件
        (攻击单位) 等于 danwei
        (随机实数,最小值: 0.00 最大值: 100.00) 大于或等于 50.00
    动作
        设置 dian[1] = (danwei 的位置)
        单位 - 创建 1 个 弓箭手 给 玩家1(红色) 在 dian[1] ,面向角度为 (danwei 的面向角度) 度
        单位 - 立即移动 (最后创建的单位) 到 dian[1]
        设置 dian[2] = (从 dian[1] 开始,距离 300.00 ,方向为 (danwei 的面向角度) 度的位移处)
        单位 - 对 (最后创建的单位) 发布 不死族地穴领主 - 穿刺 命令到目标点: dian[2]
        单位 - 设置 1.00 秒 普通 类型的生命周期对 (最后创建的单位)
[/trigger]
[trigger]
未命名触发器 002
    事件
        单位 - 任意单位 死亡
    条件
        ((死亡单位) 的类型) 等于 弓箭手
    动作
        单位 - 删除 (死亡单位)
[/trigger]

这个也不用什么解释了吧,攻击——判断并计算概率——发动技能。

演示-概率范围眩晕.w3x (19 KB, 下载次数: 1784)

7、尸体爆炸

尸体爆炸这个技能的制作难度在于尸体的选取。选取尸体可以采用两种方法:

第一种是用对尸体自动施放的技能(如暗夜精灵的复仇之魂技能)选取,这个只要获得单位施放技能命令就可以了,获取的数据是技能施放的目标(单位类型),这种方法的好处是可以把部分效果直接用技能做出来,T的内容很少。

第二种是选取范围内单位,条件是范围内单位的生命值为0.具体动作如下:

未命名触发器 002
[trigger]
动作
        单位组 - 选取 (半径为 xxx 圆心为 yyy 且满足 ((生命值 对于 (匹配单位)) 大于或等于 10.00) 的所有单位) 内所有单位做动作
            Loop - 动作
  [/trigger]

这是圆范围的,矩形的可以参照演示中制作尸体的T的条件,那个是对于矩形范围内的尸体数量的判断。

这个演示中使用的是第一种选择方法,用到了水元素作为主体技能,从属技能有复仇之魂,雷霆一击(这个可以改,根据自己的效果)用了两个马甲。具体的自己看演示吧。

这个演示主要是给大家演示一下如何选取尸体这种特殊的物体,技能施放画面什么的并没有认真做。

使用的T如下
[trigger]
未命名触发器 002
    事件
        单位 - 任意单位 被召唤(召唤单位)
    条件
        任一条件成立
            条件
                ((召唤单位) 的类型) 等于 治疗守卫
                ((召唤单位) 的类型) 等于 弓箭手
    动作
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                ((召唤单位) 的类型) 等于 治疗守卫
            Then - 动作
                单位 - 对 (召唤单位) 发布 暗夜精灵族复仇天神 - 激活复仇之魂 命令
            Else - 动作
                动画 - 改变 (召唤单位)  的颜色比例为(100.00%, 100.00%, 100.00%),透明度为 100.00%
                单位 - 对 (召唤单位) 发布 人族山丘之王 - 雷霆一击 命令
[/trigger]

这是个一体化的T,两个技能的触发内容组合到一个T里了。根据不同的召唤单位发布不同的动作。
演示-尸体爆炸.w3x (19 KB, 下载次数: 949)
回复

使用道具 举报

 楼主| 发表于 2008-9-28 20:29:48 | 显示全部楼层
因为某位仁兄的求助所以做了生命最大值合魔法最大值的改变的演示
生命是在GA上找的,魔法是我自己改的,
下面是自己的几个T的教程或研究 :
T的进阶教程
T的延时参数传递方法
T的局域化与变量传递研究演示技能——近战抵抗护盾

life and mana(T).w3x

13 KB, 下载次数: 1197

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-3-29 14:31 , Processed in 0.243771 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表