游戏开发论坛

 找回密码
 立即注册
搜索
查看: 21258|回复: 21

[分享] 从技能组合谈起:标签云与技能组合

  [复制链接]

8360

主题

9283

帖子

2万

积分

论坛元老

Rank: 8Rank: 8

积分
29945
发表于 2014-11-19 18:31:00 | 显示全部楼层 |阅读模式
GameRes发布,文/ManiaHero

  看到标题可能很多人会觉得莫名其妙,那么就让我从《魔兽争霸3》的一个MOD游戏开始说起。

  以前在《魔兽争霸3》上有一张我很喜欢的MOD地图,叫做“守卫大虾”,与其他类似防守MOD最大的区别是玩家可以自由的选择自己想要使用的技能,你可以挑选游戏中所有和治疗相关的主动、被动技能成为一个超级大奶妈,或者把所有提高防御的技能都加在身上成为一个超级坦克,更受欢迎的玩法是挑选比如致命一击、分裂攻击等等被动攻击技能,杀怪如砍瓜切菜。不过这个游戏的平衡不是很好,技能都是《魔兽争霸3》原本所拥有的技能,组合后会产生一些问题。

  之后的一些游戏比如《DOTA》也拥有随机技能的模式,但与“守卫大虾”一样,拥有很多IMBA的技能组合,某些技能的组合甚至会让角色永远不会死掉,这样一来游戏就完全失去了乐趣。

  再后来我一直对这种玩家能够自由搭配技能的游戏感到格外有趣,因为组合的可能性几乎是无穷的。后来我玩了《大航海时代Online》和《EVE》,《大航海时代Online》中玩家能够同时拥有的技能个数有限,因此只能挑选专精于某一个方向的技能,但这游戏有着日式MMO的通病——需要无尽的挂机刷怪练级获取经验。《EVE》与《大航海时代Online》类似,但玩家没有同时拥有技能个数的限制,但它的完全靠时间获取技能等级的玩法使得新手永远追不上老手。《激战》是一个非常出色的游戏,玩家也是可以从好几百种技能库当中挑选技能,但我并没有玩过,虽然很多人认为这是一款神作,但我却认为一款PVP游戏如果完全无法知道对手拥有什么技能,PVP的体验是很差的。

  再后来到了《暗黑破坏神3》,也没能兑现当初承诺的几万种BUILD,实际上可行的BUILD每个职业几乎就只有那么几种。最顶级的职业套装只会强化某个方面的能力,相当于把玩家的后期玩法固定死了,《夺魂之镰》上线后,专门强化某个技能的史诗装备大量出现,更是加重了这一情况。

  后来我玩到了《流亡黯道》,这个游戏将技能组合又上升到了一个新的高度。它最大的特点是,技能的组合并不是机械的组合。上文提到的种种游戏,技能与技能之间都是完全互相独立的,联动关系相当之小,仅限于比如你选了一个火球术,又选了一个暴击被动,然后火球术的暴击就提高了这种水平——也就是说,技能之间要么干脆没有影响,要么仅仅是停留在数值水平的影响。而《流亡黯道》中,技能之间的影响却是机制性的,比如一个火球术一次能够发射一个火球,但选择了分裂攻击后火球术一次就能够发射三枚火球;而如果我选择了范围扩大,火球在命中后爆炸的溅射范围就会变大,如果我选择了穿透,火球会穿透数个敌人后才爆炸……并且,前面提到的这些效果是可以同时存在的!这样一来,单单一个火球术就有了千变万化的效果,更不用说其他的技能了!

1.jpg

  左图是《流亡黯道》中“焚烧”技能原本的效果,右面是在组合了相当多的被动技能之后的效果。以焚烧为核心技能是当前版本中相当热门的一个BUILD。

  这就是文章标题中所提到的“技能组合”部分。那么“标签云”又是什么东西呢?接下来就开始说这部分。

  《流亡黯道》由于技能组合机制过于丰富,因此它为每个技能打上了很多标签。

2.png

  这是《流亡黯道》中一个机制比较复杂的技能,“熔岩打击”。它的效果是对一个目标进行一次近战攻击,并且发射3个落点随机的熔岩球,掉落在地面时对目标点造成范围伤害。我们可以看到,这个技能的关键词是“火,投射物,攻击,AOE,近战”,那么所有对这些标签有加成的被动技能都会对其产生效果。比如多重投射物,技能本身是3个投射物(熔岩球),那么如果玩家使用了“低阶多重投射”,就会变成5个。又由于技能的近战伤害和投射物伤害都是火属性的,因此如果玩家用了“元素武器伤害”也会提高技能的伤害。同时由于熔岩球落地后造成的是AOE伤害,玩家如果有提高AOE半径的被动技能,也会对这个技能产生影响。

  在《流亡黯道》的技能组合机制与标签的基础上,我就想到了现在很常见的“标签云”的做法。玩家往往会组合很多强化某一方面的能力的被动技能,因此如果够类似于“标签云”一样,将最突出的标签用更明显的方式显示出来,会不会变得更有趣呢?

3.png

  这样我们在设计技能的时候,实际上可以从基础的机制的层面上将技能的各个方面抽象出来,成为一系列标签,然后再通过对标签的调整来改变技能的运作效果与数值。上文中提到过的火球,就是这样的:

  • 向前方发射一个火球,遇到敌人后爆炸并造成范围伤害。
  • 标签:火伤害,一般投射物,范围伤害

  每个标签其实都拥有着一系列的属性,比如“火伤害”这个标签可能拥有伤害数值、暴击率、抗性穿透率等等属性,而“投射物”标签会有飞行速度、加速度、生命时长、穿透几率“等等属性。对这些属性进行调整的被动技能都意味着对这个标签有着效果,如果是正面效果会让这个标签显示得更大,如果是负面效果会让这个标签显示的更小。

  这是个比较简单的例子,但是我们可以向其中加入更多的机制,比如:

  • 向前方发射一个不断前行的冰球,不断向四周发射冰锥,伤害路径上的敌人。
  • 标签:冰伤害,一般投射物,持续性,范围伤害,穿透

  没错,这个就是《暗黑破坏神》中的冰封球技能。冰封球本身是个投射物,拥有着投射物本身的诸多特性,除此之外它还会重复地进行发射冰锥的行为,我们姑且把这种重复进行某个事件的机制叫做“循环”,“循环”有着诸多属性,如触发间隔、持续时间等等,我们可以设计一些针对这些属性进行修改的技能,比如发射的频率加快一倍,但持续的时间会缩短一半等等。冰封球本身拥有一定宽度,会对路径上的敌人造成伤害,因此也算作范围伤害。冰封球本身和小冰锥都会穿透敌人,因此拥有“穿透”的标签。同时由于发射出的小冰锥也是投射物,因此如果有着对投射物进行修改的被动技能,会同时影响冰封球和冰锥!

  我们再看一个技能:

  • 发射一个沿着抛物线运动的炸弹,落地后爆炸并造成范围伤害,在飞行的过程中还会不断施放小型炸弹轰炸地面,造成较小的范围伤害。
  • 标签:物理伤害,抛物线投射物,范围伤害,持续性

  这个是《暗黑破坏神3》中恶魔猎人集束箭配上集束炸弹的效果。很多游戏中都会拥有按照抛物线移动的飞弹,一般以弓箭、迫击炮的形式存在于游戏中,在RTS中较为多见,在ARPG中比较少见,因为难以控制。

  再看一个技能:

  • 从天空中坠落一颗陨石,轰击地面,对击中的敌人造成伤害。被陨石击中的地方会陷入火海,在一段时间内对范围内的敌人持续造成火焰伤害。
  • 标签:火焰伤害,范围伤害,持续性,持续性伤害

  这个是《暗黑破坏神3》中法师的陨石术,效果分为两部分:召唤一个陨石轰击范围内的敌人造成伤害,然后轰击点产生一个范围效果,持续造成伤害。两部分都是火焰伤害,都是范围伤害,但第二部分还是持续性伤害。

  这时候我发现了,按照这个思路,实际上大部分依然只是在对数值进行调整,但并没有使得游戏的机制发生变化。如果要使游戏的机制发生变化,需要在更基础的层面模块化各种机制,然后使得能够事情发生质变。比如陨石砸地后的持续性伤害,和冰封球的持续性发射冰锥,有什么区别吗?我们是应该将其视作“持续性”标签的两种情况,还是干脆看成两种标签:持续性发射,和持续性伤害?

  我们可以将所有事件分成三部分来看:发生的时点,产生的效果,被效果影响的目标。

  • 时点:攻击前,攻击,攻击后,命中前,命中,命中后,死亡前,死亡,死亡后,暴击前,暴击,暴击后,周期性开始,周期性循环,周期性结束……
  • 效果:发射飞弹,造成伤害,进行治疗,减速,加速,阻止移动,恢复移动,杀死……
  • 目标:源单位,目标单位,源范围,目标范围

  我们再回过头来看冰封球这个技能。冰封球本身是个一般投射物,这只决定了它的移动方式,以及一些和移动相关的基本属性。它有三个效果:

  • 从自己向外周期性发射飞弹。(周期性循环-源单位-发射飞弹)
  • 周期性地伤害自己周围的敌人。(周期性循环-源范围-造成伤害)
  • 飞行一段时间后摧毁自己。(周期性结束-源单位-杀死)

  它发射出来的飞弹也是一般投射物,也拥有三个效果:
  • 命中敌人时对敌人造成伤害。(命中-目标单位-造成伤害)
  • 命中敌人后摧毁自己。(命中后-源单位-杀死)
  • 飞行一段时间后摧毁自己。(周期性结束-源单位-杀死)

  不难发现,所有的一般飞弹都拥有飞行一段时间后摧毁自己的效果。然后再看恶魔猎人扔炸弹的技能,这个炸弹本身是一个抛物线飞弹,与一般飞弹一样,这也只决定了它的移动方式和移动相关的基本参数。它拥有以下几个效果:

  • 从自己向外周期性发射飞弹。(周期性循环-源单位-发射飞弹)
  • 命中时造成范围伤害。(命中-目标范围-造成伤害)
  • 命中后摧毁自己。(命中后-源单位-杀死)

  类似的,所有的抛物线类飞弹也都有着落地后杀死自己的效果。陨石术的效果特殊一些:

  • 命中时造成范围伤害。(命中-目标范围-造成伤害)
  • 命中时创造一个不会移动的马甲飞弹。(命中-源单位-发射飞弹)
  • 命中后摧毁自己。(命中后-源单位-杀死)

  创造出来的这个不会移动的马甲飞弹有着以下的效果:

  • 周期性地伤害自己周围的敌人。(周期性循环-源范围-造成伤害)
  • 持续一段时间后消失。(周期性结束-源单位-杀死)

  这样我们就用“马甲单位”的方法实现了陨石术的效果。熟悉《魔兽争霸3》编辑器的同学应该对这个伎俩十分了解!

  按照这个架构,我们就可以设计一系列的技能,达到修改技能效果的目的。比如我们想让冰封球在死亡时爆炸发射出更多更多的冰锥,就可以追加以下效果:

  • 死亡前-源单位-发射飞弹。

  这个效果可以追加在所有的飞弹上,这样在这些飞弹死亡时都会再生成一系列的飞弹。再举个例子,假如我们想让一个一般飞弹命中敌人后继续飞行,就可以移除下面这个效果:

  • 命中后-源单位-杀死。

  如果我们想添加一个吸血效果,就可以追加以下效果:

  • 命中后-源单位-治疗。

  我们甚至可以为这些事件的发生再加入一个概率,比如:

  • 命中后-源单位-40%几率-治疗。

  那些必然发生的事件几率为100%,我们可以设置这个几率的最低值如5%。再比如一定几率秒杀敌人:

  • 命中后/周期性循环-目标/目标范围-5%几率-杀死/造成大量伤害。

  如果是范围效果的话,需要决定是一次检定所有目标的成功还是每个目标分别检定。

  大部分比较复杂的效果,我们都可以通过创建“马甲飞弹”的方式来实现。《魔兽争霸3》上的《DOTA》中有相当多的技能都是通过这种方式来实现的。不过小心,由于每个飞弹都是可以继续创造马甲飞弹的,小心死循环。

  有了一套实现技能的基础机制后,就可以提取出其中的共同点来当做标签使用了!我们能够知道冰封球的范围伤害与陨石术马甲单位的范围伤害并没有区别,持续发射飞弹与持续造成伤害也并没有区别,就可以用同样的标签,共享同样的标签修改效果了。

  接下来能够阻挡你的,只有想象力了!



0

主题

48

帖子

278

积分

中级会员

Rank: 3Rank: 3

积分
278
发表于 2014-11-19 19:56:30 | 显示全部楼层
技能天赋的出现,解决了一个问题:
1.以往技能过多,技能选择的模型是一个星型结构(一个个体对应很多技能),导致变化过多、选择困难、学习成本高等等问题出现,设计不平衡还容易出现同质化。这个是一个简单粗暴的解决方案。
2.后来出现了combo技能(第1阶段也有雏形出现,但显然没有结构化的设计),即组合技能,定义上来说就是按一定顺序释放技能会获得更大的收益。但这个只是星型结构的强化版,或者是并行的线性结构,只能通过增加comb类型来增加变化和选择。dota类玩法把这种技能结构发挥到了极致,但也只是通过分散个体、减少个体技能数量来解决学习成本高的问题,也只有多人合作对抗的玩法能充分利用这个结构。
3.之后就是技能天赋的出现了,即固定一定量的技能数,通过改变天赋来改变技能的效果。这类即满足了变化,又减轻了选择的负担,同时降低了学习成本。这类结构好处多多,但是设计起来耦合性太高,职业个体既要满足combo,又要满足变化。设计的不平衡,就会导致出现最优组合,从而导致单职业同质化,这样反而就无法满足变化的需求了。

102

主题

2443

帖子

7639

积分

论坛元老

Rank: 8Rank: 8

积分
7639
发表于 2014-11-19 20:17:01 | 显示全部楼层
本帖最后由 herosone 于 2014-11-19 20:21 编辑

这个是有的,事实上很多游戏都可以,但是对抗游戏这样搞,这得玩死数值了。
假如单机而且数值不平衡还可以。暗黑破坏神3 就是这样的,但事实上比较早的是 GBA 恶魔城 月之轮回 ,还有游戏 晶体管 也差不多。
但是都是单机。
暗黑3的数值还做得可以,这是唯一一个网游。

点评

黑暗3,技能系统的设计本意是很不错的,但具体的技能本身设计却是一坨翔!这是所有玩家有目共睹的事。几百个技里真被玩家使用的还不足1成!  发表于 2014-11-19 21:27
【暗黑3的数值还做得可以,这是唯一一个网游。】---你这是高级黑的暗黑3么?暗黑3数值之烂2,基本上玩过的都知道,你确定自己玩过暗黑3吗?  发表于 2014-11-19 21:25

102

主题

2443

帖子

7639

积分

论坛元老

Rank: 8Rank: 8

积分
7639
发表于 2014-11-19 21:53:03 | 显示全部楼层
我只是说数值可以,没说技能交互可以,当一个设计让大家聚集到几个技能上时,也是一种平衡,接下来就看手速了。

1

主题

24

帖子

147

积分

注册会员

Rank: 2

积分
147
发表于 2014-11-19 23:28:56 来自手机 | 显示全部楼层
我一直渴望看到的内容…谢谢

12

主题

132

帖子

843

积分

高级会员

Rank: 4

积分
843
发表于 2014-11-20 10:06:48 | 显示全部楼层
很有启发,感谢分享。

唯一的问题,就是设计太过于复杂。一般来说,复杂的设计很难做好。所以要是有办法可以再简化,就完美了。

0

主题

66

帖子

387

积分

中级会员

Rank: 3Rank: 3

积分
387
发表于 2014-11-20 10:24:43 | 显示全部楼层
标签云运用最多的难道不是TCG么?

19

主题

131

帖子

1598

积分

金牌会员

Rank: 6Rank: 6

积分
1598
QQ
发表于 2014-11-20 15:23:26 | 显示全部楼层
好贴!受用了

0

主题

8

帖子

56

积分

注册会员

Rank: 2

积分
56
发表于 2014-11-20 16:58:31 | 显示全部楼层
选择越多,越无法继续下去,这个对引导需求太高了

1

主题

85

帖子

558

积分

高级会员

Rank: 4

积分
558
发表于 2014-11-20 19:41:05 | 显示全部楼层
多谢分享!启发很大,但是在程序实现上,这种方式会不会有困难呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-28 08:26

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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