《游戏设计进阶:一种系统方法》笔记2:定义系统


3楼猫 发布时间:2023-01-29 16:32:07 作者:夜永陵 Language

在这里,我们会讨论系统是如何组织起来的,以及新事物和新体验是如何从系统的不同部分中产生的。

系统意味着什么

系统就是事物,事物就是系统。系统实际上早在我们身边俯拾皆是,它们组成了我们生存的物质世界以及我们协助创造的社交世界。然而,重要的是要记住,系统是动态的,而非静态的:你不能通过将系统固定在特定位置来理解它;而必须通过体验其在具体实际环境中的运作来真正理解。

简要定义

为了提供一个不敷衍的简短定义,系统可以被描述如下:
一系列部分的组合,这些部分一起共同形成了它们之间的交互循环,以创建一个持久的“整体”。整体有它自身的属性和行为,这些属性和行为属于该组合,但并不属于其中的任何单个部分。
在本章中,我们将会将其拆解(之后再组装回来),以更加接近一个正式的定义和详细的诠释:
  • 系统由部分组成。部分具有内部状态和外部边界。它们通过行为与其他部分进行交互。这些行为发送信息(更常见的是各种资源)到其他部分,用来影响其他部分的内部状态。
  • 部分之间通过行为进行交互,以创建循环。行为创建局部交互(A到B),循环则创建传递交互(A到B到C再到A)。
  • 系统被组织到按照层次结构整合的一系列层级中,这些层级源自基于它们循环结构的涌现属性。在每个层级中,系统都会表现出有组织的状态和行为,意味着其也是下一个层级的更大系统中的一部分。
  • 在每个层级,系统都表现出持久性适应性。它不会很快分崩离析,会不断自我强化,并且能够容忍和适应存在于它的边界之外的不同条件。
  • 系统呈现出有组织、分散但同时亦协调一致的行为。一个系统创建一个统一的整体——而这同时又是一个更大系统的一部分。
现在我们将更详细的研究系统的各个方面。

部分

每个系统都由不同的部分组成,系统本身也可以被拆分成不同的部分:如分子中的原子,鸟群中的鸟。
每个部分都独立于其他部分,每个部分都有自己的特征并各自行动。具体来说,每个部分都由其状态边界
行为所定义。
状态
每个部分都有自己的内部状态。它们由属性组合而成,每个属性在任一时间点都有其特定的。因此,鸟群中的每只鸟都有各自的速度、方向、质量、健康情况等。每种属性各自有一个值,代表该属性的当前状态。部分的总体状态是所有当前属性值的集合。
在现实世界中,对象的状态并不是由一个简单的、拥有值的属性所定义的。相反,状态涌现自各个子系统的聚合状态,这些子系统处于更低或者更细化的组织层级中。
在游戏中,一个部分的状态通常由更细节层次的各个部分所拥有的状态来决定:森林可能没有自己的“健康”属性,但可能使用定义在其中的每棵树的状态集合。然而,在某些时候你必须“触底”并创建拥有属性-值对的简单部分。例如,国际象棋中的棋子具有“种类”以及“在棋盘上的位置”这两项属性作为它们的状态。
边界
一个部分的边界是一种涌现属性,由它内部的子部分相互作用的局部领域所定义。
部分之间的边界并不是绝对的而是概念性的,因为一些局部部分同样需要与边界“之外”的部分互动。
定义事物是在某部分的“外部”还是“内部”,典型规则是该事物能否改变更高层级系统的行为。如果是,那么它就在边界内,是系统的一部分,反之亦然。
使用边界可以让系统的各个部分更易于理解和复用,同时也消除了以来各种形式的集中控制所带来的诱惑。
每个网页都是整体系统的一部分,没有什么在控制整个网络,如果其中一个消失了,其余的仍然会继续工作。(Weinberger,2002)
行为
部分之间通过行为来相互影响。每个部分都有它所做的事情——通常是在系统中创建、更改或者销毁资源。通常会通过向其他部分传递一些资源或值的变化来影响它们。一个给定的部分也可以通过它自己的行为来影响自身,比如游戏中的怪物随着时间流逝治愈自己的伤势。
与行为相关的一个重要概念是,一个部分可能会通过行为扰乱或影响其他部分,但每个部分是自主决定自己内部状态以及对任何行为的反应的,这取决于它自身的内部规则。用面向对象编程的术语来说,每个部分都封装了它自己的状态,这意味着没有其他部分能“进入”并改变它。
对于“部分之间的资源传递”,《游戏机制》一书中有更详细的介绍,此处不展开讨论。
简单、复杂与复合
彼此连接形成系统的部分总是以构成循环的方式来形成系统。循环系统往往会变得复合化。非循环系统可能会创建复杂的过程,但最终它们往往不会创建复合的系统。这对系统设计整体(特别是游戏设计)有重要的影响。
简单的集合与复杂的过程
如果各部分没有任何影响彼此状态的行为,那么它们就构成了一个简单的集合,而不是一个系统:一堆沙子或者一堆水果。
简单的集合

简单的集合

一个复杂的过程具有多个部分以及多个交互。然而,这些部分是按顺序相互连接的,彼此之间的影响也只是线性的,没有游戏循环来创建反馈,这样的过程并不会形成一个系统。
现实中复杂集合的例子有很多,从简单的单摆、流水线工序到更复杂的发射火箭到月球,后面的过程都不会对前面的过程造成影响。
在游戏设计方面,向玩家展现出有序关卡的游戏更倾向于复杂而不是复合:通常关卡10以上发生的事情对关卡2时的状态或玩法不会有影响。这种有序的而不是系统化的游戏设计需要设计师创造出更多内容,因为一旦玩家通过了游戏的一部分,这部分内容的玩法的价值就会大幅降低。
复合系统
当各个部分连接在一起形成一个循环,并以此相互影响时,这些循环就创建了一个复合系统。
我们生活的方方面面都有着许多复合系统的例子,包括人体、全球经济、一段罗曼史、飓风、白蚁丘,当然还有很多游戏。这些系统的每一个都具有如下特性:拥有多个独立部分,每个部分有自己的内部状态,并通过它们的行为,以形成反馈循环的方式相互影响。正如你即将在这里看到的,它们还会对外部随时间发生的变化保持适应性鲁棒性(Robust),并产生有组织的行为以及涌现属性。

循环

复合系统包含具有行为的部分,这些行为以形成循环的方式连接各个部分。而这些循环在很多方面都是系统和游戏中最重要的结构。认识并有效地构建它们是在系统中工作的关键。
作为最基本的性质,循环可能是建设性的,也可能是破坏性的。在系统性思维中,它们通常被称为强化循环平衡循环
强化循环
强化循环包括两个或更多的部分,每个部分增加下一个容器中库存的资源数量,从而增加其行为输出。这种循环在生活和游戏中能找到很多示例。
一般而言,强化循环会提升相关部分的价值或行为。在游戏中,它们倾向于奖励获胜者,放大游戏中的早期成功,以及打破游戏玩法的平衡。 而早期处于劣势的一方可能会进入恶性循环,难以翻身。
平衡循环
平衡循环与强化循环相反:每个部分会减少或减弱循环中下一部分的价值和行为。
平衡循环的两个简单例子。第一个是烤箱恒温器。第二个是游戏中对升级经验值的处理:在升级时,升到下一级所需的经验值会超过到当前这一级所需的数量,以此来减慢角色升级的速度。
平衡循环用于维持或恢复循环中各部分间的平衡或公平性。
组合、线性与非线性效应
捕食-猎物
野兔繁殖,增加(强化)它们的数量,然而,猞猁会吃掉野兔,这样将减少(平衡)野兔的数量。结果,当野兔的数量减少时,猞猁会难以生存,因为它们的食物少了。
从这个复杂关系中涌现的,不是一简单的线性平衡,而一个非线性振荡图。

Lotka-Volterra或捕食者-猎物方程

Lotka-Volterra或捕食者-猎物方程

混沌与随机性
随机效应
一个随机的系统是不可预测的,至少在某个范围内是不可预测的。
在游戏中,像这样的系统可以用来模拟我们并未实际建模的低级系统的行为:与其让一个系统的输出总是相同,不如让它在指定的范围内随机变化。
混沌效应
这些系统是确定性的,意味着原则上如果你知道系统在某个时刻的完整状态,你就能预测它的未来行为。然而,这些系统对条件的细微变化也是高度敏感的。例如,双摆运动从两个略微不同的起始位置分别先后启动双摆或其他混沌系统,会导致两组完全不同的行动轨迹。
此外,混沌系统有时又会表现出非混沌行为。当一个混沌系统本身可以非线性地运行时尤其明显。这种事件通常被称为“共振事件”。较常见的例子是青蛙共鸣会从无序逐渐变得有序、从松散的个体发声变成集体共鸣。
循环结构的例子
涌现
当一个复合系统中的强化循环和平衡循环处在一种动态平衡中时,它们会产生一个亚稳态的、有组织的系统行为。
这样的整体亚稳态是一种涌现效应,是由多个部分的行为所产生的。涌现效应创造了与任何单个部分在性质上完全不同的新属性,并且不是由各个部分本身简单叠加所产生的。这样的亚稳态还能使系统中所有部分的行为产生其他的涌现效应。
例如,在一群鱼中,每个部分(每条鱼)都有其内部状态,如质量、速度、方向。一群这样的鱼,其总体重量并不是涌现属性。然而,鱼群的形状可能时涌现的,比如它们可能会形成一个密集的形状以躲避捕食者。
当内部各个部分相互作用产生亚稳态结构时,该结构:
  • 不由其中任意一个部分所决定。
  • 不基于其所有部分属性的线性和。
  • 相比各个部分及它们之间的关系(“每条鱼的位置、速度和方向”这样冗长的叙述),更容易从“聚合”(一个球状鱼群)方面进行描述。
然后就涌现出一个具有自己独特属性的新事物。
向上与向下因果关系
组织层级
这里再次提到基本思想,即一个正常运转的亚稳态系统会创造新的事物。这个事物的属性(它的状态、边界和行为)通常是在其内部各个部分彼此循环交互的过程中涌现出来的。一旦这样的新事物作为基础部分的集合涌现了出来,我们就把它描述为组织的“更高层级”。按照位次,从夸克,到质子,到原子,到分子,再到行星、太阳系、银河系乃至更大规模的事物,是很容易被认识出来的。
像边界一样,这些层级并不是绝对的或者外部定义的。它们是一种涌现属性,通过一些部分的状态、行为和循环一同工作而创造的新的可识别属性。这样,在某个层级上的系统就成为更高组织层级系统的一个部分。
结构耦合
这种层次组织——部分内部又存在更小的部分——是有组织系统的另一个标志。它也带来了Maturana (1975)所称的“结构耦合”。这就是当“反复的交互(导致)两个(或更多)系统之间结构一致”时发生的情况。
这些系统,是紧密交互的更高级系统中的部分。每个部分都通过某种方式将自己塑造成其他系统,并从中获益。通过这种方式,它们彼此改变并创造了一个新的、紧密集成的更高级系统。这其中的例子包括马和骑手、汽车和司机,以及许多共同进化的关系,就像昆虫与花随时间相互影响,并成为它们之间相互关系的一个部分。
游戏与玩家也形成结构耦合关系。这种结构耦合对于构建参与感与乐趣来说非常重要:游戏与玩家间的密切交互可以使得互联的循环很难被打破。
系统深度与优雅

整体

系统用相互作用的组成部分构成了更大的整体。整体本身又是系统组织下一个更高层级的一部分。
在设计游戏时,涌现出的终极整体不仅仅是游戏本身。相反,它是由游戏和玩家组成的系统。这样一个游戏+玩家的系统是游戏设计师的真正目标;而游戏本身,只是达到这一目标的手段。玩家所体验的游戏,以及在游戏中采取各种行动的玩家,共同创造了整个系统。

总结

为了与系统的层次性保持一致,我们将系统中的所有部分和交互都过了一遍,现在可以回到本章开头所给出的初始描述了。
系统是由独立的、相互作用的部分所产生的统一整体。这些部分有着自己的内部状态边界行为,它们通过行为相互影响。这个整体随着时间推移会持续存在,能适应外部条件,并且有着自己的协调行为,这些行为是由其各个部分的相互作用所涌现出来的。系统既包含较低层级的系统,自身又是较高层级系统的一部分。
虽然与本章开头给出的定义的角度完全相反,但是这两个角度是等价的。能够以这种方式切换对系统的看法是非常重要的——既作为理解和“在系统中思考”的一部分,也作为游戏设计过程的一部分。游戏设计师特别需要能够通过自下而上、自上而下或介于两者之间的任何方式来观察他们的游戏。

© 2022 3楼猫 下载APP 站点地图 广告合作:asmrly666@gmail.com