从零开始独立游戏开发学习笔记(四十六)--游戏设计学习笔记(七)--《游戏设计艺术》(七)

162 阅读24分钟

解封了终于,买了个键盘,快递到货了就去上音乐课。据老师说每天至少要花两小时,所以之后一段时间内都会以音乐为主了。不过 11 月份的时候还有个美术课,所以会是音乐和美术交叉行进。

在这之前,我想把《游戏设计艺术》赶紧学完,不然到时候好几个月不更,拖沓严重。

1. 谜题

大部分游戏都有谜题,在 上一篇文章 中我们讲过“42 号透镜:脑子与手”,谜题显然是属于脑子的。(不过能不能把谜底操作出来还是要靠手)

无论是塞尔达这种被认为是游戏性的极致的游戏,还是神秘海域这种被认为是徒有其表的散步模拟器,都具有谜题。

游戏里到底要不要设计谜题和设计师的想法有关,留给设计师自己去思考。(书中把那些找到敌人弱点也叫作谜题,但我认为把范围拉到这么大就没有讨论意义了,就很难去找到那种针对某种情况的应对方式了。事实上,后面介绍了设计谜题的 10 个原则,针对的都是传统意义上的谜题。所以一开始把范围拉到这么大的意义是什么呢?)

1.1 设计谜题的 10 个原则

不过,如果你想设计谜题的话,这里有 10 个设计谜题的原则,适用于任何游戏类型:

1.1.1 让目标变得浅显易懂

很多目标乍一看都不知道要干什么,是把棋盘变成白色,还是把红色的棋子排成一条线?当然了,对于那些重视谜题的游戏,连猜测谜题要干什么本身也是一种谜题了。不过,这样子销量确实不会高,只有解谜爱好者才会喜欢。

1.1.2 让它容易上手

要让玩家知道怎么去操作这个谜题。一个魔方不只是目标很明确(每个面颜色都一样),而且很容易就知道操作(旋转每一层)。要让你的谜题显得像是玩具。

54 号透镜:可达性

玩家应该清楚地知道自己要干什么,以及怎么做:

  1. 玩家怎么知道如何解开我的谜题?以及如何去操作?我需要去解释吗?还是显而易见的?
  2. 我的谜题是否和玩家之前见过的某个东西相似?如果是的话,如何让玩家意识到这一点?如果不是的话,如何让他们理解这个谜题现在的行为?
  3. 我的谜题是否吸引玩家想要去操作它?如果不是,如何让它变得吸引人?

1.1.3 给予进步感

我们要让玩家有阶段的成就感。还是拿魔方举例子,魔方在完成最终那个伟大的目标(全部面统一颜色)之前,玩家是有小目标可以达成的(单个面变成统一颜色)。这种可见性的进步,会让玩家有反馈感,使他们对自己有信心,觉得自己“成长”了,正在逐渐接近谜底。

55 号透镜:可见的进步

为了确保玩家得到反馈,问自己这几个问题:

  1. 在我的谜题里,进步意味着什么?
  2. 我的谜题中有足够的进步嘛?是不是可以添加一些中间步骤来让玩家逐步取得成功?
  3. 哪些进步是显性的,哪些是隐性的?我能否找到一种方法来揭示那些隐藏的进步?

1.1.4 给予可解决感

你不能让玩家觉得这个谜题是无法解开的。得让他们觉得你这个谜题是有解的。也许会很难,但不能让玩家怀疑自己是不是有什么别的事情没有完成。

1.1.5 逐步增加难度

除了多个谜题可以逐步增加难度以外。还可以让一个谜题里的不同步骤,难度逐渐增加。

一个简单的来保证难度这种稳步增加,并且不生硬非常优雅的方式是,给予玩家来控制步骤顺序的能力。就像拼图游戏,玩家自己会选择从边缘开始拼起。像是那种横纵字谜的游戏,玩家每解开一个字谜,就会给予下一个字谜的提示。玩家遇到困难后,会自己去寻找那些简单的步骤,然后逐渐解开整个谜题。

1.1.6 平行性让玩家休息

给予玩家休息的时间,一个好的方式是同时给玩家多个谜题。这样他们在解其中一个谜题的时候,觉得厌倦了这个谜题,可以转而去干另一个谜题。就像我同时学多个目标一样。刚刚提到的横纵字谜就有这样的特性,像是一些 RPG 游戏,同时给玩家多个任务,这样玩家就会在某个目标沮丧的时候,转而去换另一个目标。

56 号透镜:平行性

问自己这几个问题来考虑平行性:

  1. 我的设计中,有没有这么一个瓶颈,玩家必须通过这个挑战才能继续游玩?如果有的话,能不能添加一个平行的挑战?
  2. 我的平行挑战是不是太相似了?连收益都是相似的?可以让它们有着各自的目的和收益吗?
  3. 我的平行挑战可以用某种方式联系起来吗?是否可以一个挑战的进步让另一个挑战变得容易起来?

1.1.7 金字塔结构会延长兴趣

这个原则和前面的很像,但是稍有一点区别。
让一个大谜题的线索,由不同小谜题的结果构成。每次解开一个小谜题,就是对大谜题的提示。(这里和平行性结合起来,不同的小谜题之间可以相互提示,同时又能对那个最终的大谜题进行提示)

57 号透镜:金字塔

  1. 是否有方法将谜题中的所有部分都和最后的大挑战联系起来?
  2. 我能否建立这么一个层次结构,一点点地积累到最终挑战?
  3. 我的金字塔顶端的挑战,是否足够有趣,吸引人?是否玩家会愿意为了这个顶点而去完成那些小挑战?

1.1.8 提示

当玩家确实在某个谜题上卡关的时候,可以考虑给一个小提示。虽然会让解开谜题的行为掉价,但总好过解不开。一个比较好的方法是,让玩家主动选择看不看提示,提示会有一些小惩罚,并且并不完全提示,可以设计第一次提示比较简略,如果玩家还是看不懂,就再深入一些。

不过,这种事情,最好是谜题都做完了再弄。不然就很容易变成类似一些手游,花钱看提示的桎梏中。这样会不自觉把谜题设置的更难,不能有“反正有提示,谜题就可以设置地难一些”这种想法。

1.1.9 给出答案

这不是说让你告诉玩家谜底。而是等玩家解开谜题后,告诉他答案。这样看起来很奇怪,但我们想一下弹丸论破。虽然你指出犯人并给出证据了,但即便如此,随之而来的漫画解说全流程,是多么的爽快啊,而且还会发现一些之前没有想到的事情。玩家解开谜题后,一定要把答案告诉玩家,即使他们解开了,因为很多细节的地方不一定会想到。

1.1.10 感知转移

这个不能说是原则,只能说是告诉你如果不用以上的原则,会造成什么后果。
大概你平时生活会有这样的现象,你在网上看到一个谜题,尝试解出来,解不出来,然后往下一翻,发现大家好像都解决的挺不错,似乎还挺简单的。然后你就非常难受。如果解出来的话,当然是非常满足,觉得自己聪明绝顶。但解不出来会非常的懊恼。因为如果不使用技巧的话,往往解谜就是靠呆呆地看着谜题,期待着一个灵感火花蹦出来。

比如什么“用6 根火柴拼成 4 个等边三角形”这种。没有阶段性,没有平行性,没有金字塔,看到这个谜题你就只能看着,想。电子游戏不要这么做。除非你非常确定自己在干什么,而不是和玩家赌气。

1.2 58 号透镜:谜题

我们总结一下,整理一下思绪,然后问自己这几个问题:

  1. 我的游戏中的谜题是哪些?
  2. 我是否应该制作更多的谜题?还是更少的?为什么?
  3. 我的游戏中是否有一些不适宜的谜题?我能让他们更好地融入游戏吗?可以考虑使用 49 号透镜:优雅。

2. 界面

开始讲之前,我们首先思考一下,一个好的界面的目的是什么?好看?流畅?确实这两个很重要,不过一个界面的目的,果然还是要让玩家感觉能够把控住,让玩家感觉自己具有掌控感。

2.1 59 号透镜:控制

问自己这几个问题:

  1. 当玩家使用界面时,它能否尽其责?如果不能,为什么?
  2. 直观的界面给人以控制感。你的界面是容易还是难以掌握呢?

2.2 界面是什么?

界面并不专门指 UI,它包括所有玩家和游戏进行交互的东西。所以大家才会叫它 interface。包括手柄,键盘,音响,显示器,这种叫做物理界面;还有一种就是我们平时熟知屏幕上的 UI,这种叫做虚拟界面。

玩家,物理界面,虚拟界面,游戏世界。这些元素之间会有数据的流通,而其中一个关键行为就是映射:

  1. 物理输入->世界:推动摇杆,游戏世界里的人物就移动了。那如果我用力推动摇杆,人物会跑的更快吗?人物跑动速度会随着时间变快吗?放开的话,多久会停下来?连按摇杆会加速跑吗?
  2. 世界->物理输出(显示器):如果你无法一下子看到全部的世界,你可以看到怎样的世界?它是怎样呈现的?
  3. 物理输入->虚拟界面:在一个基于鼠标的菜单界面中,单机会达到什么样的效果呢?双击呢?我能不能拖动?
  4. 虚拟界面->世界:当玩家操纵虚拟界面的时候,它对世界有什么影响?如果选中了世界中的某个物体,用弹出菜单进行了一些操作,这个操作是会立马生效,还是延迟一会儿生效?
  5. 世界->虚拟界面:世界里的变化如何在虚拟界面上显示?什么时候生命值和能量条会变化?世界里的事件会导致界面中出现特殊弹出窗口,弹出菜单,或者模式改变吗?在玩家进入一场战斗后,会出现特别的战斗菜单吗?
  6. 虚拟界面->物理输出:会在屏幕的哪部分出现?什么颜色?什么字体?生命力非常低的时候会不会像心脏一样跳动,或者发出声音?

为了研究这 6 个连接,我们引入两种新的透镜:

2.2.1 60 号透镜:物理界面

问自己这几个问题,来避免自己陷入不合适的陷阱,因为很多游戏的界面都是从别的游戏那里直接拿过来的,要确定是不是适合你的游戏:

  1. 玩家捡起和触碰了什么东西?能否把这个过程做得更令人愉悦?
  2. 游戏世界内的动作映射是怎样的?这种映射是否可以做得更加直接?
  3. 如果你没法创造一个定制的物理界面(特制遥控器,等),如何让输入映射世界的方式有一些隐喻?(类似摇杆推动=跑,一直推动=加速,按一下按键=攻击一次,这种)
  4. 在玩具透镜的视角下,物理界面看上去是什么样的?
  5. 玩家是怎么看到,听到,和触碰游戏世界的?是否有种方式,可以集成某种物理输出设备,让世界在玩家的想象中变得真实?(当使用手机的时候,使用显示器的时候,使用 VR 的时候,如何在这些条件的时候,让其变得更加真实)

2.2.2 61 号透镜:虚拟界面

虚拟界面做的不好,就容易丧失沉浸感。但做的好的话,又会让玩家觉得自己对游戏充满了掌控感:

  1. 玩家必须接受哪些光靠观察游戏世界无法获取的信息?
  2. 玩家何时需要这些信息?永远?偶尔?在战斗中?
  3. 这些信息如何以一种不会打扰到玩家和世界互动的方式传递信息?
  4. 游戏世界里是否有些通过虚拟界面能够更好控制的元素(意思是,虽然直接互动也可以解决,但是比较麻烦,而通过虚拟界面可以很方便的做到或者定位)?
  5. 对于我的物理界面来说,哪种虚拟界面更加合适?比如如果你的玩家使用手柄的时候,最好不要让他用弹出菜单,因为操作不方便。

玩家在操控游戏的时候,一般不会想到 UI 的事,为了让 UI 保持透明感,我们需要做到如下的事情:

2.2.3 62 号透镜:透明

理想的 UI,能够让玩家沉浸其中,意识不到其存在。为了确保透明度,问自己这几个问题:

  1. 界面是不是在让玩家做他们想做的事?
  2. 界面是否足够简单,让玩家能够不假思索的使用?
  3. 新玩家是否会觉得这个界面直观?如果不是,能否让它更直观?如果玩家可以定制操作方式,这样是有帮助还是会伤害到直观性?(我觉得最好还是和大部分游戏保持一致,最好是上一部大火的游戏,或者最近流行的趋势,这样可以避免更换习惯)
  4. 界面是否在所有情况下都保持良好?如果你靠近角落或者移动特别快的话,会不会比较迷惑?
  5. 在紧张的情况下,玩家是否可以继续良好地使用界面?或者,如果刚开始有些玩家不小心遗漏了一些界面能够提供的信息,如何改善这种情况?
  6. 有没有哪个界面比较迷惑?仔细考虑以上 6 种连接。
  7. 玩家使用界面的时候,是否有沉浸感?(最终观感)

2.3 互动循环(UX)

信息是循环流动的,玩家操作的信息对游戏产生了影响,又以某种反馈方式流回玩家。而这种反馈的质量会极大地影响玩家享受的过程。

比如说,篮球框的网,当球进的时候,会减缓球的速度,大家都能比较清晰地看到甚至听到球进了。

这里可以使用到 14 号透镜:陈述问题。陈述之后,再去一一解决问题。
书里给了一个并非游戏的例子,是一个清洁产品,其一开始陈述了以下几个问题:

  1. 不可能把所有的尘土扫进簸箕。
  2. 很难在站着的时候使用簸箕,但是如果弯下腰来,扫帚就开始变得难用起来了。
  3. 扫帚无法扫到所有的尘土。
  4. 当把灰尘扫入簸箕的时候,手会变脏。
  5. 将垃圾从簸箕转移到垃圾桶的时候,会很危险,因为很容易洒出来。

对于这些问题,该清洁产品使用了可抛弃式擦布来解决:

  1. 不需要簸箕。
  2. 不需要弯腰。
  3. 比扫帚能扫更多的尘土。
  4. 手不容易变脏。
  5. 擦布很容易清理。(直接扔)

但是呢,除此之外,还有一个精神上的好处:

  • 擦布擦完后,可以很清楚地看到上面的垃圾,一堆黑色的恶心东西。你会觉得很爽,感觉脏东西都飞走了。用扫帚的话,就总是会感觉还留下些什么。而且如果地面并不是非常脏的话,扫前扫后的区别可能都看不出来。

这就是反馈的好处,我们可以预见并期待一件事:

2.3.1 63 号透镜:反馈

玩家可以得到的反馈有很多种,问自己这几个问题来确认自己游戏中的反馈:

  1. 在这个时刻,玩家应该已经知道了些什么?
  2. 在这个时刻,玩家想要知道些什么?
  3. 在这个时刻,你想要玩家感受到些什么?用什么反馈可以来让玩家感受到这种感受?
  4. 在这个时刻,玩家希望感受到些什么?他们有没有可能获得这种感受?或者他们自己能够创造产生这种感受的情境?
  5. 在这个时刻,玩家的目标是什么?哪种反馈可以帮助他们实现这个目标?

上面这个透镜里的问题,可以说是目前为止最抽象的问题。因为这个透镜和游戏场景高度相关。所以你需要在不同的情境中考虑这件事。也许这会耗费很大的精力,但这是值得的。

从一般的经验来看,如果玩家按了某个键,过了 0.1 秒后还没看到结果,玩家就会觉得你的界面没有生效,或者怀疑自己是不是按了。一个常见的情况就是,刚进游戏岗位的新手动画师会去做一个长达 0.25 秒的跳跃起步动作,然后玩家在按键之后的 0.1 秒之内没有在空中看到角色,就会觉得很沮丧。

2.4 有趣

二级运动:当你触发了一个动作之后,会不会触发别的动作,这个动作可能和最后的作用无关,但是像你展示了其运动过程。就像是你触发了第一个齿轮,虽然你想要的是时钟转动,但如果给你看到其中第二个,第三个齿轮,以及齿轮之间的精确咬合的过程,你会非常开心。这些持续不断的反馈,被作者称为多汁系统。
(实际上,我经常在玩游戏的时候,看着那些交互感非常强烈的 UI,不停的来回捣鼓,傻傻地看着动画,或者试试看其到底能应对多少种情况)

2.4.1 64 号透镜:多汁

一个干燥的界面,是没有反馈的。而一个多汁的系统,是具有强烈反馈的。问自己这几个问题来保持自己的系统足够有趣:

  1. 我的界面给玩家的动作持续的反馈了吗?如果没有,那么,为什么没有?
  2. 二级运动是由玩家的动作创造的吗?这个二级运动看起来有趣吗?
  3. 多汁系统用多种方式来奖励玩家,当我给玩家一次反馈的时候,实际上是多种反馈一起。那么,我能够用更多种方式来增加这个反馈吗?

2.5 直观性

2.5.1 65 号透镜:原始性

问自己这些问题:

  1. 我的游戏中,有哪些部分,动物都能玩?为什么?
  2. 我的游戏中,有哪些部分可以更直观,更原始?

2.6 信息通道

游戏中的信息是有很多的,我们需要决定这些信息展示的方式,也就是之前谈到的6 种方式对的最后两种。

2.6.1 步骤 1:列表与排列信息

游戏中有许多信息,它们并不是同等重要。我们需要按照重要度来对它们进行排序,比如我们可以从上到下这么分:

  1. 每一刻都必须了解:当下的环境。
  2. 游戏过程中必须时不时瞄一眼:物品数量,生命值,远处的环境。
  3. 有时候必须知道:其他物品。

2.6.2 步骤 2:列出通道

通道是传递数据的一种方式,比如:

  • 屏幕左上角
  • 人物上方气泡
  • 游戏音乐,音效
  • 屏幕边界

2.6.3 步骤 3:把信息映射到通道上

现在,我们列出了信息,也列出了通道。现在要做的就是互相映射。

这是一件比较困难的事情,因为大部分情况下你都要去试错,靠本能,经验,试错来完成。

2.6.4 步骤 4:检验维度的使用

每一个通道也可以有很多维度,比如说当你把伤害映射成“敌人身上飘出的数字”的时候,那么你现在有这么几个维度:

  • 数字的大小
  • 数字的颜色
  • 数字的字体
  • 数字本身 你可以去考虑用这些不同维度来代表什么,比如说大小代表人物是否处于危险状态,颜色代表攻击类型,一些特殊字体表示特殊攻击,等等。

使用多重维度,会让你的信息更加清晰,而且也更多汁。不过要注意,你使用的这些维度的方式,是否足够简单,玩家一看就懂。

66 号透镜:通道和维度

选择信息映射到通道和维度的方式,是设计 UI 的核心。问自己这些问题来提醒自己:

  1. 玩家需要知道哪些数据?
  2. 哪个数据是最重要的?给重要性排个序。
  3. 我可以用哪些通道来传递这些数据?
  4. 哪些通道更适合哪些数据?为什么?
  5. 每个通道上都有哪些维度?
  6. 我应该如何使用这些维度?

2.6.5 模式

这个很好理解。很多时候界面信息太多了,不可能一次性展示出来。有些信息可能需要你按一个按键来切换界面的显示。比如说最近的艾尔登法环就经常用到,按住三角键来显示口袋中的物品。三角箭+L1 切换双手模式,等等。

不过模式的使用需要比较小心,因为这肯定是加大了复杂性,减少了透明度,这里有一些建议:

  1. 尽可能少地使用模式:就像刚刚所说,增加模式,玩家需要学习新的东西。
  2. 避免模式叠加:假设你做一个坦克游戏,有移动和瞄准两种模式,如果摇杆同时控制坦克的移动和瞄准,就会非常的难受。避免这种情况,让不同的模式独立。
  3. 制作尽可能不同的差异:不同的模式的切换一定要非常直观,让你能立刻感受到变化。像是 vim 编辑器就是一个很差的例子,你有时都不知道你现在是输入模式还是命令模式。

这里有一些例子,可以帮助你让你的不同模式看上去完全不同:

  • 改变屏幕上巨大可见的东西:各种 FPS 中,换枪的动作十分明显。猎魔人的视觉会让整个屏幕变暗,声音变得通彻。
  • 改变你人物采取的行动:比如说,当你切换成跑动模式的时候,人物的站立动画显得特别好动。
  • 改变屏幕上的数据:很多 RPG 中,进入战斗状态后,UI 的变化非常明显。
  • 改变镜头视角:比如 FPS 游戏中的右键瞄准。

67 号透镜:模式

问自己这几个问题,不要让模式迷惑玩家:

  1. 我的游戏中需要什么模式?为什么?
  2. 有些模式是否可以折叠或者合并?
  3. 是否有些模式重叠了?如果这样的话,如何让它们的输入分开?
  4. 我的游戏模式改变后,玩家如何发现这一改变?游戏能否用多种方式来告诉玩家这一改变?

2.7 其他关于界面的建议

一些常用的制作界面的建议:

  1. 抄袭:找到别人的同类型的游戏,以它们作为模板,定制你自己的游戏界面。(不过,只要你的游戏是创新的,经过修改后你的界面肯定会不一样。很多抄袭游戏为什么连 UI 都要抄呢?因为游戏本身没有创新,因此适合的 UI 就基本只能长成这样,想改也不好改)
  2. 定制:上面方法的对立面。对每个信息通道和维度进行设计。这种方法创新度最大。而且有可能会在设计的时候想到新的玩法。
  3. 围绕你的物理界面设计:你的游戏是在手机上,pc 上,还是 VR 里,都应该有不同的设计方式。
  4. 主题化:UI 要有一个主题,保持一致。
  5. 将声音映射到触摸:可以使用声音来模拟触摸,当你点击的时候,发出类似触摸的音效,会有一种拟真的感觉。触摸会让人感觉更真实,也更愉悦。仔细定制每一种操作的音效,你会发现很有用。(这里不是说手机上的那种触摸,而是类似你点击了一个长得像门的 UI,音效应该是类似敲门的声音。拖动窗口的时候,应该是类似手拿物体移动的声音。就像是你直接进入虚拟世界,用手来完成这些操作一样)
  6. 用层级来平衡复杂度:很多时候,你既想让玩家能够看到和操作的信息足够多来感到操控感。同时又想让界面看起来简单来增加透明度。这个时候可以采用层级的方式,把一些窗口放在子模式里,需要用的时候再调出来。
  7. 使用暗喻:比如说一个按钮可以让物品放大,那就把图标做成放大镜。一个行动有延迟,就可以在中间过程放一个类似无线电传输的画面。这里藏着一个 67.5 号透镜:隐喻。问自己这几个问题:①我的界面是否含有对其他事务的隐喻?②如果是隐喻,那么我是发挥了其作用,还是令其成为阻碍?③如果不是隐喻,那么让它变成隐喻会更符合直觉吗?
  8. 如果看上去不同,那么行为也要不同:如果你有一个长得像放大镜的按钮,结果在不同地方有不同的颜色,那么玩家就会觉得它们是不是不一样,所以你不能只是为了花哨好看做这样的事。如果你在之前让 X 表示取消,突然在后面让它表示删除,那会非常难受。
  9. 测试:尽可能早的去测试。找个别人来测试,因为你已经很熟悉了。
  10. 允许玩家犯错:比如说,你的游戏只需要用鼠标左键就够了,而右键本身也没有任何作用的话,那么,不如让右键和左键做的事一模一样,这样玩家不小心按错键了也不会有事。