写在前面
众所周知,游戏数值是要依赖于游戏本身的设计的。没有游戏设计的数值设计不过是纸上谈兵。这段时间我也在思索这个问题。大家也知道我最近一直在做的MMORPG学习项目,这个项目中还是很多需要设计的内容,因此也用这个项目来和大家一起完成这样一款MMORPG游戏的数值设计过程吧!
项目已经开源在github上,欢迎小伙伴们star
我们数值设计的部分,放在设计
目录下的数值设定
目录下,如下图所示:
所以某种意义上,这依然是MMORPG开发日志的一部分,只不过我将其发布在了讲述游戏策划
的这个专栏里。
P.S.1距离上一篇文章的发布时间,已经快过去两周了。没办法,上周周末的两天都赶上了加班,我也是十分疲惫。不过已经有小伙伴在评论区催更了,虽然不是很暴力,但还是提醒了我。既然还有小伙伴盼望着咱能把“等级”这个概念聊完,那咱们就这一篇做一个完结吧!
P.S.2这篇关于“等级”的探讨,大家互动的要比往期频繁很多,也说明得到了各位游戏策划从业者,游戏开发人员的共鸣。
理解产出效率
我们先举个例子,让大家更方便理解产出效率的概念。
我们就得出每一级需要击杀的怪物数量:
假设每只怪提供的经验值10点,那么我们就得出了经验值曲线:
P.S.这里我们通过floor函数对得出的经验值最后一位进行了圆整,这也是数值策划的基本职业素养,就是对数值有一定的“美感”追求。
这一切看起来合情合理,但却忽略了一个问题,随着角色成长,怪物难度应该是随之提升的。那么是什么驱动玩家选择击杀高级怪物而不是停留在原地?答案显而易见,高级别怪物在奖励上更优,或者说,高级别的怪产出更多经验值,提高了升级效率。
于是我们假设每一级怪物提供的经验值都比上一级提高了10%。那么这个表格就变为如下图所示:
当然,每级经验值比上一级提高10%只是我们临时起意的做法,换句话说就是这个数值是我们“拍”的。数值策划的工作中有大量的需要“拍数值”的时刻,这种时候通常要依赖于数值策划自身的过往经验。但拍的数值即使不准确也不会造成大问题,因为这些数据都是会在之后经过多次调整的。我们叫它“调整参数”
这次看起来应该好很多了吧?但是我们还是忽视了一个问题。我们说“杀怪效率”时候单纯考虑经验值数量是不严谨的,还需要考虑击杀怪物时间,假设1级怪10秒钟10点经验,2级怪物20秒钟15点经验,那我们依然会选择击杀低级怪物。换句话说,玩家的行为是受“效率”驱动的,而非奖励数值本身(这不废话么)。
跨级杀怪的奖惩机制
上一节中所说的问题,首先要看游戏想要达到的效果。
假设我们不希望玩家产生跨级击杀怪物的现象,就需要对跨级击杀怪物产生的经验值进行衰减,这个机制很简单,比如,与角色等级差3级80%经验,5级60%经验,10级0%经验等等。
只需要简单的提供一套类似的机制,就可以告别这种风险的困扰。
但这个机制的添加不是为了让游戏更有趣味性,而是让游戏更可用,让玩家不至于做出预期之外的事。
从这个例子我们也不难发现,数值并非万能的,数值只有和游戏机制相辅相成,才能制作出符合预期且足够有趣的游戏内容。
任务获得经验
说完了基础的刷怪奖励,就到了我们游戏中最关键的任务奖励部分。
在一款RPG游戏中,任务系统是作为游戏中举足轻重的“核心系统”之一而存在的。优秀的任务设计起到了交代剧情、引导功能教学、引导玩家熟悉游戏内容等作用。
关于任务系统的设计制作,任务内容的设计我们可以单独用一篇文章讲解(我才不说,这样我就又能水一期文章了)。
这里我们只讨论任务奖励,为了更好地讨论任务,我们新建一个设计表:
通常一个游戏中主线任务奖励是获取经验值的最主要途径。为什么?正如我上文中所说的,游戏中的任务系统起到了交代剧情(增强代入感)和引导教学的设计目的,因此我们可以假定其为游戏前中期最主要的内容。同时,在玩家满级前(也就是前中期),玩家的最主要精力都在于如何提高升级效率上。这便给了两者结合的契机。
通常我们会根据任务的难易程度为一个任务分类。假设我们任务类型包括如下几类:
- 对话或送货
- 杀怪(或收集道具)
- 杀精英怪
- 副本杀怪
- 副本杀BOSS
这几种任务类型我们根据直觉的难易程度进行了划分,然后我们分别给不同任务一个难度系数,这个系数影响了最终获得的经验值数值。
除开难度系数以外,我们再考虑下还有哪些因素会影响任务最重奖励的经验值?结合上文中我们提到的杀怪效率,我们不难猜出时间、等级这两个量化参数。
所以我们假设等级表如下图所示
这时候问题来了,我们随手拍的数值有很大问题。我们预期时间的总值已经超过了1小时,而预期等级都是1级,1级的时间只有15分钟左右,那么怎么办呢?我们根据任务的先后顺序排序任务并重新分配时间,并列的任务则按照难度系数排列(我们假定玩家优先完成难度系数高的,因为难度系数高的通常也是效率最高的)。
这里我们简单的将难度系数和效率系数划等号,我们就得到了当前等级不同任务所占时间表如下图所示:
这其中任务时间占比是一个配置的参数,我们这里都假定为100%(玩家的经验全部来源于任务,但我们知道实际游戏中并非如此,这是我们根据游戏中实际体验进行调整)。为了方便调配,我们回到之前的任务表中,并且添加一列“剩余时间”用作我们在给任务做预期时间时的参考,这个剩余时间和我们等级表中的剩余时间是一致的。
这样做的前提是我们对于每一级的时间分配是有预期的,并且任务应该是过剩的,当然,另一种常见做法是支线任务过剩,并且主线任务在某个时间点突然出现空隙,导致玩家不得不进行各种支线活动,来达到下一步主线任务的需求(比如等级需求)。相信各位小伙伴也不陌生。
因为基础效率随等级提升,因此不同任务的效率也在提升,这就得出了最终的实际经验效率
有了时间和实际经验效率,就得出了实际经验值,如下图所示:
然后我们回到任务表中,根据任务类型、等级和时间,就得出了任务奖励的经验值数值
任务等级
既然等级是我们这个RPG世界中描述时间的唯一参考系,那么任务和杀怪这两种获得经验的形式就同样存在跨级问题,正如我们上文中所说的,我们假定任务是过剩的,那么为了防止玩家没有按照我们预期的去完成高等级任务(或者说和自己等级相匹配的任务)。我们依然可以采用任务等级添加一个衰减系数的形式来投放实际的经验奖励数值。这部分就不详细讨论了。
组队经验分配
除开跨级获取经验的问题以外,另一个值得注意的就是组队经验分配问题了。
首先说任务,通常我们不会给任务奖励还甚至分配,因为任务本身就是分配的。玩家组队本身就会让任务更容易完成,因此任务奖励是每个个体独立的。
但如果一个游戏中,杀怪是经验的主要获取途径的话,就要考虑分配问题,如果经验值只分配给实际击杀(或通过其他方式判断的)队伍中的某个人,就导致玩家组队意愿降低。作为MMORPG,我们是鼓励玩家组队的,因此我们要做些手段来避免这种我们不愿看到的情况出现。
通常,我们会将击杀怪物获得的经验给一定范围内的队伍成员平分,但这种平分本身并不能起到鼓励作用,或者说当人数上升时反而产生效率降低的错觉,因此我们根据人数为其添加一个分配系数,在平分的基础上获得更多经验,也就是说在多人组队情况下,大家获得的经验值总和是比怪物实际产生的经验值多的。
写在最后
至此,关于等级我想分享的内容就这些了。其实游戏设计,特别是游戏数值设计,更多时候依靠的是经验或者说感受,而非学识。因此方法并非是唯一的,大家根据自己的项目实际情况变通,甚至总结一套自己的方法论才是最好的。
授人以鱼不如授人以渔。至此关于等级和经验值我能分享的内容就全部结束了,十分希望能抛砖引玉,大家更多的讨论才能总结更多设计上的理论与技巧,为游戏行业添砖加瓦,哈哈。
我是老李,一个做游戏的,除了游戏不会别的。
我们下篇文章再见吧!