分类
游戏设计

标签云与技能组合

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

我们再看一个技能:

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

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

再看一个技能:

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

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

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

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

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

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

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

它发射出来的飞弹也是一般投射物,也拥有三个效果:

  1. 命中敌人时对敌人造成伤害。(命中-目标单位-造成伤害)
  2. 命中敌人后摧毁自己。(命中后-源单位-杀死)
  3. 飞行一段时间后摧毁自己。(周期性结束-源单位-杀死)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

接下来能够阻挡你的,只有想象力了!(以及计算机的机能限制!)

分类
琐事

游戏设计师的技能

今天是九月的最后一天了,写一篇文章来结束这个月吧!明天开始就是国庆假期了!

游戏设计师需要什么技能?以我目前的理解,大概是“听,看,想,说,写”。遂成此文,以供以后反刍。

听由三方面构成:一要听玩家,二要听团队,三要听自己(这不是我说的,忘记是哪位前辈的博客中写的了)。听玩家很难,因为玩家往往不知道自己真正的需求,要能从玩家的发言中判断出玩家的真正意图、相关的游戏机制以及这种民意是否具有代表性,这是十分重要的。

听团队也很难,很多人都是不会听的,不等别人说完就打断,或者虽然看起来恭恭敬敬地听完了你说话,但其实压根没把团队成员的意见当回事,刚愎自用。一个游戏设计师无论有多么天才,若不能做到虚怀若谷,海纳百川,恐怕成长的空间也就有限了——除非可以完全以一己之力去做独立游戏。

听自己相对之下就简单的多了,每个游戏设计师都有自己想做的游戏,有着自己的设计原则,但之所以把这个放在最后,就是因为听玩家以及听团队往往比听自己更重要,需要在前两者的基础上尽力发挥自己的力量,才能设计出优秀的游戏来。游戏不是一个人做的——除非可以完全以一己之力去做独立游戏。

有两段都以“除非可以完全以一己之力去做独立游戏”结束,这一点也不奇怪。事实上,相当一部分独立游戏的设计师是连玩家的声音都懒得听的,因为他们是以自我为中心进行游戏设计而不是以玩家为核心进行游戏设计的。所以他们只听自己的内心的声音——我们管这种人叫“艺术家”,而把还要听玩家和团队声音的游戏设计师叫“匠人”。典型的“匠气太重”的作品是以敛财为最高宗旨的《暗黑破坏神3》,而不是以为玩家提供体验为宗旨(我又黑了暴雪一把!)。大部分游戏设计师都是介于二者之间的。平衡总是好的,老祖宗留下的中庸之道如是说。

看指的是看什么呢?看同行都在干嘛,看同行都有了什么新鲜的想法,看业界有了哪些新动态,看都出了哪些新作品,这些新作品都有什么值得自己学习的地方。还要看很多书,不管是业内广为流传的经典著作,还是其他一些不相关的书——不相关的东西往往更能激发设计师的灵感。游戏设计师的人生阅历是很重要的,当没有时间或经济能力去丰富阅历的时候,读书就是最好的选择了。

虽然说起来很容易,但做起来每天都要花不少时间。不管是通过订阅新闻,浏览博客还是什么方式,总之要掌握业界的动态,而且还要不断的进行自我提高,因为这是一个逆水行舟不进则退的行业。游戏设计师是没有退休这一说的,只有退出。养成习惯做到干一行爱一行,这些就成为自然而然的了。做不到的话就强迫自己这么做,人的习惯只需要21天就能养成,Fake it till you become it!

毫无疑问,游戏设计师是一个动脑多于动手的职业。游戏设计师是开发团队中对游戏机制最为了解的人,若其他成员对游戏有任何疑问,都会来询问你,如果答不上,那就很糟糕。或者游戏存在着某些问题,却是由其他成员最先察觉,而游戏设计师却没能考虑到这一点,也算是失职——即便暂时没有解决方案,游戏设计师对于游戏存在的问题也是必须心中有数的,否则改良是无从谈起的。发现问题是开始尝试解决问题的前提。

除了解决问题以外,游戏设计的过程以及试玩原型时如何把握游戏修改的方向,这也都是靠想的。设计关卡,设计公式和数值,设计角色,设计游戏世界……这些都要靠想,不但要求逻辑能力,也要求美学素养,因为游戏设计师要同时与左脑发达的程序以及右脑发达的美术进行协作。这是游戏设计师的基本功,几乎所有关于游戏设计的书都在用最主要的篇幅说这一部分,因此不再赘述,宗旨就是想明白什么样的游戏体验才是最优秀的。

说人人都会,可要说好很难。一方面要能表达得清楚,让对方明确知道自己的意思,另一方面则要会说话,让对方能听得进去自己说的话——就像上面说的听一样,要记住话是说给别人听的。然而整天在网上胡乱吹水聊天,只是一种浪费时间的行为,国内有大量的游戏设计师只会吹牛逼。有很多前辈不断强调设计师作为团队中沟通者的重要性,其实也就是在听和说。团队越大,听和说也就越重要——不要成为那些事事都写邮件的人,有话当面说,别浪费时间。

笔者由于长年的阿宅生活,相当内向,好处是善于思考和分析,坏处则是沟通能力很差,因而这方面十分需要提高。

写也是比较重要的,但这是可以习得的技能,任何至少高中毕业的人在这方面的基本能力已经不成问题了,只要掌握了开发流程后自然就能写出像样的文档来。

如果想和说都过关了,写基本也就没问题了。我认为,写只不过是说的辅助,与人沟通的最佳方式依然是说,除非是很大的东西说不完需要书面的资料辅助,或者需要书面记录以方便以后的查询。不要成为案牍主义者,除非公司要求你这么做。那样太死板了,而且效率低下。

好了,基本就这么多了。祝大家国庆节快乐!:)