![](https://img.kancloud.cn/7b/30/7b30ad2f58f4611a1353434bd9be5647_554x457.png)
① **头部面板**
② **技能列表面板,技能在此面板中创建。**
③ **技能信息面板,技能的基本信息会显示在这里。**
④ **技能等级信息面板,技能的所有等级信息会显示在这里。**
⑤ **技能作用范围面板,技能的当前等级的作用范围信息会在这里显示与汇总。**
⑥ **技能释放条件面板,技能的当前等级的所有的释放条件会在这里显示与汇总。**
⑦ **技能学习条件面板,技能的当前等级的所有的学习条件会在此显示与汇总。**
*****
**技能添加流程:**
**一 、添加素材动画(面板①中的技能特效):**
![](https://img.kancloud.cn/0b/2b/0b2b81dfee32177504c6caea3a53ad8f_554x632.png)
1.点击新建,新建一个新素材
![](https://img.kancloud.cn/85/d8/85d83651cf6b52addd9e3d1489645c14_250x210.png)
2.点击新创建的素材,在右边填写特效名字与相关的动画信息(参考上面的图片说明):
![](https://img.kancloud.cn/41/00/4100e3946eae333eec78ec270840bc42_308x519.png)
3.点击确定添加完毕。如有多个特效,再重复一次上述步骤。
>[warning] **特效类型**:
```
1. 挥洒:动画帧会跟随着你的施法动作一起播放,施法速度有多快就跟着播放多快。
2. 飞行:从释放者到目标之间按一定速度持续接近目标时播放的动画,如灵魂火符 火球术。
3. 动画:严格按照帧动画设置时间播放。不受任何速度或者其他因素影响,严格按照规定帧时间播放,完毕即停止。
```
**二 、添加技能信息(面板②):**
1.在空白处单击右键弹出新建菜单,选择新建技能或者新建文件夹之后再点新建技能:
![](https://img.kancloud.cn/b2/55/b2558287bf7bcb678b68c9f9bc408ed0_222x415.png)
2.填写技能的基本信息:
![](https://img.kancloud.cn/41/68/41685496269007b03572d996eb7346f8_447x222.png)
**三、添加技能等级信息(面板④):**
1.**点击加号就是添加一个等级,一个技能至少需要一个等级。**
2.**选中新添加的等级为蓝色后,开始编辑这一等级的技能信息。**
![](https://img.kancloud.cn/41/68/41685496269007b03572d996eb7346f8_447x222.png)
>[danger] **注意,技能的每一个等级都拥有独立的动作**、**特效**、**图标**、**冷却时间**等条目(**面板**④右半边**的所有列**),**技能作用范围列表**信息(**面板**⑤)**,等级描述信息(面板④**的下方),**技能释放条件**信息(**面板**⑥),**技能学习条件**信息(面板**⑦**)。所以同一个技能的每一个等级的表现形式可以设置成不一样的,设定时请注意。
**四、添加技能释放条件(面板⑥):**
**1.空白处点击右键,点击新建条件**
![](https://img.kancloud.cn/1d/55/1d55784fcc484d95c5149b6ac997e4d2_554x120.png)
![](https://img.kancloud.cn/01/6f/016fd6a55eb8b0f9795493889f7de20d_360x218.png)
> **条件类型**:学习的条件是什么,如选等级则是根据等级判断,其他以此类推。
> **操作**:数据判断模式,选择之后则根据后面的数值判断是否符合。
> 数值:判断数值,作为前面选择的判断模式和条件的判断数值。
> 检测通过消耗:选择之后,如果判断的数值符合,会直接扣除条件的数值(在无法扣除的数值中无效)。
>[danger] **\*比如,条件选择等级,操作选择>=,等级写5,则学习条件是判断等级是否大于5。**
3.**确定后添加成功。如果还有并行的其他条件,则继续重复上述步骤,按需添加。**
**五、添加技能学习条件(面板⑦):**
**\* 本步骤和步骤四类似,请参照步骤四进行添加。**
**六、添加技能作用范围条件(面板⑤):**
**1.点击+号进入技能作用范围列表界面,概念将在下面的举例步骤中一一解释。**
![](https://img.kancloud.cn/93/25/9325f78c6c17070803739ca415b821cd_554x466.png)
4.**点击新建范围创建一个作用范围,或直接在下方的坐标区按住左键圈选一个范围,然后点击右键新建范围,如:**
![](https://img.kancloud.cn/21/8b/218b0d895191388d5d14099cac3d8ee1_342x196.png)
![](https://img.kancloud.cn/6d/34/6d349598c89428330a7b705be5ae5f26_380x132.png)
**然后选择分组ID,填写这个范围的备注信息后,点击确认。如果直接点击的左上角的新建,则没有此弹框。**
5.**在作用范围列表里点选刚才添加的范围为蓝色后,开始在右边编辑各项信息:**
![](https://img.kancloud.cn/e9/e3/e9e3b083ee7da2e58a3133e7fe7717db_529x448.png)
**左上角、右下角属性释义:**
**从上图的实例添加结果看,可以观察到一片蓝色的范围,与左上角、右下角的数值信息,按照上方的坐标轴图示,如果这个绿色的方块是中心点(0,0)的话,那么这个整个范围的最左上角的点的坐标是X轴左边走两格,Y轴上面走两格,是属于**\*\*-X,-Y区间,所以左上角的坐标值是-2,-2,同理,右下角是**X轴右边**走两格,**Y轴下面**走两格,属于**X,Y区间**,坐标值是2,2,所以知悉范围模式之后,之后便可以不用拖拉全选,直接输入左上角与右下角的坐标信息来快速圈出范围矩形了。
![](https://img.kancloud.cn/05/40/0540d8ab4d9b027c3805b7e91c3f84b0_245x148.png)
**附加点列表释义:**
**如果想做的技能范围是不规则的图形,这时候就需要用到附加点列表功能实现。例如想实现上方这样的选择范围,光是用范围圈选是不行的。**
![](https://img.kancloud.cn/6d/13/6d13a916a3126d9dfda2eb7860590ee2_288x110.png)
![](https://img.kancloud.cn/4e/30/4e304b7ec030993a3d8334550ddefed6_149x239.png)
**首先从第一个要添加的额外的点这里左键选中,点击右键,选择添加此坐标为附加点,这样就添加了一个附加点,会显示在右上的附加点列表里:**
![](https://img.kancloud.cn/e5/71/e571de4758f69497dfba94020de8c532_554x490.png)
**之后依次按照上面步骤创建好所有的额外的点,就可以实现这个效果了。额外的坐标列表也会在上面的附加点列表中罗列出来。**
**中心点类型释义:**
![](https://img.kancloud.cn/07/6a/076a684f6c6f4fa752cac7de586997f3_109x94.png)
**中心点类型共有四个:**
>[info] **无效**: 表示此作用范围不可用,暂时屏蔽某个作用范围可修改为无效即可。再次改变即可还原。
> **施法者自身**:此时范围中的绿点代表施法者自己,绿点的向上箭头指的是人物的正前方,红点为相对施法者自身位置产生效果的坐标点,在实际游戏场景中进行方向匹配。
> **目标**:此时范围中的绿点代表目标,绿点的向上箭头指的是目标的正前方,红点为相对攻击目标位置产生效果的坐标点,在实际游戏场景中进行方向匹配。
> **鼠标落点**:此时范围中的绿点代表鼠标指向的那个点,红点为相对鼠标指向的位置产生效果的坐标点。在实际游戏场景中不进行方向匹配。
6.**添加命中条件,条件选择,判断形式与大步骤四类似,按照需求添加即可:**
![](https://img.kancloud.cn/7a/d3/7ad3ed8efa96ffb61c16d27519ee51fe_205x100.png)
>[danger] **\*注意,建议默认添加上3-是否可攻击条件,这样技能会更贴近真实技能,会根据攻击模式、地图属性等约束攻击的条件限制,否则会出现不管什么模式都可以攻击的问题。**
7.**添加作用列表,同样支持多组:**
![](https://img.kancloud.cn/12/3a/123afe7d4bab7fd83aeec3a16d308ff7_526x478.png)
**选择HP、MP操作后,右边的选项类似:**
![](https://img.kancloud.cn/80/9a/809aee67b04d01ac6fb95c632903d833_227x79.png)![](https://img.kancloud.cn/da/c6/dac6db29221c0162819a7a94ef947e05_250x78.png)
**伤害类型如图所示,代表着这个技能范围是根据什么类型的伤害来计算数值,**
**防御类型**,则是上面的伤害类型会去抵扣什么样的防御类型,直接按需选择。
![](https://img.kancloud.cn/6f/0d/6f0d52ce014a0bc8e9598d15a5ef8763_335x119.png)
**最高伤害与最低伤害**:就是技能伤害的上下限值,技能的伤害造成的**计算数值**会根据最高伤害与最低伤害之间随机取出的一个整数来获得。
**伤害万分比**:可以用来调整整体伤害值比率的数值。公式为:随机出的伤害值\*万分比/10000
**所以如果设置伤害万分比为5000,那么随机出来的伤害值会减少1/2。利用伤害万分比,可以很方便的调整伤害倍率。**
**附加伤害**:经过上述计算之后还会叠加的固定伤害值。不管最终计算结果是多少,都会叠加进去的固定伤害。
整体的技能计算公式为:**(random(最高伤害-最低伤害)**+**最低伤害)/万分比\*10000 + 附加伤害**
![](https://img.kancloud.cn/f3/0c/f30cc6c63d84a794ea5c3ca9ac421fc7_171x322.png)
**最后,经过上述公式计算出来的值之后,开始决定在左侧的作用。操作有**\+ - **\=**,按照上述例子,
**如果这里选择**\-**,那么就代表上述公式计算出来的数值将会作为**减少HP**的最终效果执行。一般**\-**用作攻击性技能。**
**如果设定为**+**,则是这伤害计算之后,反而用此数值给人物**增加HP。一般用做治愈类技能。\*\*
**设定为=,就是会将人物的HP设置成这个公式计算后的值。**
**概率**:决定了按照公式计算出数值之后,按照概率判断是否执行上述的HP操作,数值同样是万分比值,越低则概率越小,0则代表不启用,也就是一定执行,最低只能设置为1,也就是万分之一。\*\*
**延迟毫秒**:HP操作效果执行之前延迟的时间。\*\*
**作用 ID:绑定的特效ID,下一个步骤会详细解释。**
**总是生效**:勾选后则忽略概率参数,肯定有效。
**目标后仰**:效果执行之后,目标是否会做出一个受到攻击之后的后仰动作。
8.**添加特效列表,同样支持多组:**
![](https://img.kancloud.cn/9f/08/9f081895ee3fa9e7426cdc5472623fed_446x277.png)
**特效名称**:选择在第一大步中做的特效。
**特效播放延迟设置**:技能发动后,这个特效的播放是根据什么来延迟。
**飞行速度**:根据第一大步,如果设定了飞行类的特效的话,此处的飞行速度就是飞到目标头上的速度。
**声效ID**:播放声音,参照**Sound.Lst**,如果大于**1000000**,91内部支持了自定义声音列表91Sound.Lst
**声效延迟**:声效延迟多少毫秒播放。
**激活作用ID**:配合在作用列表内设定的作用ID使用,设定相同的ID则特效与该作用列表中的效果绑定,只有播放该特效时才执行该ID的作用效果。多用于飞行特效时最终落到目标时的作用于特效配合。
**激活作用点**:在特效为动画类型的时候决定此特效是作用到目标身上还是场景坐标。区别在于场景:目标移动特效还在地图位置保持不动。 角色:目标移动 跟随角色移动。
**七、填写技能最后的基本信息(面板④右半边**):
![](%E8%87%AA%E5%AE%9A%E4%B9%89%E7%BC%96%E8%BE%91%E5%99%A8%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E.files/ClipboardImg30yy28.bmp)![](https://img.kancloud.cn/fd/08/fd083ef4ff30b4a166ef33c27153fd31_272x183.png)
**使用动作**:技能发起时的起手动作
**特效**:起手动作的特效
**技能图标**:1-9999 读取MagIcon.wzl 10000-19999 读取 MagIcon1.wzl 20000 - 29999 读取 MagIcon2.wzl。具体请用素材编辑器打开查看。
**特效延迟**:起手特效的延迟时间,单位为毫秒。
**冷却时间**:发起下一次技能需要等待的时间,单位为毫秒。
**声效延迟**:起手动作的声效的延迟播放时间,单位为毫秒。
**升级熟练点**:本等级的技能经验值上限。
**声效ID**:声效的ID,参考Sound.lst。
**冷却组**:同一个冷却组的所有技能中任一发动之后,同ID的所有其他技能同时触发进入冷却时间。冷却组有效范围(1-255) ,0表示不使用冷却组
**八、至此,一个技能的一个等级信息全部添加完毕。如需要继续添加下一等级的信息,从第一大步或第二大步重复多次即可。**
- 更新日志
- 2021年更新日志
- 2020年更新日志
- 2019年更新日志
- 2017年更新日志
- 2016年更新日志
- 2015年更新日志
- 2014年更新日志
- 2013年更新日志
- 游戏对象
- GameLib
- TActor
- TActorList
- TAddedAbility
- TAddLevelItem
- TAddPointItem
- TArgs
- TAttatckMode
- TDBEngine
- TEnvirnoment
- TFunctionFlag
- TGuild
- TItemState
- TItemWhere
- TMissionItem
- TMissionLinkItem
- TMissions
- TNormNpc
- TPlayMonster
- TPlayMonsterNPC
- TPlayObject
- TStdItem
- TStoreItemList
- TToptenz
- TUserCastle
- TUserItem
- TUserMagic
- TVarValue
- Tbuff
- TBuffCategory
- TBuffAbilityType
- TBuffStatusType
- TBuffIntervalType
- 固定NPC
- AINpc
- ExternalNPC
- MagicNpc
- ManagerNPC
- MapEventNPC
- MissionsNpc
- QFunctionNPC
- RobotManagerNPC
- TimeManagerNPC
- 自定义功能
- 自定义客户端UI
- Buffer效果自定义设计
- UI管理界面预览
- 如何实现物品放入或取下时的函数触发
- 自定义窗口
- 自定义界面中编辑框参数发送方式
- 自定义客户端装备提示效果
- 自定义特效
- 自定义装备提示样式
- Buff系统说明
- 自定义技能编辑器
- 技能扩展自定义
- 自定义技能初识
- 被动技能属性定义
- 技能模式定义
- 客户端效果定义
- 主动技能动作定义
- 新自定义技能编辑器
- 初始编辑器
- 自定义编辑器使用说明
- 如何实现自定义怪物
- 脚本实例
- NPC对话编辑
- 宝宝叛变的启动和停止
- 创建脚本单元
- 创建一个藏匿于地图上的攻击事件
- 地图传送
- 获取服务器名称
- 获取玩家任务信息
- 检测是否为沙城成员
- 角色称号、头顶花翎、头顶特效设置
- 判断PK值
- 判断队伍信息
- 判断角色对面是一个什么对象
- 判断角色金币、元宝及礼金等数量
- 判断角色所在的地图信息
- 判断角色性别
- 判断角色职业
- 判断两个角色之间的距离
- 判断是否为队长
- 判断是否为行会掌门
- 判断是否为沙巴克城主
- 判断有某一物品的数量
- 判断转生等级及等级
- 让目标移动到指定的坐标
- 让玩家回城
- 如何播放一个声音文件
- 如何操作Check状态检查
- 如何操作数据库
- 如何查看玩家IP来源
- 如何查看装备是否可被穿戴或取下
- 如何查找一个行会
- 如何充值角色的属性点
- 如何初始化全局变量
- 如何穿戴或取下一件装备
- 如何创建一个副本地图
- 如何创建一个行会
- 如何打开一个宝箱
- 如何打开指定的URL
- 如何弹出对话框让玩家选择执行
- 如何读写个人变量、行会变量及全局变量
- 如何读写文本文件
- 如何发送各种文字信息
- 如何访问其他角色
- 如何复活
- 如何给客户端发送一个标题栏闪动
- 如何给玩家发放物品
- 如何更新自定义窗口上的内容
- 如何关闭进度条
- 如何关闭一个打开的自定义窗口
- 如何过滤字符串中的文字
- 如何获得地图上全部玩家的信息
- 如何获得地图上指定范围内的怪物数量
- 如何获取丢在地上物品对象
- 如何获取角色当前使用的称号
- 如何获取角色负重
- 如何获取角色在线时长
- 如何获取排行榜信息
- 如何获取人物当前获得的称号信息
- 如何获取坐标上指定范围内的全部怪物
- 如何加入或离开队伍
- 如何加入一个指定的行会
- 如何加载和保存自定义的配置文件(INI文件读写
- 如何监控攻击模式的更改
- 如何监控玩家扔物品
- 如何检查目标是否处于某种状态
- 如何将NPC设置为当前玩家的雕像
- 如何将地图上的角色全部随机传送到另外一个地图上
- 如何将指定玩家传送到身边
- 如何将装备显示在NPC对话框上
- 如何脚本封速
- 如何脚本刷怪
- 如何脚本增加和删除一个NPC
- 如何脚本增加和删除一个怪物NPC
- 如何禁止玩家聊天
- 如何开启及停止自动增加经验值
- 如何克隆玩家为人形怪
- 如何判断当前等级的经验值上限
- 如何判断队伍中是否为不同职业的角色
- 如何判断角色是否为新人
- 如何判断玩家曾经是否接过某任务
- 如何清除地图上的怪物
- 如何请求一个URL
- 如何取得地图上的怪物数量
- 如何取得行会全部称号及全部成员信息
- 如何取得全部在线用户信息
- 如何取得玩当前机器的机器码
- 如何取得物品的数据库单价和销售价格
- 如何取得邮件的数量信息
- 如何取得自定义界面里面玩家放入的物品信息
- 如何让打开客户端的背包、商城及市场
- 如何让他人执行指定的脚本
- 如何删除或修改行会称号
- 如何删除玩家的物品
- 如何删除一个称号
- 如何删除一个副本地图
- 如何删除一个扩展按钮
- 如何删除一个延时调用函数
- 如何设置当前称号
- 如何设置角色死亡不爆出
- 如何实现充值平台对接
- 如何实现骰子
- 如何实现无敌隐身
- 如何实现物品属性转移(物品复制)
- 如何实现一个带参数的输入框
- 如何实现一个机器人
- 如何实现自定义装备爆出提示
- 如何使用JSON对象
- 如何使用角色S、P及N变量
- 如何使用静态数组和动态数组
- 如何使用升级加属性点
- 如何收取城堡金币
- 如何随机刷新物品属性
- 如何踢出在线人物
- 如何添加一个称号
- 如何调整角色的HP、MP值
- 如何调整角色声望值
- 如何调整人物攻击模式
- 如何调整人物转生等级
- 如何调整限时杀怪经验倍率
- 如何调整装备属性上限
- 如何完全控制他人
- 如何显示一个进度条
- 如何修改怪物名称
- 如何修改行会帮主
- 如何修改人物技能属性
- 如何修改一个物品的属性
- 如何延时调用一个函数
- 如何以爆物的方式将一个怪物的爆率给玩家
- 如何用脚本存取物品
- 如何在地图上爆出一个指定的物品
- 如何在行会指定的称号里面添加成员
- 如何在脚本中引用外部DLL
- 如何在客户端显示一个特效
- 如何增加和移除一个个人时钟事件
- 如何增加或减少角色经验值
- 如何增加一个地图连接点
- 如何增加一个行会的称号
- 如何增加一个扩展按钮
- 如何召唤下属
- 如何指定删除角色身上的装备
- 如何重新计算排行榜
- 如何转职
- 如何自动增加或减少元宝
- 如何做一个感叹号提示
- 实现自定义的客户端命令集
- 推开指定的目标
- 修改怪物的爆率为一个指定的爆率文件
- 循环自身全部技能
- 如何设置装备掉落触发脚本处理
- 如何设置装备掉落提示
- 给玩家添加一个未接任务
- 给玩家添加一个已接任务
- 补丁规则
- NPC补丁设置
- Prguse.data文件编辑的注意事项
- 引擎补丁规则
- 地图补丁规则
- 盾牌补丁
- 怪物补丁设置
- 头发补丁设置
- 武器及衣服补丁设置方法
- 坐骑补丁设置
- 操作相关
- 数据库设置
- 版本数据库管理
- 锄头设置方法
- 攻速及幸运设置
- 技能特殊设置
- 扩展数据管理
- 魔法数据设置要点
- 人形怪穿戴及技能设置
- 人形怪攻击速度设置
- 人形怪数据库设置
- 如何配置宝箱及钥匙
- 如何设置解包物品
- 如何设置一个固定位置的传送道具
- 设计采集类怪物
- 设置自定义物品种类名称
- 数据库报错问题
- 特殊物品属性设置说明
- 添加宝石物品
- 添加可穿戴宝石、气血石及魔血石物品
- 物品数据库设置说明
- 游戏数据库的导入导出
- 服务端操作
- [M2]开启物品属性下限功能
- 摆摊相关
- 备份与恢复
- 防外挂设置
- 服务端部署
- 合区
- 角色成长属性调整
- 配置排行榜系统
- 如何查看M2Server所在机器的机器码
- 如何实现多机负载
- 网关防攻击配置
- 游戏网关性能设置
- 任务系统
- 脚本混编说明
- Call命令说明
- 参数Args的读取
- 存在的意义
- 让他人执行脚本
- 如何定义常量
- 如何读写变量
- 如何实现混编
- 特殊标志段说明
- 特殊的CHECK和SET
- 调整杀怪倍率
- 支持编译时错误提示
- 地图配置
- 地图NPC配置
- 地图安全区编辑
- 地图创建及属性说明
- 地图杀怪任务触发
- 地图事件编辑
- 地图刷怪配置
- 地图挖矿设置
- 附属地图配置
- 关联到盛大新格式地图
- 检查地图文件使用情况
- 卫士配置
- 登陆器操作
- 登陆器自我更新
- 登录器界面组件介绍
- 登录器设计界面初识
- 管理登陆器列表
- 将登陆器列表部署到服务器
- 客户端控制
- 客户端样式选择
- 列表设计界面初识
- 如何创建登陆器皮肤
- 如何生成登陆器文件
- 玩家登陆器选项
- 微端控制
- 版本管理器
- NPC对话内容编辑
- 版本文件二次注册使用方法
- 查看程序是否更新
- 创建新的版本文件
- 单个脚本加密方法
- 额外数据库信息配置
- 给版本设置一个唯一ID
- 怪物爆率配置
- 将版本运行所需的配置文件植入版本文件中
- 角色登陆提示信息
- 脚本分类说明
- 脚本机器人配置
- 配置宝箱
- 配置怪物说话
- 如何开启技能自动追踪目标的功能
- 如何实现登陆器图标及客户端Logo的替换
- 如何下载最新版本
- 商城(元宝、礼金)管理
- 商贩贩卖物品配置
- 设置版本工具环境变量
- 套装配置
- 添加一个盾牌物品
- 系统提示信息配置
- 一键导入其他引擎的版本
- 远程管理
- 资源数据管理
- 如何添加一个任务模板中的任务
- 其他辅助说明
- [重要]脚本编写注意项
- 256颜色值
- IP库
- Mir200_Envir下的列表文件详解
- 各种时间控制方法
- 怪物DB数据
- 怪物Race设置
- 键盘码对应数值表
- 脚本系统与系统安全说明
- Pascal基础说明
- Pascal变量类型
- Pascal数据类型
- 基础函数及单元
- 客户端标签变量
- 疑问/建议/反馈/留言
- 在线教程
- 引擎下载