« 不那么随机的随机数列 | 返回首页 | 那些日子(一) »

游戏数值公式的表象与本质

周末、睡的比较晚,起的也比较晚。总的来说比平常睡眠时间长一些,所以到了这周一的第一个小时,我还是全无睡意。随便写点什么,关于游戏的,关于游戏设计方面的东西。

鉴于我在游戏设计领域还没有什么建树,远不如游戏程序设计方面有发言权。甚至对游戏设计说三道四的话,还不如在软件开发上乱侃几句有分量。在下充其量也就是个没吃过猪肉天天能见着猪跑的家伙,如果有猪肉已经吃腻味的方家读到这里,请一笑了之,别跟我一般见识。

本来在本文成文前打的腹稿中想举出些实际的例子来,可是发现怎么都会或多或少的得罪圈子内的策划朋友。罢了,只说些空话好了,算我做了半个月游戏数值,闲暇时发的点牢骚。

从为我们的游戏设定角色基础属性,以及设计战斗伤害的计算公式开始。

计算机里的一切问题都是数学问题。

这句话可能不太确切,但是目前一切利用计算机解决的问题,都必须先表达成数学形式,我想没有太多人会有意见。计算机游戏本质上也是一段交给计算机运行的程序,必须先转化成数学形式。这个转换过程无论是交给游戏策划来做还是给程序员来做,都无可避免。

转换的过程必然有损于原始设计初衷;策划做的时候往往不太能掌握数学语言,有失准确;而程序员总是刻板的追求形式上的统一,而失去细节(神韵?)。大多数人都趋向于游戏的表象而忽略本质,这不单是某一个人或某一类人常犯的错误。

扯点时间久远点的例子。我们知道中国人比古希腊人更早发现了勾股定理,但是西方人依旧把直角三角形直角边的平方和等于斜边的平方称为毕达哥拉斯定理。

杨辉三角形为每个程序员所熟知(大部分编程入门教材上都会用这个做编程习题),但是数学上,我们用的更多的对应名词是牛顿二项式定理,虽然中国人早了至少 300 年发现它。

抛开民族自豪感这些东西,当我们仔细比较上面两个例子中前后两者对同一数学定理的见解,我们会发现,它们其实是表象和本质的差别。只有我们用演绎的方法证明理解数学定理时,才能看透本质,并做出推广。摆脱事物的表象,用符号工具单纯的研究他们之间的关系,正是我们许多人思维中缺失的能力。

在我很小的时候,读数学科普读物。曾经嘲笑过毕达哥拉斯因为不能理解无理数而杀死他的学生;也没觉得负数是一个了不起的发现,而欧洲的数学家到 16 世界还不承认它。

直到中学时,接触到复数的概念,才觉得数学的神奇。然后回过头来思考,为什么一个小的数字减一个大的数字的结果是负数?负数到底是什么?问这些个问题时,我才明白,绝对不能轻视古人。看清事物的数学本质是件多么不容易的事情。明白自己其实什么都不懂只是一个开始。

扯远了,还是谈游戏。

拿魔兽世界(后面全简写作 wow )举例说事,恐怕是唯一不容易遭人非议的了。我们注意到, wow 之前有很多网络游戏,甚至暴雪之前也有一款很接近现代网游的游戏—— diablo 的 battle net 版,都采用了一种让玩家展现个性化角色的设计。那就是随着升级,为角色自由分配属性点,再由属性点影响角色的能力。

我可以举出长长的例子证明这一点,甚至电脑 RPG 的鼻祖,D&D ,也是有自由加点的设定的。虽然 D&D 里玩家可以加的点很少,暴雪在 diablo 里加强了这个设计。

为什么在这么多已有的网游中,大家都沿袭了这个设定,把它作为提供玩家个性化的必要手段时,暴雪绝然抛弃了它,把个性化转移到了天赋系统中。是为了创新吗?我不是暴雪的游戏设计师,我没有答案。但我们知道,暴雪从来不是一个以创新为名的游戏制作公司。而天赋树从外观上看,就是 diablo 中技能树的延续。

熟悉 wow 的玩家可能会说,是为了平衡。没错,但这是表象。我们需要进一步看清本质。

前段试玩了一个新出的网游,工作需要。可能是我已经厌倦了 wow ,对 wow like 的东西更提不起精神来。我试图说服自己,我觉得这个游戏比 wow 还无趣,是因为早先年打 wow 打累了。一丁点不如 wow 的地方都会被放大来看,甚至比 wow 做的好的,也会被忽略掉。

在公式化的游戏进程里,我玩到了游戏设计者“体贴”玩家的地方,比如升级飞快,轻松的接交任务等等。但是让我能理解,又觉得不可理喻的地方是,游戏依然保留着“传统”MMORPG 的设定,那就是每次升级都可以自由分配属性点。

亲身体验后,更加坚定了我的想法:自由分配属性点在大多数游戏中是一个极其鸡肋的设定。

或许是大部分游戏设计师认为,我们要提供给玩家一些自由度,而用户接受了自由加点这个设定,那么这就是一个廉价稳定的方案,我们也要提供它,没什么坏处,不是吗?

其实,大多数用户根本不知道他们真的需要什么,只是服务提供商对他们反复强化一些东西,这些东西反过来才成了必须品。在软件行业中,这样的例子比比皆是。“不要听用户的”是我去年听到的深合我意的一个声音。当然,千万不要曲解这句话。我从来没有否认过,用户调查,市场分析,等等这些对于游戏开发的重要性。

作为游戏设计人,我们到底想提供给用户多少自由度,怎样的自由度,这些都必须在设计时考虑在内。我们不是神,可以创造出简洁的自然法则构建出如此复杂的世界,任其发展。而且上百亿年了,其中的智能生物都无法完全了解这些规则。

说回属性点自由分配的设计,看似自由,比如一个小角色从1 级到满级可能得到上十点甚至上百点自由分配组合在 4 到 6 个不同的属性上。实际上,真正有用的组合方式寥寥无几。有天真的设计师,指望玩家可以摸索出超出自己想象的自由属性点组合方案吗?如果真的出现了,那么对游戏平衡一定是一个灾难。

如果你有信心对你没有预料到的东西做出合理的判断(不至于引起灾难),那么只有一种可能,那就是你做出了数值背后更深层次的规律的探索。可惜,大部分设计师没有这么做。

总结一下。如果你给了玩家一些自由度,让他们自由组合一些东西,达到个性化的目的,那么在设计阶段,作为设计师的你,就一定要全面列出所有的组合可能,并一一对其审视。

几十上百个的属性点自由分配的组合方案,从绝对数字上说实在是太大了。没有人会一一排到纸上演算。实际上也没有这个必要,因为大多数组合间是有规律的,不至于把量变堆积为质变。大量的组合方案在对玩家来说都是无意义的,没有人会那么组合,除非他犯错误,否则一定能找到一个达到他期望目的(PvP PvE 或者别的目的)的更优解。

从我信奉的 KISS 哲学上看,允许这么多理论上的属性点组合方案本身就是一个错误。如果我们希望玩家有 10 种个性化方案,就应该用最少的元素提供出 10 种这个数量级的变化规则。而不是提供上千种,让玩家从中选出 10 种。网络游戏中,提供自由度而存在的规则和设定不是为了考验玩家的智力(有时连智力都不需要,只需要机械性的忍受力)而存在的。

我相信很多人在接触一款新游戏时,都有过和我一样的迷茫:不知道升级后点该怎么加,只是无谓的犹豫不决,或是干脆一古脑把点全加在最需要的方面(比如物理攻击职业把点全堆在力量上)。


再来看看,大家沿袭最多的 MMO 系统,还是暴雪的——装备系统。很多玩家迷恋于装备上 +20 力量,+10 敏捷这些属性点加成。

我想大家在开发网游的时候,也自然而然的把这个系统做进产品里去了吧。

提一个问题:为了暴雪在做的时候,不把 +20 点力量直接写成 + XXX 点伤害力呢?这样玩家不就可以直接知道这个东西对他有什么好处了。

在 diablo 的年代,属性点意味着高级技能学习的先决条件;而 wow 中,同样的属性点,对于不同职业的实际效果反应是不一样的。比如敏捷可以增加盗贼的攻击力,而对战士则没有这样的效果。即使是同样依赖力量增加战斗力的职业,一点力量意味的伤害力的增强也是不同的。

所以,本质上,wow 中属性点到实际伤害计算公式中参量的变换,是为同一装备对不同职业的效能差异服务的。如果 wow 中,每个职业都用他们各自专有的装备,互不影响,那么,属性点的设计就是多余的。至少没有必要展现给玩家看,只让它作为设计战斗公式时的辅助工具就够了。


几年前,我曾经跟一个同事争论过一些游戏数值设定的方法。我坚持认为,一切都是数学公式,我们在设计时完全可以用 A B C D E 代替我们想要的东西,甚至一些公式也不用先定好具体函数是什么,而只需要根据最终的需要反过来推导。反正最终都是一些初等函数的变换,不可能跳出大框价。

但是很多设计师总期望先从现实中或是小说设定中找到对应物,非搞清楚为什么力量影响攻击力,根骨导致 HP 总量更长。那些名词到底是什么更为重要。以此可以展开更多的想象。

我说的名词还包括,“法师”、“战士”、“盗贼”、“牧师”这些……

最近我自己在做数值设定了,亲身感受后,果然合适的名词的确能辅助设计。没错,我们总需要借助一些更有意义的词来在头脑中建立起概念。但是,最终我也发现,一旦能克服对这些名词的依赖,纯数学的构建出基本的关系,无偏袒的,只为了数字上的平衡和变化去设计整体的框架。后期再根据需要找到合适的词并套入系统,以此展开细节上的联想,效果可能更好。更能帮助我们跳出玩过的前人的总总游戏的框架,找到新的东西。


不知不觉写了两个多小时,实在是太晚了。好象又什么都没写,等以后有闲了再补充一些实质性的东西吧。btw, 今天吃过晚饭后,在夜市上淘到一套对折的《说文解字注》。家里原有一本,是父亲的藏书。读中学时拿出来看,不小心弄丢了。这次撞见,挺高兴的买了下来。说是对折,但价钱还是今非昔比咯。

Comments

如果是完全平衡的.就相当无趣了.如果整个模型被简化成1=1的平衡.就完全没有意义了.在一定范围内的最优解或者优势策略是存在的.但是从全局范围内必须防止.这个范围,便是平衡的关键了.你的套装PVP很厉害,但是到PVE里面就不够用了.如果说平衡到最后就是A=B=C=D,那么用户选择哪种都不必要了.最后还是一个度的问题.如果我只有三种属性.那么各种职业的组合也就这么多种.自由度是创意发挥的范围.游戏就是玩家对于规则的理解.只要你总的规则能够很清楚的表述清楚不存在盲点,那么用户也是可以接受的.反之即便你的规则很简单,但是相互关系描述不清,照样会让玩家混淆.

我也是个程序在试图设计程序风格的游戏。
这个是给游戏第一人称建立的博客:
http://blog.myspace.cn/1313492656

有的时候我经常想,一个游戏需要HP吗?需要MP/AP吗?需要敏捷力量精力体力某某某吗?
CS需要生命值吗?需要护甲值吗?

这些东西本身只是对现实的一种量化,是为了模拟现实而出现的,现在很多第一人称射击已经抛弃生命值了。

或许网游也是一样,用户要的不是数字。

偏激一点,为什么当年劲乐团会那么流行?
WOW的精华,抛去画面与休闲,单看战斗,在于技能释放顺序搭配,而不在装备搭配。

有的时候,大胆想象一下也是必要的,比如,让用户接触不到数字。

我还以为云风想到不要属性点分配的好方法了呢,吓死我了

现在的游戏纯粹的就是个复制衍生,多少个技能多少级可以用体现在HP值的衍生上面,角色就不用说了在技能的衍生基础上在衍生点模型出来,其他什么系统都是衍生出来的,这就是游戏本质,谁又能把握好衍生的规则,不同规则都有不一样的游戏, 至于策划目的和需求又是什么, 一点差异就是另一种结果,用户体验是一个抛物线,看大多数用户能承受的最高点也就是设计者的设计成功点(系统复杂度与用户体验关系),

我前一段时间也考虑数值属性设定的问题,为什么要设计成两级属性,
如果只是damage,hp一级属性起作用,那么要有strength, energy这些?为此我专门去请教了一个资深策划的朋友,刚好他又认识Diablo II的策划,就问此问题,得到答复是说:现在的MMORPG一般都有4-6个基本属性,一般不会超过6个,但是基本上不可能用6个属性构建数值系统,所有实际游戏系统都有十几个到二十个属性,但是玩家很难理解这么的属性。一级属性比较少,玩家更容易理解。这一点是关键。

云风酱的核心意思很少有人能够明白,呵呵。还是那句话:透过现象看本质

本意为了解数值设置而来,看完感触良多,发现争论的话题居然是玩家对于个性化的需求,楼主所写“因此在整个游戏设计时,都希望“玩家按照游戏设计者所设计”的方式进行游戏。也只有这样,BLZ才可以确保玩家在漫长的游戏过程中保持一致的体验而不出差错。不单是加点,玩家在装备、天赋、职业搭配的选择其实都是非常缺乏的。”已经很好了概括了暴雪数值设定的理念。拿其他游戏的数值推翻此结论肯定是错误的。另外还想补充的几点是:diablo的自由度最终造就的是玩家探索近一年后,巫师无敌。而WOW通过装备、天赋的搭配曾经也造就了猎人和盗贼的强势。

Wow区别与diablo系列的自由加点设计,我觉得是出于这个原因:设计WOW时,BLZ一直在避免玩家的过度自由化导致设计难度增大。如果真的让玩家自由加点会如何?所有治疗几乎不会加任何的力量和敏捷;所有盗贼几乎只会选择敏捷和耐力;MT则只会加耐力。一旦这种情况出现,整个游戏的两个核心部分:PVP和PVE(RAID)将会变得极度的不可控,尤其是影响RAID。试考虑作为RAID关卡设计者,每次设计BOSS时都要考虑各种不同玩家组合(天赋、职业、装备、加点搭配)等是多么的头大!所以BLZ为了减少自己的麻烦(比如某个BOSS一放出立刻被DOWN),因此在整个游戏设计时,都希望“玩家按照游戏设计者所设计”的方式进行游戏。也只有这样,BLZ才可以确保玩家在漫长的游戏过程中保持一致的体验而不出差错。不单是加点,玩家在装备、天赋、职业搭配的选择其实都是非常缺乏的。
简单而言,就是BLZ希望所有玩家都按步就班的玩到BLZ希望他们玩的东西,完全彻底的掌握玩家的行为。

楼主你这里已经预设了一个前提,即使所有玩家都是为了自己更加强大而去玩游戏的,然而事实上那种被称为升级机器的泡菜游戏,现在越来越被普通玩家抛弃了,人民币玩家和职业玩家横行的今天,很多普通玩家都知道想要在游戏中追求等级和地位是一个骗钱的圈套,最初不明白的玩家,亲身经历了抢怪外挂和变态道具后,有点脑子的也就理智了.
那么这个时候,一个游戏还有什么可以吸引玩家哩?就是所谓游戏自由度上场的时候了,比如说完美世界的时装系统,这个时装系统比其他游戏有什么不同哩?就在于一件衣服分几件卖,每件衣服有n种不同颜色.有时候,一套时装的上衣配另一套时装裤子的效果,就等于是你有了一套全新风格的时装.对于时装这种东西,没有人能说什么是最强的,最受宠的纯黑白可以配的象丧服,最垃圾的土黄墨绿也可以配出高贵清雅,完全出于玩家选择.
天龙八部最亮眼的地方是什么?不是技能,门派,它的门派设计之混乱,技能设计之无用,无于伦比.也不是作战宠物,在天龙八部用鳄鱼或是鹦鹉,对于低水平玩家而言感觉不到战斗过程的差异,而在完美世界中的妖精玩家,小叶蜂,夫诸和石头的使用场合没有不明白的.天龙八部最吸引人的地方,就是那无所不能的强大生产系统,他把一种枯燥的骗钱过程变成了游戏中的乐趣,花5分种看一田青青的庄稼成熟,坐下来吃亲手制作的面包和炒饭,面对瀑布与菏花悠闲地钓鱼,爬山涉水在山崖之前,青松之下挖出一只药草.这其中的乐趣,并不比练级少.
一个游戏真正地游戏性,我认为有好几面,一种是大而且丰富开放的地图,要知道探索未知的世界,是人类永恒的追求,从线性到平面的变化,是一种质的飞跃,是开启了新的世界.二种是经典感人,能够给人记忆的剧情任务,不需要太多,但是每一级都需要有一个.第三种就是游戏中的自由度和交互性.玩家在这个游戏里面还有想做而做不到的事情,还有没有发现的特殊之处,还有共同作战的朋友,他就不会轻易地离开.这方面自由的加点法则,就是让玩家探索新方法的好手段,不要小看了玩家,一个好游戏的玩家有上十万,这么多人测试实验共享,策划师再多的脑子也不够用,所以重要的不是取消自由加点,而是时刻关注游戏运营,有了变态的就改剧情改技能.

同意sjinny的看法,其实从大量无意义的组合中摸索符合设计者意图的优势组合,这本身也成为了游戏体验的一部分。
不过确实在网络游戏中,因为摸索的成本变大了,摸索失败的挫折感被放大了。
不过同时,网络提供的论坛等便利的交流渠道使得一些优势的组合可以广为传播,节省后人的时间,这在一定程度上减少了挫折,但同时也减少了获得的成就感。

出发点是让玩家有更多个性化的选择,实际操作中过分多的自由选择真的是无意义的。为什么,因为玩家基本都是向往对自己的角色有利的选择,极端点说就是想自己的角色是最强大的,那么一旦有某一位或某一群玩家试验出一套方案对于某职业角色来说是相对强大的,那么就会有成百上千玩家跟着去做,其间有可能产生一点点差异,但是这点差异相对来说是可以忽略的。还有就是所谓的游戏平衡,理想状态下的平衡和让玩家测试后得到的平衡肯定是有出入的,毕竟策划师们会用自己设定的公式去套用而得到平衡的结论,而玩家们是在玩游戏中对平衡得到的实际感受,尽管玩家们无从去弄明白为什么不平衡,但他们的确感觉到XXX不平衡了。策划师们和玩家们就产生了一个隔断,谁也很难短时间里弄清或解决造成不平衡。

WOW不需要加点,它的装备系统达到和加点差不多的目的。黑客帝国里面说,需要有选择权,哪怕只是潜在的,不然人类会大批量的死亡。游戏也一样,过多的选择与过少的选择都会对用户造成伤害,过多的选择等于没有选择。合理的方式是,有三五种以内的选择。至于用不用加点其实是次要的,与用户习惯的游戏类型相关,比如Q版游戏普遍有加点,即时游戏加点的就少些。至于加点与不加点对数值设计的影响就不多说了,可以影响很大,也可以影响不太大。看设计意图了

十三楼说的应该是天下贰

归根到底是熵高低的问题。

熵包括了,设计中系统的基本组成部分的组合,怎样在影响整体的宏观性质。

我喜欢低熵的设计。

就像不少dnd游戏一样,升级的时候给一个推荐点数分配,不就行了?

“无意义的”大量选择的确是无意义的,但是这不代表“大量的选择”一定是无意义的。大量无意义的选择当然不是我所想要的。
说到这想起一件事,无论是暗黑2的技能配点还是wow的天赋,在大多数时间里总是会有一些成熟的build的,只有在游戏平衡发生变化后(如path)这些build才可能被打破,但是之后又很快就会形成新的build。
玩家通过各种尝试来设计build的过程本身也是游戏的过程,而这个build的相对优势则是奖励。所以从这个角度讲,即使明知道会产生固定的build,各个游戏仍然会有build设计的游戏内容,仍然会不断改变平衡。最终大量的build尝试都是没有相对优势的,都会被淘汰掉,但是如果没有这些无意义的选择,那么就没有了这个游戏过程,最终几个优秀build就没有优势的比较对象,于是也就少了这样的奖励。

就理想的游戏设计来说,我觉得还是不应该穷举所有可能的输入的,因为这要么意味着输入的可能性变少,要么意味着考虑不严密。要严格考察的还是规则本身。
比如通过一系列的价值评估方法,把游戏里的各种选择最终统一到同一个价值体系里,以此来评价游戏设计。

@sjinny,

玩家需要的不是促成个性化的规则,他们需要的是个性化的目的。是想 PvP PvE 单次攻击力最大得到的爽快感……

设计者设计规则能否达到这些目的?那么就需要设计者自己先的检验。不检验或做推理证明,凭直觉一眼看穿么?

如果设计者能够一眼看破规则下的总总,千百万的玩家为什么不可以?

当你个规则可以提供有限的几种变化时,大量的无意义的变化就是在浪费玩家的时间,徒增新手的迷茫。

此间提到的“无意义”指老手一眼能看出其毫无意义所在,但新手可能犯错误做出错误的选择。网络游戏不同于单机游戏在于此。玩家做任何选择都有更重的精力(甚至金钱)上的成本,他们没有 L/S 的权利,最终导致更严重的挫折感。

当然,有一种情况下,设计人员勿须对设定和数值作严格的推敲,那就是抄袭成熟的游戏模型。反正坏也坏不到哪里去。而且玩家也更为熟悉(新手比例更小),即使不是老手,他们也更容易注意到,自己哪些地方容易犯错误。借助搜索引擎和论坛就可以避免。

你这个blog真有意思,为了验证您是人类!哈哈。
嗯,你在google上班?哈哈,在北京的话,我们很近呢:)

如果加点系统没有底层规则的约束,那么就不得不人工对不同的加点方案进行针对性的约束。但是如果有底层规则的约束,如果所有规则最终能够形成一颗完站的树而没有游离结构,那么玩家自己进行选择恰恰是符合KISS的,因为这时设计人员要考虑的仅仅是规则本身,而不是玩家所可能作出的所有选择的组合。

11楼别那么敏感,人家清清楚楚写着的
“抛开民族自豪感这些东西,当我们仔细比较上面两个例子中前后两者对同一数学定理的见解,我们会发现,它们其实是表象和本质的差别。”

最近在玩一个游戏(其实30级以后就基本在看论坛了)。这个游戏是自由加点。对所有物理职业而言,都是力决定攻击;体决定防御和血量,但不同职业加体的效果不一样;敏决定命中和致命一击。然后每个职业有3系技能。但是近战职业可以50级以后学习远程攻击技能,实在让人无语。

勾股定理这个,我完全不同意。如果你看过几何原本,就应该明白,知道“勾3股4弦5”,和证明定理,是完全不同的概念。

忍不住从google reader里面跳出来,留言。
其实很多这样的现象的发生是由于游戏需要增加一些可探索性。

要知道一个好的剧本,广泛被接受的剧本,比好的实现更难。

也就是说剧本是游戏制造业的上游,具体的程序实现是下游,所以大多数情况下都是剧本决定了游戏的基本架构~

Dungeon Siege里加点“爬树”的样子不就很好么,能看清楚加多少以后能出什么

我们团队在做公式设定的时候,往往都是先出公式然后才推导后面的内容。

可能也是我们被影响的比较严重了,确实总是去寻找名词对应背后的数据模型,而不是把数学模型引入一个名词,总是在寻找某一个“名词”对应的公式要是如何的。

完全的站在数学的角度来设定还没有尝试过,看来是时候要重新再做一次调整了。

发现写错了一个词啊.

希望能见到游戏绝对吸引玩家事物列表出现...:)

从程序员的眼光看策划,非常共鸣。

占楼再看,呵呵!

系里最近准备开一个Video Game Programming的program。据说因为加国游戏行业发展需要,加国非常缺这方面的人才,所以各个大学的计算机系都逐渐准备开类似的program。这个program包含了各种游戏相关的课程,包括gaming physics、game theory(数学)、game design之类的游戏相关的课目,当然,也包括其他的普通cs学生要上的课程。当然,这不是重点。要说的重点是,game design这门课,是请了某位BioWare的策划过来上的。而据这位仁兄说,game design的其中一个难点正是用各种公式来代替感性的选择。

so 长。
但支持心得共享。

Post a comment

非这个主题相关的留言请到:留言本