《游戏设计的一百个原理》记录(3)

总述

第一部分(1~29)

第二部分(30~61)

第四部分(80~100)

三、游戏平衡的一般原理

62.成瘾途径

人类热衷于能给他们带来奖励的行为,愉悦感为他们的这些行为提供正增强效应,所以他们会重复这些让他们愉悦的行为。

玩家在游戏中获得的奖励有自然的还有人工的。自然奖励包括玩家从学习新行为和客服游戏带来的挑战所得到的多巴胺释放;人工奖励包括游戏提供的各种奖励包括战利品等。

其实成瘾这一话题在原理24.斯金纳箱就已经进行了讨论,并给出了比较确切的答案。

游戏中避免玩家成瘾的方法包括:设置体力机制、降低长时间在线的奖励等。嗯,防沉迷也是。

63.注意和感知

感知和注意都用于描述人们解读、识别、组织、理解身边的事物,其中的区别就是,感知更强调客观而注意则更主观。一个人可能因为种种原因没有意识到一些信息,这属于感知的范畴;他也可以在听到一些消息后选择不做反馈,这属于注意的范畴。

设计游戏时,应当能抓住玩家的注意力,而要尽量避免因为界面设计不合理而导致玩家无意视盲(Inattentional Blindness,即人们有时无法感知一些直接出现在眼前的东西的现象)。

当需要强调一些元素时,仍然需要利用格式塔原则的一部分来进行界面设计。

64.平衡和调试

游戏中的“平衡”是指,游戏中各种元素和系统结合在一起并形成整体的游戏体验时,这些元素和系统的正确性。这包括有形的因素如能力制约、游戏难度,也包括无形的因素如休息的流程、时间膨胀等。

平衡在游戏的宏观和微观都有体现。从宏观角度讲,玩家可能认为某些机制之间或一个机制自身形成了巧妙的“平衡”。而从微观角度讲,物品掉落率、角色数值等细小的设计都是游戏平衡的重要方面。

当然,平衡不是一蹴而就的,设计师用来使游戏达到平衡的方法就是进行调试。调试不一定只是数据修改等小规模的改动,也可能是机制的重置或删除、游戏支线一刀砍掉等。已经

还需要注意的一点是,如果有的改动和某个原本已经平衡的机制或数据可能有关联,那么对已经平衡的那部分进行重新调试是有必要的。毕竟谁也不知道某个部分的一点改动会不会引发整个游戏的巨变。

65.细节

游戏中的细节分为表现性细节(Presentational Dtails)和表达性细节(Communicative Details)。

表现型细节就是用来表现的。它可以表现游戏环境、游戏世界背景、游戏的氛围……大量的表现型细节可以让游戏更加逼真。但是过多的细节会导致玩家可能难以聚焦注意力,而且并不是需要所有事物都有很多的细节才能被正确感知。

对表现型细节来说,添加细节的部分应该是最需要的部分。例如,一般来说渲染引擎会提示放弃远处的光照处理等,这是因为远处的这些细节并不是玩家注意的中心,稍微降低一些细节也无伤大雅。而如果设计成玩家到哪哪没细节,那要么是不打算让玩家玩下去了,要么是游戏叙事或者玩法等方面的需要。

表达性细节是用来和玩家交互的。它用于为玩家解决具体问题提供指导和帮助。比如说密室逃脱类游戏中的很多细节,都是为了协助玩家解决问题而存在的。如果表达性细节过多,也就是对玩家的帮助提示过多,那就相当于一直对玩家指手画脚,这杨玩家也不会很高兴。而如果没有这种提示,玩家很可能想继续进行游戏都没得办法。

66.加倍和减半

加倍和减半是对数据调整中最为极端的一种。相对于微调,这样的数据调整方式可以更快游戏的表现产生影响并且快速地发现问题 :应该微调数据?还是把数据大概一番?抑或是彻底改掉机制?

加倍和减半的调节方法对受试者来说并不友好,因为他们可能不了解开发的情况,所以会对加倍减半带来的游戏进程巨变感到不适。如果将这样的修改方式应用于A/B模式,可能需要考虑这样的问题。

67.规模经济

看待每一个经济体都有两种主要的角度:微观的尺度和宏观的尺度。

微观经济学研究个体的选择。这个领域以自下而上的方式对经济形势进行分析。它着眼于个体特定行为背后的动机,以及这些行为如何对更大的系统、乃至社会层面产生影响。

宏观经济学研究总经济体或国家的经济选择,以自上而下的方式关注经济系统的模式和影响。宏观经济学着眼于国家或全球层面的发展趋势及其影响,以及它们如何影响个体。

游戏中可以着眼不同的角度来引入经济概念。例如《模拟人生The Sims》就是以每个个体的选择着眼,体现微观经济学;《模拟城市SimCity》则是以整个城市的角度来看,体现宏观经济学。

游戏中的经济和现实中的经济一样,如果没有合理的调控,也会发生严重的经济问题。书中举了这样的例子:

《网络创世纪》(Ultima Online)游戏的初期,一些通过锻造系统锻造的物品的过量生产导致了恶性通货膨胀,而玩家囤积其他物品(合成法术的原料)导致了游戏核心循环实质上的崩溃。

一些游戏在经济方面设计了宏大的经济系统。例如《星战前夜Eve Online》。

书中还列举了一系列游戏中的经济系统,这里不展开了。

游戏中的经济系统同样也具有游戏虚拟的属性,玩家可以随意离开,无论自己是盈利还是亏损。

68.玩家的错误

玩家在游戏中的错误可以分为两类:行为错误(Performance Errors)和运动控制错误(Motor Control Errors)。

运动控制错误源自于玩家协调、掌握或运用输入设备时的浑南或失误。比如按错键、操作没跟上等。

行为错误可以被细分为三种:

  • 程序错误(Errors of Commission)
    这种情况下,玩家复杂化了游戏中的系统。这样的原因可能是游戏中存在设计上的失误,导致玩家没能理解系统的运作机制,或玩家由于一系列原因而处于无意视盲状态。
  • 疏漏错误(Errors of Omission)
    这种情况下,玩家遗漏了游戏系统中的某些内容。比如,类似打完boss忘记领奖励的行为,或者没有完成前置任务就想去做随后的任务等。这有可能是设计者给玩家的学习曲线不够平滑或者新手教程不够详细。
  • 错误行动(Errors of Wrong Action)
    这种情况下,玩家执行了一个错误的动作。比如玩家本应该去找药救他的叔叔,但实际上却走出了城门。
一种令玩家感受到游戏乐趣的东西。

玩家的错误在很多情况下不应当受到严厉的惩罚,而是可以成为让其感受到游戏快乐的契机。如果设计师可以考虑到玩家可能犯的任何错误,那么玩家可能更容易喜欢上这个游戏。

69.不被惩罚的错误

游戏设计师最大的困难之一就是处理玩家没有按照设计意图来做的情况简称:玩家胡乱操作。

不论玩家的错误是怎样的,都可以通过以下步骤来解决问题:

  1. 让玩家知道自己的错误
  2. 将玩家重新引导到正轨
  3. 确保玩家不会再犯相同的错误,并按设计师的意图继续游戏

当玩家已经因为操作失误或者其它什么原因而很难受时,如果再给他惩罚,那他可能就果断弃游了。所以,在玩家表现不好的时候,可以考虑给玩家一些鼓励,或者彩蛋之类的东西。这样的巧妙的失败状态可以很好地拉近玩家和游戏的距离。

此外,给没有按标准或完美完成某项任务的玩家较少的奖励是另外一种可行的做法。这样既是一种“惩罚”,同时又没有否定玩家的努力,因为至少他们的做法还是有效的。

70.希克定律

希克定律(Hick’s Law)讲述的是,当人面对一系列相似的选项时,每往列表上加一个选项,他的选择时间都会以对数的形式增长,其公式为:
R T = a + b l o g 2 ( n ) RT = a + blog_2(n) RT=a+blog2(n)
其中,ab为两个常数,n表示提供的选项,RT表示反应时间。

注意,公式中使用以2为底的对数,这是因为在很多情况下,搜索内容的方式可以被二分优化。而如果这个选项越乱,这一项的值就越接近于n,也就是用户可能不得不以线性的形式查找自己所需的信息。当然,人不是计算机,往往做不到真正与这样的公式很好相符。

希娜·艾扬格(Sheena Iyengar)做了这样的实验:当一群消费者面对24种不同的果酱时,他们中的60%会停下来尝试果酱的味道,但只有3%的人会最终购买;当他们面对6种不同的果酱时,只有40%的人会停下来尝味道,但却有30%的人会购买。这样的实验结果表明,过多的选择会导致人们宁愿不做这个选择(俗称选择困难)。

选择不是越多越好,合理的选项数是3~6个。但这有一个例外:当一些玩家对这样的一个选择很有兴趣,并且乐意进行选择时,可能稍微多一些选项更符合他们的意愿。

71.兴趣曲线

兴趣曲线(Interest Curve)表现的是受众对一个体验所提供刺激的参与程度和反应。它反映了用户对一个事件的感觉。其背后的原理是通过调整设计来平衡和优化受众的体验。

兴趣曲线可以由收集到的玩家在游戏体验过程中产生的感受的数据来进行绘制。在兴趣曲线上应该能看到玩家情绪的变化以及一些特殊的、引起玩家心理变化的因素。

在调整兴趣曲线时,有以下的准则:

  • 考虑玩家先入为主的观念。
  • 快速抓住用户的注意力,用一些“诱饵”将用户的兴趣延长。
  • 避免在同一个兴趣点上将时间拉得太长。(指路78.持续注意力)
  • 动态的高峰和低谷可以帮助受众产生兴趣。一个体验需要自然流动并且需要有低潮。
  • 即使是在兴趣曲线上升或者下降的过程中,也需要利用一些小的高峰和低谷来防止沉闷。
  • 高度集中注意力的时间段过后,需要一个不太需要集中注意力的时间,使玩家有机会调整情绪。
  • 一般来说,需要一些高峰使玩家有深刻的印象。

如果一个片段降低了用户兴趣曲线的质量,删掉。

72.学习曲线

学习曲线(Learning Curve)指的是,在完成任务的过程中,需要付出努力,并且会在不断的重复中将技能提高。

学习曲线既不能太陡峭、也不能太平缓。太陡峭的话玩家很可能会丧失信心;太平缓会使玩家感到无聊。

造成玩家习曲线陡峭的原因主要有这些:太多任务、一个任务有太多组成部分、一个任务太难。

解决学习曲线过于陡峭的问题的一个方法包括:

  • 在教学过程中去除任何干扰。
    这样的做法在生活中也很常见,谁都不太可能在脑子里一堆破事的时候再好好想一件正事。
  • 让玩家在实战中学习。
    边学边练,边学边动手做。只看文档意义不大。
  • 给玩家清晰的目标。
    如果知道自己学的东西要考试、或者以后会用到,那人们往往更乐意付出精力去学习。在游戏中,这样的目标可能是玩家可以用新的操作方法越过一种障碍、或者可以将新的操作方式和原有的经验结合来发挥更大的作用。
  • 允许玩家在没有惩罚的情况下练习。
    当然不能有太严厉的惩罚,不过也不能完全没有惩罚,否则玩家可能会在脱离教程后发现世事艰难。这一点我觉得《几何冲刺Geometry Dash》的教学模式比较好。它给玩家设置存档的机会来把握关卡节奏;同时,如果在练习模式中失败,玩家会被回退到上一个存档点作为惩罚。
  • 为玩家的成功提供积极的反馈。
    人们都喜欢表扬,都希望在取得成就后得到表扬或者物质上的奖励,玩家也不例外。

基于这些,一套完整的方法是:在专用以及的教学场景里,为玩家提供适量的说明文档以及实战的机会;为玩家提供需要完成的教程任务,并且在玩家完成教程中的一些任务时给玩家奖励。

学习曲线和兴趣曲线是相互作用的。玩家的学习能力可能随兴趣的波动而波动;玩家的兴趣也可能因为学习到新能力而提升。因此,这两条曲线的平衡是很有必要的。

73.损失规避

人们在很多情况下会尝试进行损失规避,也就是尽量避免自己遭受损失,尽管发生这件事的可能性可能很小。

书中举了两个例子:

一个是,在Farmville游戏中,玩家不定期上线会导致游戏中作物的死亡,假如这可以量化成一定量的游戏币,那么这样的损失给玩家带来的持续上线的动力远大于提供给玩家等量游戏币所带来的动力。

另一个是,简单来说,就是,别人都变强就等于我变弱。尽管对其他单位集体增强而不加强需要削弱的单位的行为可能仍然会被一些玩家诟病,但其实从很大程度上讲,玩家心里会好受不少。

74.马斯洛需求层次理论

马斯洛(Abraham Maslow)提出的人类需求层次理论(Maslow’s Hierarchy of Needs)讲人类的需求按重要性分成了这样的5组:

  1. 生理层面的需求(Physiological)
  2. 安全需求(Safety)
  3. 社会需求(Love and Belonging)
  4. 尊重的需求(Esteem)
  5. 自我实现的需求(Self-Actualization)

关于这些内容的详细,这里不展开描述。人们通常需要满足低层次的需求,才会追求高层次的需求。

书中还对相关的心理学理论以及一些不一致的观点进行了介绍,这里也不做描述。

至于在游戏设计方面的应用,大概就是游戏中角色追求的目标可以是按照这个需求层次进行循序渐进的,如果玩家的需求间产生冲突,就会引起取舍,从而形成更好的游戏体验和主题表现。此外,如果游戏中需要引入人工智能,依据这样的理论来指导人工智能的行为可以给玩家更真实地体验。

75.最小/最大化

举例来说,一些游戏中,有的玩家无脑叠攻击、有的玩家无脑叠护甲,这种策略就是“最小/最大化”的实例。最小/最大化是一种占优策略,玩家尽量放大游戏中对自己有利的部分。

一些游戏中,最小/最大化的策略玩家很喜欢采纳,甚至到了狂热的地步。当然,这样的策略有很多时候和团队合作、任务分工有关。不过,最小/最大化有时候可能会破坏游戏平衡,比如前段时间炉石传说中出现的环境畸形问题:(暴风城版本刚开始时)任务法、任务术两套热门且不弱的卡组几乎彻底放弃了场面,由于机制的特殊性,这同时也导致整个环境中下随从的风险增大了。这样的极端情况就对整个游戏环境带来的极大破坏。

限制玩家采取最大/最小化策略的方法包括:

  • 减小玩家自由发挥的空间,不给玩家采取这种策略的机会。
    比如,给定属性值,玩家无法更改。
  • 做好平衡。
    比如,炉石传说中针对毒瘤卡组的削弱和针对下水道卡组的加强。
  • 添加较大的随机性,让玩家不容易完成自己这样的规划。
    比如,玩家属性不可自由加点,而是在升级时由系统随机给出几个加点方案,从中选择一个。
  • 设计复杂的系统。
    增加各个系统之间相互的影响。比如,让每个指标在多个部分发挥作用,这样玩家必须考虑除了最直观收益之外的其他好处。
  • 强调游戏中与此无关的部分。
    比如,假如是数值系统容易出现这样的问题,那么就弱化游戏中与此相关的战斗系统等,而强调游戏的剧情、解密等元素。

76.惩罚

感觉没什么好说的……这一章书中的内容主要就是列举了游戏中的一些惩罚,包括生命/游戏结束/死亡(Lives/Game Over/Continue,就是常见的那种)、枯萎(Wither,一些数值由于玩家忽视而向不好的方向发展)、永久死亡(Permadeath,删档一类的惩罚,不过大部分游戏中需要慎用)。

77.沙盒与导航

沙盒(sandbox)的本意就是一堆沙子,在这里可以自由创作,沙盒游戏也是如此。

沙盒游戏的关键就是,玩家处在一个广阔的世界,并且可以用大量的时间自由探索。

为了给玩家带来沙盒式体验(Sandbox Experiences),游戏中的大部分机制应当比较简单,这样玩家有更多的机会去将不同的机制结合起来并产生创新。当然,处理玩家所有可能的输入对开发者来说是很重要并且很艰难的一件事。当然,可以处理大部分比较正常的操作,一些很离谱的现象用“特性”来解释(

所有的开放的世界都可以被视为沙盒,但并非所有沙盒都有开放的世界。这是因为开放的世界是沙盒发挥其作用的一个大舞台,而沙盒并不一定需要开放的世界来为玩家提供创作的空间。

导轨式体验(On Rails Experiences)与沙盒式体验相反,它要求玩家以一种相对线性的方式来完成体验,当然这并不意味着玩家只有一条路可走。导轨式体验也强调玩家的参与。

导轨式游戏的节奏可以参考火车和过山车。火车一路没有什么特别的状态,强调的是平稳,而过山车则可以让玩家精神亢奋,强调的是刺激。

沙盒式和导轨式并不是严格的无法兼容。导轨式游戏中也可以在一部分提供沙盒的体验、沙盒式游戏中也可以用导轨式体验交代剧情等信息。

78.持续注意力

人类的注意力能持续的时间是有限的。无论是开会、看书、看电影还是玩游戏,一个人一般不能太长时间集中注意力。

因此,枯燥的文字教程、冗长的过场动画、或者单调的刷怪任务,都会因为持续注意力的缘故而对玩家丧失吸引力。

类似的,鉴于这个原因,游戏中如果真的“全程高能”,玩家可能会累得够呛,或者刚玩过之后很多细节都忘得差不多了。因此游戏中需要一些可以让玩家走神的过程,或者一些可以让玩家重新集中注意的过程。比如,游戏剧情之间会有跑地图的部分,这之间玩家的注意力就可以不那么集中,而这有利于玩家过一会之后更好地体验剧情;比如,游戏每过一段就给玩家提供一些新玩意,这甚至包括在线奖励、“屏保”(当玩家一段时间不操作时给出提示)。

79.可变奖励

固定奖励就是那些固定不变的奖励,比如:杀死10只怪物以获得一把剑。这样的奖励明码标价,但是对玩家的吸引力其实并不足。即使是设置分等级的奖励,比如在2分钟内完成任务获得更多奖励,这样的奖励仍然可以视作固定的。(指路:24.斯金纳箱)

而如果是随机奖励,那么玩家会获得更多惊喜,比如刷怪爆装备。

其他一些我想到的机制包括:抽卡游戏的抽卡,地牢游戏中可能有的战利品宝箱或奖励地图。

可变奖励可以提高玩家的参与感和积极性。玩家可以以可变奖励为动力,在重复的动作中获得更大的成就感和惊喜。

热门文章

暂无图片
编程学习 ·

C语言二分查找详解

二分查找是一种知名度很高的查找算法,在对有序数列进行查找时效率远高于传统的顺序查找。 下面这张动图对比了二者的效率差距。 二分查找的基本思想就是通过把目标数和当前数列的中间数进行比较,从而确定目标数是在中间数的左边还是右边,将查…
暂无图片
编程学习 ·

GMX 命令分类列表

建模和计算操作命令: 1.1 . 创建拓扑与坐标文件 gmx editconf - 编辑模拟盒子以及写入子组(subgroups) gmx protonate - 结构质子化 gmx x2top - 根据坐标生成原始拓扑文件 gmx solvate - 体系溶剂化 gmx insert-molecules - 将分子插入已有空位 gmx genconf - 增加…
暂无图片
编程学习 ·

一文高效回顾研究生课程《数值分析》重点

数值分析这门课的本质就是用离散的已知点去估计整体,就是由黑盒子产生的结果去估计这个黑盒子。在数学里这个黑盒子就是一个函数嘛,这门课会介绍许多方法去利用离散点最大化地逼近这个函数,甚至它的导数、积分,甚至微分方程的解。…
暂无图片
编程学习 ·

在职阿里5年,一个28岁女软测工程师的心声

简单的先说一下,坐标杭州,14届本科毕业,算上年前在阿里巴巴的面试,一共有面试了有6家公司(因为不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比较少) ​ 编辑切换为居中…
暂无图片
编程学习 ·

字符串左旋c语言

目录 题目: 解题思路: 第一步: 第二步: 第三步: 总代码: 题目: 实现一个函数,可以左旋字符串中的k个字符。 例如: ABCD左旋一个字符得到BCDA ABCD左旋两个字符…
暂无图片
编程学习 ·

设计模式--观察者模式笔记

模式的定义与特点 观察者(Observer)模式的定义:指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式&#xf…
暂无图片
编程学习 ·

睡觉突然身体动不了,什么是睡眠痽痪症

很多朋友可能有这样的体验,睡觉过程中突然意识清醒,身体却动弹不了。这时候感觉非常恐怖,希望旁边有一个人推自己一下。阳光以前也经常会碰到这样的情况,一年有一百多次,那时候很害怕晚上到来,睡觉了就会出…
暂无图片
编程学习 ·

深入理解C++智能指针——浅析MSVC源码

文章目录unique_ptrshared_ptr 与 weak_ptrstd::bad_weak_ptr 异常std::enable_shared_from_thisunique_ptr unique_ptr 是一个只移型别(move-only type,只移型别还有std::mutex等)。 结合一下工厂模式,看看其基本用法&#xff…
暂无图片
编程学习 ·

@TableField(exist = false)

TableField(exist false) //申明此字段不在数据库存在,但代码中需要用到它,通知Mybatis-plus在做写库操作是忽略它。,.
暂无图片
编程学习 ·

Java Web day15

第十二章文件上传和下载 一、如何实现文件上传 要实现Web开发中的文件上传功能,通常需要完成两步操作:一.是在Web页面中添加上传输入项;二是在Servlet中读取上传文件的数据,并保存到本地硬盘中。 需要使用一个Apache组织提供一个…
暂无图片
编程学习 ·

【51nod 2478】【单调栈】【前缀和】小b接水

小b接水题目解题思路Code51nod 2478 小b接水 题目 输入样例 12 0 1 0 2 1 0 1 3 2 1 2 1输出样例 6解题思路 可以发现最后能拦住水的都是向两边递减高度(?) 不管两个高积木之间的的积木是怎样乱七八糟的高度,最后能用来装水的…
暂无图片
编程学习 ·

花了大半天写了一个UVC扩展单元调试工具

基于DIRECTSHOW 实现的,用的是MFC VS2019. 详见:http://www.usbzh.com/article/detail-761.html 获取方法 加QQ群:952873936,然后在群文件\USB调试工具&测试软件\UVCXU-V1.0(UVC扩展单元调试工具-USB中文网官方版).exe USB中文网 USB中文…
暂无图片
编程学习 ·

贪心(一):区间问题、Huffman树

区间问题 例题一:区间选点 给定 N 个闭区间 [ai,bi]请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。 输出选择的点的最小数量。 位于区间端点上的点也算作区间内。 输入格式 第一行包含整数 N,表示区间数。 接下来 …
暂无图片
编程学习 ·

C语言练习实例——费氏数列

目录 题目 解法 输出结果 题目 Fibonacci为1200年代的欧洲数学家,在他的着作中曾经提到:「若有一只免子每个月生一只小免子,一个月后小免子也开始生产。起初只有一只免子,一个月后就有两只免子,二个月后有三只免子…
暂无图片
编程学习 ·

Android开发(2): Android 资源

个人笔记整理 Android 资源 Android中的资源,一般分为两类: 系统内置资源:Android SDK中所提供的已经定义好的资源,用户可以直接拿来使用。 用户自定义资源:用户自己定义或引入的,只适用于当前应用的资源…
暂无图片
编程学习 ·

零基础如何在短时间内拿到算法offer

​算法工程师是利用算法处理事物的职业 算法(Algorithm)是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。 如果一个算法有缺陷,或不适合于某个问题,执…
暂无图片
编程学习 ·

人工智能:知识图谱实战总结

人工智能python,NLP,知识图谱,机器学习,深度学习人工智能:知识图谱实战前言一、实体建模工具Protegepython,NLP,知识图谱,机器学习,深度学习 人工智能:知识图…
暂无图片
编程学习 ·

【无标题】

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…