开端

我在初三时开始接触英魂之刃这款MOBA游戏,各种各样的英雄和有趣多变的英雄自然是给了第一次接触这种类型游戏的我留下了很深刻的印象,玩了一段时间后关注了贴吧,每天就在里面看各路大神和水友们发帖,直到有一天刷到了一篇自制英雄的帖子,大致内容就是楼主用文字的形式描述了自己心目中的英雄,当时只觉得很有意思,但也只是匆匆划过,没有下文

事实上直到今天有相当一部分的玩家对于自制英雄有相当大的热情:

2020年12月4日,《英魂之刃口袋版》举办新英雄设计大赛,邀请玩家发挥脑洞,一起参与MOBA英雄设计。活动开启后,许多玩家在英魂社区踊跃分享自己的创意和灵感,讨论互动。历时20余天,大赛累计收到投稿超过3000份,最终筛选出16个入围作品与50个优秀作品。

最近又在玩流放之路,其中主动技能宝石 + 被动技能宝石的设定极大丰富了各种技能之间的搭配种类,仔细思考可以搭配出很有意思的技能

回想起大学的时候玩过的恐怖黎明,虽然技能的可定制化程度不如流放之路,但通过星座信仰对职业架构进行补全的设定也是有自定义技能的味道在里面的

从上面的这几个例子,可以看到很多玩家对于自定义这个行为有相当大的热情,因为自己创造的东西在游戏里得到应用(成功打怪升级,提升游戏体验)获得的成就感能让人感到愉悦,那似乎我们可以以DIY为出发点,对整个游戏的Gameplay玩法进行架构

分析

接下来,我将按照自定义自由度由低到高的顺序分析多个游戏,看是否能得到一些启示和经验

DOTA2——OMG模式

即允许玩家从已有的技能库中进行技能选择,从而组合出自己的英雄

image-20220604203546636

这个模式的乐趣在于,由于各个技能在设计时只是基于原生英雄架构进行的,所以很多技能在进行组合时会发生奇妙的化学反应

举一个比较恶心的BD为例

  • 瘴气:沿直线射出一个毒液球,碰到的敌人受到初始伤害和持续伤害,并受到减速效果影响。瘴气在持续时间内每3秒造成一次持续伤害。
  • 毒刺:在剧毒术士的普通攻击中加入毒性伤害,可以减缓敌人的移动速度,并降低其生命恢复效果。
  • 瘟疫守卫:召唤一个瘟疫守卫来攻击敌方单位和建筑。守卫对魔法免疫。守卫拥有毒刺攻击,效果与毒刺技能的当前等级相同,造成50%的原技能伤害。
  • 邪能:一个单位每次受到戴泽法术的作用后都会暂时获得/失去护甲。可以主动施放,根据他们身上的能量点数数量对其产生治疗/造成物理伤害。

前三个技能是剧毒术士原生技能,而邪能是戴泽的技能,借助瘴气和毒刺的持续伤害,持续触发邪能被动,从而获取超额的伤害收益,被很多玩家戏称为真正的剧毒术士

恐怖黎明——星座信仰系统

恐怖黎明技能拓展思路也很简单,通过星座信仰专精绑定职业技能的方式来进行额外技能释放,说白了就是在释放技能时再额外释放另一个技能

image-20220604210202264

流放之路——技能宝石系统

可以概括为主动宝石 + 辅助宝石 + 装备孔镶嵌集合成的一个灵活的技能系统

比如同一件装备镶嵌上双重打击(主动)+ 多重打击(辅助)就可以让双重打击技能额外多出一个目标

image-20220604213514452

image-20220604213445963

如果再加上一个先祖召唤,就可以再额外多出两个技能目标

image-20220604213712460

接下来将这三个宝石同时镶嵌到一件装备的宝石孔上即可

image-20220604213828431

需要注意的是,每个宝石之间必须要有一个可联通的图结构,这样才能使每个宝石功能都正常

至此,我们最开始的双重打击技能已经从一个单体伤害技能变为了一个群体伤害技能,这是质的改变

流放之路中有百多个技能宝石,各种技能BD灵活度可想而知,这也是流放经久不衰的重要原因之一

原石计划——Mod开发

算是比较经典的基于配置的Mod开发,作者提供了一个配置表编辑器,可以进行相当多功能的开发

image-20220604212350098

如果要做一个中大型的独立Mod,则需要基于Unity引擎进行场景搭建和相关功能开发

决战平安京——Unit技能编辑器

决战平安京提供了一个独立的技能编辑器,玩家可以自己制作技能

image-20220604214342040

image-20220604215804000

支持各种事件调度,从技能开始释放,到技能作用到目标身上的每一个流程都是可以定制的,真正意义上的从零开始制作一个新技能

比如我想制作这样一个技能:技能会在目标区域释放一次雷击,对区域内所有敌人造成魔法伤害,并叠加一层感电效果,每层感电效果会使敌人收到的魔法伤害提升10%,冷却时间为3s。制作这个技能所需要的原子信息很多,其中有目标敌人,目标敌人身上感电Buff层数,冷却时间,指定大小的区域选择指示器等,而这些原子信息是前面几个游戏技能拓展机制完全没有提供的

这种方式制作的技能带来的自由度就不是前面几种组合技能所能比拟的了,但相应地上手难度和学习成本极高,一般只有专业游戏策划以及小部分玩家可以玩的明白

DOTA——事件编辑器

魔兽世界的地图编辑器是非常出名的,DOTA就是使用魔兽世界的地图编辑器做出来的,具体的每个英雄技能则是使用触发编辑器制作的,界面如下图

image-20220604225206737

可以看到相较于平安京的技能编辑器,这个事件编辑器更加的不友好,对用户的逻辑思维能力和代码能力要求更高,但相应地,他也能提供给用户技能创造时更高的自由度。比如可以控制碰撞体的行为(击中敌人后分裂成两个弹体,呈180度夹角各自飞行出去)

DOTA2——基于lua进行拓展的技能系统

DOTA2的编辑器更不用说了,可以直接让用户直接上手写lua代码来调用DOTA2的API以及书写自己的逻辑代码

img

总结

从上面的几种游戏拓展方案可以得到下图所示的规律:游戏给予玩家的拓展自由度越高,玩家所需要承受的学习成本就越高,从而导致能真正亲自进行创作的玩家数量就更少,最终导致绝大部分玩家依仗于极小部分玩家的内容创作进行游戏,当然这也不能一概论为坏事,毕竟DOTA2游廊和DOTA的地图普通玩家们玩的不也是挺开心吗。当然了,如果一个游戏的核心就在于玩家自己的创造性,那么过高的拓展自由度(复杂度)就会是一场灾难

出于能让更多玩家感受到技能创造的乐趣,游戏将自身定位到了下图位置:

至于如何做到在保证足够自由度的同时将复杂度降到很低的方案,且听下文娓娓道来

设计

上文分析了市面上常见的几种游戏拓展类型,并给出了一个游戏给予用户的可拓展性对于用户体验的影响关系图,并且确定了本游戏的定位,下文便仔细谈谈我们这款游戏的设计理念

游戏类型

游戏类型大方向定位为技能创造 + PC单机 + 3D开放世界 + 类暗黑的RPG + 古玄幻

技能创造

技能创造为游戏的核心玩法,玩家可以在游戏中发挥自己的奇思妙想来使用游戏提供的技能原子创造自己的技能,然后使用自己创造的技能大杀四方,无往而不利

PC单机

游戏计划只支持PC平台,因为PC平台可以获得最高的制作自由度,而不用过多担心各种跨平台和性能内存问题,非常适合独立游戏的开发环境

自然不必多说,独立游戏如果一上来就将重心放在网络上,由于用户量和社区的原因很容易加速游戏的衰亡,甚至开放下载之日即为暴毙之时

此外主打的技能创造玩法由于其独特的性质,技能花样和霸道程度完全取决于玩家的奇思妙想程度,开放网络对战平衡性把控是一个大难题,而单机其实就不需要考虑这么多,只需要平衡好怪物强度和玩家技能库强度即可

当然,如果游戏用户量和反响都不错的话,开放组队副本和PVP也不是不可以,不过这也是后话了

3D开放世界

之所以选择3D开放世界,原因有三

  • 方便构筑自己的架空世界观,利于游戏内容的产出与推进
  • 方便散落各种有趣的随机事件,能给予玩家最大的探索自由度,从而提高玩家的沉浸感和游戏体验
  • 3D游戏在立体和写实画面的表现力以及氛围营造上比2D游戏强得多

但开放世界并不意味着无缝大世界,无缝大世界也并不意味着开放世界,一个游戏如果为开放世界,则至少应该包含以下一点或多点:

  • 玩家所做出的选择是否会对游戏世界产生影响
  • 玩家是否能在任何阶段想去哪就去哪

除此之外,皆为开放世界的附加产物

类暗黑RPG

准备选用类似恐怖黎明的第三人称俯视角,并且是固定视角,这样可以规避很多美术资源上的缺陷,例如模型精度,动画精度,特效精度,贴图精度等,并且可以对渲染做许多trick来提高性能表现

除此之外,由于技能创造的需求存在,所以无论如何动画和特效都做不到技能匹配的,这也是选择俯视角的一大原因

为了迎合技能创造的核心玩法,大量怪物和强力Boss无疑是玩家DIY技能最好的试炼场

考虑到独立游戏资源成本的限制,游戏将采用离线PCG的方式做整个游戏世界的生成

古玄幻

先阐述下我认为的古玄幻世界:一个由魔法,武技,斗技组成的古代玄幻世界,有人白衣飘飘御剑飞行,有人一身劲装踏空而行,还有人撕裂空间瞬间移动,各大宗派明里暗里,永无休止的竞争。举例的话就是各种玄幻小说里描述的世界,比如《斗破苍穹》,《武动乾坤》,《斗罗大陆》这几个大家耳熟能详的玄幻小说作品

之所以选择古玄幻这一类型,有以下几个原因:

  • 它可以给予游戏内容设计最大的自由度,毕竟魔法,御剑飞行,强大的巨龙都是合理存在的,还有什么是不可能的呢?
  • 架空的世界观不要求对历史有什么考证,独立游戏一般也没有这么多精力能浪费在这些内容上面,点名表扬《黑神话悟空》,能对中国古神话和传统文化研究到这种程度

目标用户画像

因为既定了游戏的核心玩法是技能创造 + 清图刷怪,所以目标用户也很明确:

  • 暗黑类玩家
  • 爱好研究技能BD玩家
  • 古玄幻小说粉丝
  • 开放世界玩家

Gameplay

技能创造形式

上文提到项目的核心玩法就是技能创造 + 清图刷怪,具体来说就是在游戏内内置一个经过高度简化的带UI的技能编辑器(基于FGUI制作),玩家可以在这个技能编辑器里实时制造技能,并预览技能效果

既然要赋予玩家制作技能的能力,就需要一种相当简洁直观,但又十分强大的编辑方案。

在对比FSM和行为树后,暂定为简化版事件驱动行为树的样式,这是因为FSM虽然看起来更加的简单直观,但是在应对本项目的需求时会显得力不从心,因为我们永远无法预料那些天马行空的玩家会连出何等复杂,怪诞的技能图,在这种情况下,FSM已经因为各种循环调用和跳转变得一团糟,而自带规范格式的行为树无疑能给玩家提供更高的制作自由度上限

image-20220622225942421

由于行为树本身运行逻辑的复杂性,其界面与提示友好度至少要达到UE4行为树的标准才可能被玩家所接受

  • 执行顺序清晰明了,带序号提示
  • 界面扁平化,美观大方

image-20220622220512764

至于运行流程则进行更大程度的裁剪和简化,只保留几个必须的逻辑控制节点和行为节点(玩家进行技能创造逻辑大部分都位于行为节点中),即

  • 选择节点
  • 队列节点
  • 并行节点
  • 行为节点
  • 黑板条件节点

尽可能减少玩家的心智负担

技能节点设计

所有基础节点的设计和联系如下图所示

玩家基于这些基础节点,在行为树里进行组合,从而创造出一个全新的技能

目前整个技能创造系统的粒度就是这样,在后续实践过程中会不断地抽象,总结,尽可能简化这个模型

表现资源封装制作

上图的节点设计包含了逻辑层和表现层,对于逻辑层制作来说还是比较简单的,毕竟只需要在行为树里连连线即可,对于表现层来说则更加复杂一些,需要做好各种预制

动画

动画应该是最不需要操心的模块,借助Animancer插件我们可以通过一个Action节点来任意切换动画

特效

利用Unity的Particel system和VFX封装特效,然后通过一个播放特效Action节点或者播放特效Buff节点来进行播放

音效

封装预制体,直接利用Unity的Audio系统进行播放即可

技能创造示例

这里随机选取3位DOTA2英雄,使用这个技能创造系统对他们的技能进行蓝图复刻,以让大家更好的理解技能创造框架

玛西

  1. 玛西抓起一个友方或敌方目标,将其轻松地向她身后摔去,敌方目标将受到伤害并被眩晕。落地区域内所有敌方单位也会受到伤害并被眩晕。
  2. 以矢量为目标。玛西跃向目标友军,选好她要弹离的方向和距离。到达目标后玛西冲向最终的目的地,对区域内敌人造成伤害和减速。
    友军将获得45%移动速度加成,持续5秒。
  3. 玛西的忠诚保证了她的安全,为选定的友方英雄和她自身注入了吸血效果和攻击力加成。
  4. 玛西释放潜藏的力量,获得狂怒的能量点数,使自身可以发动快速的打击。每次狂怒连技的最后一击都会创造一个脉冲效果,对目标周围的敌人造成伤害,并降低移动速度和攻击速度,持续2秒。在狂怒连技的间隔,玛西无法攻击,持续1.75秒。
    玛西施放怒拳破时获得弱驱散效果,并且移动速度提升15%。

image-20220626000623316

image-20220626000653144

编织者

  1. 编织者放出12只编织者幼虫,每只幼虫都会紧紧缠住它遇到的敌人,攻击敌人并削弱他们的护甲,直到幼虫被杀死。
  2. 编织者进入隐身,获得最高移动速度,在穿过敌方单位时还将造成伤害。
  3. 允许编织者立刻发动两次攻击。
  4. 编织者回到五秒前的时间点,获得当时的生命值和魔法值。不影响冷却时间、金钱和经验。

image-20220626000528973

image-20220626000542429

image-20220626000553530

水晶室女

  1. 破坏性的冰霜爆发,降低目标区域内的敌人的移动和攻击攻速。
  2. 操控冰霜包围一个敌方单位,禁止移动和攻击,并造成持续伤害。对6级以下的普通单位施放将产生10.25秒的持续时间。
  3. 地图上所有友方单位获得额外魔法恢复。水晶室女自身获得更高的加成效果。水晶室女每次施放技能都会使1200范围内所有友方单位恢复若干魔法。
  4. 以水晶室女为中心召唤100次冰爆轰炸敌人,将其减速并造成大量伤害。持续施法期间提供护甲加成。持续10秒。

image-20220626000709066

image-20220626000722425

image-20220626000737062

可以看到,借助行为树本身图灵完备的特性外加我们提前封装好的功能节点(上面流程图里的技能组件节点),我们可以实现几乎任何技能类型,实际上编织者的技能也可以实现,只需要每隔1s把生命值和魔力值存储到黑板中,当释放技能时强制将黑板值内容赋值给生命和魔法属性即可,只是这种行为太过危险,很容易导出意料之外的情况出现,所以不考虑提供相关的节点功能封装支持

装备系统

作为一个类暗黑的游戏,没有装备掉落是说不过去的,毕竟没有谁能抵挡传奇装备掉落时那种欣喜,那种狂欢的感觉,在ProjectS中,装备不仅仅可以强化角色的属性,还有一些其他重要的作用

装备系统其实是对整个技能创造系统的收敛,即对玩家创造技能上限进行限制。

无脑的为技能填充强力属性和效果一开始很有意思,睥睨天下,唯我独尊的感觉很棒,但过了一段时间后,这如同开挂一般获取的游戏体验会让玩家迅速对游戏失去兴致,所以需要对其进行限制,限制分为两大类:

  • 技能数量限制,通过固定的装备槽数量(手套,鞋子,衣服,指环,头盔,项链,腰带)来限制技能的数量
  • 技能内容限制,通过装备自身的强度来限制技能内容,比如白色品质手套只能制作非常简单的技能,而橙色品质的手套就可以给予玩家更高的制作自由度

装备系统除了有限制玩家技能创造的功能外,还扮演了一个很重要的角色,那就是弱引导,渐进式的新手入门教程,让玩家从一开始就接触技能创造的概念,然后从最简单的版本开始学起,一点点了解到整个技能创造系统的全貌,最后到达随心所欲创造技能的阶段,正式享受游戏

技能商店

其实不管再怎么进行简化,不可否认的是,这套技能创造机制是有一定门槛的,很多玩家并不会,或者说想要学习,又或者懒得去进行技能创造,而仅仅想体验游戏世界。

对于这种情况,准备了两种应对策略

  • 游戏内置多套技能模板
  • 由玩家将自己制作的技能上传到Steam Mod商城,有需要的玩家可以自行进行下载体验。这种Mod共享的形式既免去了玩家们自己制作技能的烦恼,也可以学习其他玩家技能创造的思路和方法,然后创造属于自己的技能,还能一定程度上增强社区的活跃度,有利于游戏的推广

故事架构

待补充

美术风格

冷色调 + 偏暗淡 + PBR的美术风格

之所以选择这种偏成人向的风格是因为这契合我心中的那个异界,冷酷,无情,但也并不是黑魂,只狼那种程度的黑暗,是淡淡的,但又挥之不去的那种黑暗,可以给整部作品定下淡淡悲伤的基调

“这个世界是黑暗的,但又不全是黑暗的”,有破败苍凉的黄土地,也有桃花开满山的人间仙境,有熔岩四溅的炎热火山,也有白雪纷飞的刺骨冰域,有肮脏恶臭的泥泞沼泽,也有清澈见底的静谧湖泊,有干枯可怖的古怪森林,也有红似火,叶落满地的秋枫树林

最后选择了PBR这一看似代价高昂的美术管线方案,实则不然,恰恰因为PBR的规范性(虽然很多细节都有实现差异,但是大方向都是物理正确),所以制作,搜集,整理美术资源才更加容易,并且现在很多DCC软件都支持标准的PBR流程,制作起来相对方便。反观业内当前相当流行的纯NPR或者NPR + PBR的美术制作管线,对于资源的要求相当严格,定制化从顶点色到建模拉线细节到贴图UV各种奇淫技巧无处不在,相较于PBR管线,想要获得项目可用的美术资源成本更高