网易首页 > 网易号 > 正文 申请入驻

【游戏设计】如何搭建技能实现框架,让你少走弯路【干货】

0
分享至

作者:成风a

https://zhuanlan.zhihu.com/p/651349804

写在最前

大家好,我是成风a,一名在游戏行业摸爬滚打4年多的小策划,写这篇文章的主要原因是想对以往的工作经历有个回溯,希望让自己的知识体系更深刻完善的同时,也希望能帮到刚入行或对这方面感兴趣的小伙伴,不过这些仅是以我当前的认知水平所总结的,所以还有很多不足,欢迎大佬们交流,指正。

为什么技能框架搭建如此重要?

出现这种问题的原因在于,前期做战斗的时候因为策划没有用框架的思维想问题,程序也不知道你将来有哪些功待扩展的功能,随着后续版本技能越来越多,越来越复杂,导致维护起来极其繁琐且不稳定。这篇文章的重要意义在于,帮助你梳理出一套扩展性强又好用技能实现思路,这些思路在你以后任何的项目都能用到。看完后,应该会有以下收获:

  1. 更深刻的理解技能底层机制、动效表现的实现逻辑
  2. 技能表全字段的梳理及解释
  3. 技能表数据结构,附模板

如何打造一套扩展性强又好用的技能框架?

要想满足扩展性强又好用,我认为三个关键点:

  1. 程序后期易扩展。一般在项目DEMO阶段,战斗系统就要开始搭建,但起步阶段又不可能就把所有的技能效果规划好,尤其是内容向游戏,你永远不知道战斗策划下一个“奇怪”创意是什么。
  2. 功能可复用性。目的是减少开发成本。比如两个A、B技能,技能效果都是造成减速,只是触发条件不同,这时候无需做个全新的减速技能,只要新增触发条件类型即可。聪明的老师们已经发现了,这种思路其实是将一个技能拆分成多个模块,只实现缺失的模块,然后和已有的其他模块快速拼装成一个新的技能。
  3. 配置时间成本低。技能相关字段多如牛毛,如果所有字段只放在同一张表上,必然会降低翻看速度、错误排查效率。建立多个分表非常重要,如技能主表、BUFF表、伤害表、动效表现表,我会在文章末尾放上一套模板,供大家参考,用了一周时间呕心沥血整理,好想要大家一个小赞支持支持——

废话不多说,下面是我整理的一套框架,从能否释放对谁放再到生效结果。任何技能必将经历此流程

一,释放类型

1,主动释放:满足释放前置条件,玩家主动按键释放。

2,自动释放:满足释放前置条件,自动释放。

《明日方舟》能天使3技能,能量满自动释放

3,被动释放:玩家在战斗中因达成某些事件而触发。被动其实是个大类,实际会细分出很多事件小类:如受击x次,血量低于x%,x秒未受到伤害,受到异常状态等。

《星铁》卡夫卡

4,混合类型:以上多种类型结合,如主动和被动结合,玩家主动按键后还需满足某个事件才能触发,比如LOL火男,Q技能造成炽热之焰,同时会叠加层数,叠到3层时,爆炸造成百分比魔法伤害。前者炽热之焰为主动类型,只要按键了一定会触发,后者爆炸伤害为被动,必须满足叠加层数才能触发。

《LOL》火男

二,释放前置条件

1,技能CD:以时间为单位-秒(s)-参与计算,特点是符合大多数人的认知,减少理解。

  • 独立CD:释放该技能后进入冷切时间,冷却期间无法再次释放该技能。
  • 公共CD:同种类型技能共用一个CD,这种在动作游戏中很常见

2,技能消耗:

  • MP值:俗称耗蓝量,每次释放消耗一次MP值,特点是可通过使用消耗型道具回复。
  • 技能能量:相比CD时间更为抽象,所以便于从更多角度控制节奏,但缺点是增加了理解成本。能量展

开后分为:

  • 初始能量:便于做暖风时间,暖风时间 =(能量上限 - 初始能量)/回复速率 。
  • 回复方式:不仅限于按时间回,如按受击次数、攻击次数...
  • 回复速率:根据回复方式配置对应效率。每秒1点或者每打1次回一点。
  • 能量上限:既充满1次能,达到1次释放消耗。
  • 充能次数:每释放1次技能,消耗1次充能,充能次数可叠加,有叠加上限。

《明日方舟》角色头顶黄色序号为充能次数,下方绿条为能量值,按时间回复

三、触发范围:

  1. 形状类型:圆形,矩形,扇形等
  2. 形状大小:用于类型对应的参数设置
  3. 中心点绑定位置:如以自身所在的圆,或正前方的矩形。
  4. 特殊:如战棋游戏中以格子为最小单位,然后拼装成各种形状。

《天地劫》

四、目标选择:

目标选择对技能释放意义重大,相比普攻,技能是低频率高收益行为,精确瞄准释放对象才能使收益最大

化,比如技能1:对单个目标造成500%伤害,并造成出血状态;技能2:对出血状态的敌人额外造成100%

伤害。技能1为单体爆发技,打精英/BOSS收益最大,技能2有了对出血的目标增伤,两者配合对精英/

BOSS更具策略性。筛选要点:①一个技能支持多种目标类型共存;②每种目标类型层层筛选出1个。

1,一个技能支持多种目标类型共存:单个技能可能会同时有两个效果,且每种效果释放对象不一样,如LOL日女的W,对自己加抗性的同时还对敌人造成伤害。

2,每种目标类型层层筛选出1个:每一种效果都要走此流程,先选类型,再配置该类型下最大生效目标数量。

  • 选类型:大类型选个能覆盖全部的,比如以阵营划分,小类型以后随着版本需要慢慢扩展,分两个字段控制,这样做的好处是以免所有情况排列组合起来太臃肿。
  • 大类型:0-不生效;1-友方;2-敌方;3-全部;4-仅自己
  • 小类型(大类型中再次选):0-不筛选;1-仇恨值最高;2-生命最低;3-近战;其他可扩展
  • 最大目标数量:也就是我们常说的单体/群攻的目标数量配置,int类型。
  • 备用目标:用处在于如果本次释放,攻击范围内找不到筛选后的目标,需要备用目标继续筛,备用目标的个数和顺序根据自身项目定。

总结:最终逻辑是一个技能支持扩展多种效果类型,每种效果类型选出1个,程序执行的优先级顺序可以通过配置表结构控制。

五、伤害计算

战斗公式:

战斗公式包含属性词条、倍率词条,以及运算方式。业界常见的战斗公式可分为减法和乘法两类,两种计算方式有着不同的特点。

减法公式

减法公式举例:伤害 = { [攻击(1+属性倍率)- 防御] (1+技能倍率)} (1+最终伤害倍率)

  • 优点:①理解成本低,每提升1点攻击力,对方防御不变时,伤害也提升1点;②属性购买成长体验明显;③利用刮痧线做数值强策略性。常见于策略回合制卡牌和成长体验卖数值的游戏类型中。
  • 缺点:攻击力的收益受对方防御值的影响,且防御值越接近攻击值,影响的程度越大,尤其是在当防御值>=攻击值,会出现攻击方造成的伤害始终为0的不破防现象,所以防御投放上数值计算上比较困难。

乘法公式

乘法公式举例:伤害 = { [攻击(1+属性倍率)(1-免伤率)] (1+技能倍率)} (1+最终伤害倍率)

  • 优点:①便于战斗力的量化,比起减法公式更容易来做不同职业的动态数值平衡;②伤害按百分比折算,不会出现不破防情况。
  • 缺点:因为免伤率是百分比,后期属性增长到某个阶段收益衰减会越来越快,成长体验糟糕。

注:从战斗公式中可以看出,词条所属的乘区位置直接影响着其价值,需与程序约束好公式中每个词条的代表意义。

伤害类型:常规的类型分为物理,法术,真实,治疗。不同伤害类型用于参与计算的公式不同。

伤害段数:每次释放技能打的次数,本次总伤害 = 伤害公式所得值 * 段数。相信不少同学开始有疑惑了,干嘛用段数这么麻烦的设计,直接打一次换算成同样的总伤害不就行了么?答案还真不是。我直接说做下个人理解:

  1. 跟战斗公式有关,技能倍率乘区运算完之后的字段会影响最终伤害,如公式最后的格挡,格挡次数=段数。
  2. 单次折算成多次,优点是伤害不容易溢出,缺点是增加了输出时间,与技能DPS的定位有关。
  3. 与动效表现有关,为了给人真实性。比如有些技能就是造成持续性伤害

《DNF》裂波斩

六、附加BUFF

  • 类型:增益,减益。在状态抗性,驱散,正负美术表现反馈时用到。
  • 效果:

  1. 属性buff:如以百分比或固定值的形式改变某些属性。
  2. 控制buff:如减速,眩晕,冰冻,束缚,恐惧,魅惑,击飞等
  3. 伤害buff:如每xx秒扣除xx点伤害。当数值为负数,扣除相当于治疗。
  4. 驱散buff:清除某类型Buff,使之失效。
  5. 功能buff:改变战斗相关功能或资源的buff,如使目标无法释放技能、改变攻击范围,或改变经济费用。
  6. 其他buff:位移,传送,复活,增加标记等

  • 效果参数:用于技能效果对应的参数设置。字段一般为数组类型。
  • 生效时机:在【伤害计算】前还是之后,对最终效果有影响。
  • 持续时间:从生效到消失的时间。一般单指一个周期。
  • 生效次数:指上一步要循环的周期数。
  • 生效间隔:周期间的冷却时间。
  • 释放者死亡BUFF是否消失
  • BUFF叠加:

  1. buff分组:不同组buff直接叠加,同组buff按下面规则叠加。
  2. 最大叠加数:同组buff叠加到指定最大层数后无法继续叠加。
  3. 叠加方式:效果叠加,持续时间按下面刷新方式。
  4. 叠加持续时间刷新:1-不刷新,保持原来的剩余生效时间;2-刷新,重置持续时间。

  • buff等级:在技能养成游戏中会用到,同组buff,每个buff等级不同,效果参数不同。

七、动效表现

1,攻击方

  • 前摇动作:俗称抬手动作,在关键帧之前,被打断后无法释放技能或普攻。
  • 关键帧:动作播放到关键帧开始计算伤害,需美术在动作动画中打标记。
  • 后摇动作:俗称收手动作,在关键帧之后。打断后摇可快速进入下次攻击,MOBA中的走A就是此原理。
  • 是否闪放:打断上一动作直接做攻击动作。
  • 攻击类型:1-近战;2-远程。
  • 位移类型:1-直线;2-跟随怪物;
  • 位移参数:根据类型配置对应参数。
  • 攻击特效:资源id配置;特效播放延迟时间。
  • 子弹特效:攻击类型为远程时才生效。
  • 子弹运动:

  1. 运动轨迹:1-直线;2-螺旋;3-抛物线
  2. 轨迹参数:根据类型配置对应参数。
  3. 是否实时跟随:飞行过程中是否实时刷新目标位置并实时跟随。
  4. 飞行速度:决定允许玩家反应时间的一部分。

  • 穿透类型:1-不穿透;2-原方向穿透;3-跳弹附近怪物
  • 穿透参数:穿透类型对应参数配置。
  • 攻击音效

2,受击方

  • 受击动作:1-默认;2-击倒
  • 受击特效:1-默认;2-指定
  • 特效挂点位置:1-头部;2-上身;3-腰部;4-脚下
  • 受击关键帧:用于扣血时机、飘字时机设置。
  • 位移类型:1-直线;
  • 位移参数:根据类型配置对应参数。
  • 受击音效

八、技能表参考

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
歌手张政直播后突然捂住胸口并大喊“不要碰我,我这里痛”,随后抽搐晕倒,被救护车紧急送医

歌手张政直播后突然捂住胸口并大喊“不要碰我,我这里痛”,随后抽搐晕倒,被救护车紧急送医

都市快报橙柿互动
2026-04-01 12:54:51
真不能怪祖院长,就曾医生这颜值、这才华和魅力,谁遭的住?

真不能怪祖院长,就曾医生这颜值、这才华和魅力,谁遭的住?

吃瓜局
2025-11-11 16:23:49
真相了,刘畊宏跳《本草纲目》没给版权费,周杰伦的回应来了…

真相了,刘畊宏跳《本草纲目》没给版权费,周杰伦的回应来了…

TVB的四小花
2026-04-02 03:47:45
性学家说男人恢复精力最快的方法,就是每天晚上睡前喝一杯小酒

性学家说男人恢复精力最快的方法,就是每天晚上睡前喝一杯小酒

艺鉴在线
2026-04-02 05:06:51
澳门世界杯:4月2日赛程公布,王曼昱王艺迪迎战伊藤美诚张本美和

澳门世界杯:4月2日赛程公布,王曼昱王艺迪迎战伊藤美诚张本美和

乒谈
2026-04-02 08:11:21
乒乓球世界杯:王楚钦12-10险胜!0-4逆风翻盘,2-0领先冲16强!

乒乓球世界杯:王楚钦12-10险胜!0-4逆风翻盘,2-0领先冲16强!

刘姚尧的文字城堡
2026-04-01 18:42:40
欧媒:匈牙利外长利用一票否决权,将俄罗斯人移出欧盟制裁名单!

欧媒:匈牙利外长利用一票否决权,将俄罗斯人移出欧盟制裁名单!

飞狼
2026-04-01 19:16:15
美伊还未停火,又一国要迎战美军,中国无视警告,先一步送上援助

美伊还未停火,又一国要迎战美军,中国无视警告,先一步送上援助

万物知识圈
2026-04-02 10:11:34
伊朗对美以发动第89波攻势,自杀式无人机突进北印度洋,逼退“林肯”号航母

伊朗对美以发动第89波攻势,自杀式无人机突进北印度洋,逼退“林肯”号航母

上观新闻
2026-04-02 04:24:13
“上大学包分配”回来了!这5所高校,毕业即入编,避开考公内卷

“上大学包分配”回来了!这5所高校,毕业即入编,避开考公内卷

狐狸先森讲升学规划
2026-04-01 12:30:03
离婚聊天记录曝光,张婉婷伤心欲绝,宋宁峰给Q女士借三百还网贷

离婚聊天记录曝光,张婉婷伤心欲绝,宋宁峰给Q女士借三百还网贷

话娱论影
2026-04-01 15:03:01
何为籍,何为贯?“籍贯”到底是什么地方?下次可别再填错了!

何为籍,何为贯?“籍贯”到底是什么地方?下次可别再填错了!

长风文史
2026-04-01 17:03:21
伊朗:动用超100枚重型导弹 攻击型无人机及200枚火箭弹 打击范围覆盖以色列全境

伊朗:动用超100枚重型导弹 攻击型无人机及200枚火箭弹 打击范围覆盖以色列全境

闪电新闻
2026-04-01 20:57:58
火爆冲突比塔泽被驱逐!老鹰大胜横扫魔术 沃克32分杰伦18+14+8

火爆冲突比塔泽被驱逐!老鹰大胜横扫魔术 沃克32分杰伦18+14+8

醉卧浮生
2026-04-02 09:35:34
张水华接连官宣两场偏远赛事:凭实力赚钱,还是专“捏软柿子”?

张水华接连官宣两场偏远赛事:凭实力赚钱,还是专“捏软柿子”?

老王谈跑步
2026-04-02 09:13:41
德天空:凯恩脚踝有问题,拜仁希望他在战皇马的首回合中复出

德天空:凯恩脚踝有问题,拜仁希望他在战皇马的首回合中复出

懂球帝
2026-04-02 07:57:17
无缘世界杯!意大利球迷破防:怒砸足协总部+丢鸡蛋,主席拒辞职

无缘世界杯!意大利球迷破防:怒砸足协总部+丢鸡蛋,主席拒辞职

我爱英超
2026-04-02 06:54:23
46岁秦岚波波头封神!西装+乐福鞋,解锁减龄穿搭新密码

46岁秦岚波波头封神!西装+乐福鞋,解锁减龄穿搭新密码

奔跑的小帅帅
2026-04-02 09:00:10
法国主帅德尚遭遇幸福的烦恼!世界杯26人大名单到底该淘汰谁?

法国主帅德尚遭遇幸福的烦恼!世界杯26人大名单到底该淘汰谁?

田先生篮球
2026-04-01 05:13:23
活久见!网传一男子离婚后,以年薪10万雇前妻带娃,创业成功逆袭

活久见!网传一男子离婚后,以年薪10万雇前妻带娃,创业成功逆袭

火山詩话
2026-04-01 09:21:04
2026-04-02 11:07:00
GameRes游资网 incentive-icons
GameRes游资网
GameRes游资网
7364文章数 10463关注度
往期回顾 全部

游戏要闻

240格也不够!《红色沙漠》背包问题依旧让人恼火

头条要闻

牛弹琴:伊朗越打越生猛了 发动规模最大的一次攻势

头条要闻

牛弹琴:伊朗越打越生猛了 发动规模最大的一次攻势

体育要闻

这六个字,代表了邵佳一的新国足

娱乐要闻

张婉婷已决定离婚 找律师讨论婚变事宜

财经要闻

电商售械三水光针 机构倒货or假货猖獗?

科技要闻

SpaceX秘密申报IPO,估值冲刺12万亿

汽车要闻

三电可靠 用料下本 百万公里的蔚来ES6 拆开看

态度原创

房产
本地
亲子
手机
健康

房产要闻

大反转!海口今年首宗重磅江景地块,拍卖突然终止!

本地新闻

从学徒到世界冠军,为什么说张雪的底气在重庆?

亲子要闻

孩子咳嗽的痰,可能对应不同的问题

手机要闻

高端旗舰也扛不住 三星折叠屏发售大半年要涨价

干细胞抗衰4大误区,90%的人都中招

无障碍浏览 进入关怀版