如何设计一张有“魂味”的地图?——论“类魂”游戏关卡的拓扑结构
原文发表于知乎,作者尼莫,地址:https://zhuanlan.zhihu.com/p/415025159
GameRes经作者授权转载发布。
摘要
在本文中,我们试图探究“类魂”游戏(3D银河恶魔城类游戏)关卡存在的数学上的普遍性设计原理。
基于一种原胞自动机方法[1] ,可以一般的将关卡地图划分成“开放区域(Open Aera)”、“路径(Path)”与“兴趣点(POI)”,三类元素相互组合。此时可以得到与该关卡一一对应的、抽象的逻辑图结构。
据此,我们选取了五款主流的“类魂”游戏(《黑暗之魂1》、《黑暗之魂3》、《血源诅咒》、《仁王1》、《帕斯卡契约》),并对五款游戏当中的84张地图进行了解析性分析。利用图论、拓扑学等数学工具,我们分别计算了总共84张地图各自的“稳定因子” y 值。( y 定义见4.3小节)
结果表明,《黑暗之魂1》中46%地图的 y 值介于0.94~1之间;《黑暗之魂3》中57%地图的 y 值介于0.91~0.94之间;对于《仁王》,有81%地图的 y 值小于0.91。
证明了《黑暗之魂1》、《黑暗之魂3》、《仁王》这三款游戏的关卡地图设计逻辑存在本质上的差异。
调研统计结果又显示,玩家对于“类魂”游戏各个地图关卡设计的满意度,高度相关于地图的“稳定因子” y 。在统计上,地图的 y 值是和玩家给出的反馈呈正相关的 —— 一个定性的分析是:y 值愈高,玩家评价愈好。表明“稳定因子”的确是关于关卡设计评价标准的有效观测量。
因此对于一个以探索性为主要驱动的合格“类魂”游戏/3D银河恶魔城类游戏,我们认为至少需要保证其单关卡地图的 y 值大于0.94。
在文章的最后,基于该原理,我们试图修整《帕斯卡契约》当中不满足 y值大于0.94的地图,将其改造为“中 y 普适类”的类似于《魂3》的关卡——这个是一个可批判性的结果,如果本文的结论正确,那么这个被修整过的新地图理应得到玩家更高的评价。
关键词:游戏科学,关卡设计,类魂游戏,图论,拓扑学
前言
首先声明,本文虽然采用了期刊样的论文格式,但是在文章内容和遣词造句方面会随意很多,并不会遵守那些规矩。因为本文的目标读者,是广大热爱黑魂的普通玩家、想深入研究游戏机制的高端玩家、地图类Mod的制作者、新手策划、独立类魂游戏设计者,正在开发类魂游戏原型的开发者等等,而不是标准的科研工作者。为了能较好的传达笔者的研究成果,笔者会尝试用一种偏向科普式的讲法。类似于聊天一样,笔者会拿出一些很具体的实例去分析,尽量让不了解图论的读者也能很好的get到本文的核心观点。
在开始介绍研究成果之前,笔者会用较大的文字量去介绍“我们写这篇文章的目的”,是因为笔者希望观点千差万别的各类读者讲清楚,我们是在对过往“玩家&策划”二元叙事的扬弃,站在一个新的第三者中立视角去审视游戏关卡设计的更底层的数理逻辑。笔者真诚的希望各位读者在阅读本文之后,可以有所收获。
背景
我们为什么要写这篇文章?
自2009年From Software社由宫崎英高执掌的《恶魔之魂》发售至今的十二年里,总共产出了六部质量极高的、冠以“魂类”之名的作品。以其较高的难度性、键位简单但不失趣味的战斗玩法、精巧复杂的关卡地图设计、暗黑晦涩的文艺叙事,收获了核心玩家群体无数赞誉。特别是在2018年3月份,《只狼:影逝二度》(下文简称为《只狼》)发售之后,乘着直播业兴起的东风,依靠前五代作品的人气积累,再加上作品本身的话题性。《只狼》成功出圈,吸引了大批原本非单机游戏玩家以及非动作类游戏玩家群体。以往作为“小众”的“魂类”游戏,在TGA游戏大赏上,得票超过小岛秀夫的《死亡搁浅》,夺下了“年度最佳游戏(GOTY)”桂冠。
与《只狼》大火相对应的,是市场的迅速响应,并出现了一大批质量良莠不齐的“类魂(Soul's Like)”游戏。
2017年光荣社发售的游戏《仁王》,总监安田文彦在采访中表示,关卡设计受到了《黑暗之魂3》(下简称《魂3》)的启发。
2018年在E3游戏展亮相的《帕斯卡契约》(下简称《帕斯卡》),刚一亮相就被称作“国产黑魂手游”而备受期待。
2019年万代旗下的《噬神者》团队,将黑魂的设计理念,结合了自身共斗游戏的经验,推出了“二次元共斗类魂”作品《噬血代码》。
2020年,利用UE4制作的“类魂”游戏《致命躯壳》在Epic发售,引发国内最大游戏论坛NGA版上,新一轮对“类魂”游戏标准的大讨论。
2021年9月17日,国产克苏鲁风“类魂”游戏《明末:渊虚之羽》发布演示pv,引起玩家群体热议。(紧跟时事)
这些被冠以“类魂”之名的作品,往往一经出世就背负着极大的争议,褒贬具存。而当我们去询问那些抱有质疑的玩家,对这些作品的不满源自哪里,他们的回答往往是惊人的一致
——“没有‘魂味’”。
那么请问,什么是“魂味”?
更深入一点的问:“谁有权力定义‘魂味’?”
在这个问题当中,显而易见的存在两种语境——来自游戏玩家的阐述,以及来自游戏设计者的阐述。
在玩家的视角下,似乎在很多意义上,所谓的“高端玩家”化身成为了一种意见领袖,他们的测评成为了对该游戏有没有“魂味”评判锚点。常常有新人对某些游戏机制发出质疑的时候,会被一些老Ass(笔者注:对魂圈高玩的俗称)教导:“你操作太菜了”,或者“你玩到后期就会喜欢了”。亦或者他们会举出一些诸如“近路多少”、“篝火设置”,“难度曲线”的例子,再用“黑魂里却如何如何”进行对比,以此佐证这款游戏确实有或者没有“魂味”
在设计者视角下我们当然可以举出更多的例子来,我们可以去拆解一款游戏,是否有纯净UI、系统便于学习、关卡良好引导、战斗机制丰富、键位逻辑合理、摄像机视角跟随、美术素材精良、状态机中动画衔接流畅等等。设计者写反推案时,可以画出一个大大的思维树状图,以详细的分类给出,黑魂具有哪些游戏要素。而只要我做出的游戏有这些要素,那么我就是一个“好”的类魂游戏。
但是,这两种视点,无论哪一个,都是一种,基于自身经验的事实判断去推演一种价值判断的唯象表述,他的论述逻辑是这样的:什么是“魂味”?像《黑魂》的就是有魂味;为什么《黑魂》设计的好?因为黑魂有“魂味”。
这是显然一种典型的循环论证,因而不可能给出一个可证伪的科学评判。
一个比较现实的讽刺例子是,《仁王》的总监安田文彦在接受采访时,面对玩家“游戏不好玩”的质疑,他直言不讳的表达了自己的疑惑:“这么好玩的游戏,为什么大家不喜欢呢?”
而本文要做的,就是打破这种循环论证,给魂系列的游戏和宫崎英高本人“祛魅”。
转而利用客观的理性工具,去定量化、理论性、批判性的研究全体的“魂类”和“类魂”游戏。打破原有的“魂类”游戏(特指魂、血、狼)=好游戏,模仿宫崎英高“类魂”游戏=坏游戏的二元叙事。我们纵向剖开各个游戏,将游戏本身打碎,以各个关卡为单位进行研究。
须知,“魂类”游戏里面有“好”关卡,也有“坏”关卡,“类魂”游戏里面也有“好”关卡和“坏”关卡。“魂类”游戏里的“好”、“坏”关卡各占比多少?“类魂”游戏里的“好”、“坏”关卡又各占比多少?“好”关卡有什么通性?“坏”关卡又有什么通性?我们向上综合,理性抽象出一个优秀的3D银河恶魔城类游戏的一般性设计原理。
我们试图建立起这样一种理论:无论是否玩过黑魂,无论游戏技术高低,无论设计水平高低,当我去游玩一款“类魂”游戏时,都有这么一套行之有效的方法,可以让我对这款游戏设计的是否“优秀”,是否“有魂味”,做一个定量性的判断。
在对于黑魂的民间研究工作中,关于黑魂关卡的数值设计和机制设计,已经有了比较好的研究成果[2] [3] [4] [5] [6]。
本文的着眼点,将会是一个更宽泛的命题——黑魂的关卡地图的逻辑结构设计。
为什么是图论?为什么恰好是图论?
在1735年东普鲁士的 (加里宁格勒) 柯尼斯堡市区跨普列戈利亚河两岸,河中心有两个小岛。小岛与河的两岸有七条桥连接。
欧拉时代的柯尼斯堡地图,显示了当时七座桥的实际位置,河流和桥梁分别用蓝色和绿色标出
有人突发奇想:在所有桥都只能走一遍的前提下,如何才能把这个地方所有的桥都走遍?
问题提出后,很多人对此很感兴趣,在茶余饭后纷纷进行试验,但在相当长的时间里,始终未能解决。怎么才能找到成功走过每座桥而不重复的路线呢?因而形成了著名的“柯尼斯堡七桥问题”(Seven Bridges of Konigsberg Problem)。
这个问题是图论中的著名问题,也是世界上第一个图论问题。最终被当时的著名数学家欧拉所解决。
我们先暂且停下,从一个数学家的视角,欧拉将这个谜题称之为“问题(Problem)”。那么,如果我们从一个玩家或者策划的角度出发呢?
根据著名游戏设计师特雷西·富勒顿(Tracy Fullerton)表述的观点[7],构成一个游戏的四个必须要素是:
空间(Space)
规则(Rule)
决策(Decision)
目标(Target)
对于“柯尼斯堡七桥”而言,我们具有
游戏空间——柯尼斯堡普列戈利亚河上的桥与河岸
任务规则——每条桥梁只能走一遍;
玩家决策——行人可以自由的选择起始地点,以及过桥的顺序;
胜利目标——所有的桥都走过一遍。
是的,你没看错。在玩家或者策划的眼中,“柯尼斯堡七桥”不再是一个问题(Problem),而是一个游戏(Game),名叫“柯尼斯堡七桥游戏”(Seven Bridges of Konigsberg Game)。更一般的可以看出,鉴于这个游戏空间并不是任意一点可达的(桥下的河水对行人来说不可达),玩家(行人)被严格限制了探索区域,因此它不是一个开放世界,“柯尼斯堡七桥游戏”是一个事实上的“箱庭式关卡”。从游戏的角度来说,柯尼斯堡七桥本身也大抵是世界上最早的一批箱庭式关卡设计之一。
我们回到数学家视角,来继续看欧拉的故事,欧拉是如何解决这个问题的呢?
他在论文《柯尼斯堡的七桥》中,证明符合条件的走法并不存在,也顺带提出和解决了一笔画问题,成为图论史上第一篇重要文献。欧拉把实际的抽象问题简化为平面上的点与线组合,每一座桥视为一条线,桥所连接的地区视为点。这样若从某点出发后最后再回到这点,则这一点的线数必须是偶数,这样的点称为偶顶点。相对的,连有奇数条线的点称为奇顶点。欧拉论述了,由于柯尼斯堡七桥问题中存在4个奇顶点,它无法实现符合题意的遍历。
欧拉将7座桥抽象成了一根线,4处河岸抽象成了一个点,问题就被化简成了,分析这个4点7边的“图”的结构问题
而这些解析,最后发展成为了数学中的图论。
由此,借用这样一种“知识考古学”的办法追本溯源,我们成功在数学与游戏科学之间架起来一座桥梁——作为古典图论的源头,“柯尼斯堡七桥问题”既然也可以被诠释为一款箱庭式关卡游戏,并且这个游戏的“解法”是欧拉使用图论最终给出的。那么一个合理的反推是:我们有理由相信,得到了充分发展的现代图论,可以成为我们今日分析电子游戏当中箱庭式关卡的利器。同时,也指出了本文这套方法论的适用范围——即,3D银河恶魔城类游戏当中的箱庭式关卡。
类魂游戏,作为近十年来最经典的3D银河恶魔城类游戏,拥有清晰可辨的箱庭式关卡特征,这就是我们选择图论对其分析的缘由。
类魂关卡中的图结构
自然逻辑图
利用图论分析游戏关卡的做法,并非笔者本人的独创。早在2002年,Adams.David的一篇文章[8],就已经开始尝试使用计算机图论的方法平台跳跃类游戏的地图。随后历经几位计算机图论专家的发展[9] [10] [11].
到了2010年,Joris Dormans撰写的《Adventures in Level Design》一文[1]开始进入箱庭式关卡设计领域。在这项工作中,他试图利用图论的方法“有限开圆覆盖”划分出一张地图的“开放区域”,这张地图就是著名游戏《塞尔达传说:黄昏公主》当中的地图关卡:森林寺庙。借此,Joris Dormans实现了将关卡的“Space”(空间几何属性)转化为“Mission”(任务逻辑属性)。
《塞尔达传说:暮光公主》在“森林寺庙”关卡的几何空间与任务空间,图片源自Joris Dormans的《Adventures in Level Design》一文
Joris Dormans后续的文章则继续探讨了计算机生成类似关卡的生成语法(Generative Gammar)方案。本文的思路与之不同,我们并不在意如何生成地图,我们是要探寻如何评价地图。分析利用已经被游戏设计者们设计出来的地图,分析那些被玩家认为是“好”的地图是否具有一般性的结构。
另一方面,是对于魂系关卡的科学量化研究。在2016年,乌普萨拉大学的Valdemar Ribbing, Laban Melander两位科研工作者试图利用对兴趣点、捷径等交互要素的统计,来给予关卡评价以更定量性的判据[12]。不过受制于早期不成熟解包工具的限制,很多数据只能通过游戏内比照来定标。
近些年来,随着魂系游戏反编译技术的成熟。作为一个后继者,我们不妨直接借鉴前人的成果。第一步,就是要对《黑暗之魂1》、《黑暗之魂3》、《血源诅咒》、《仁王1》、《帕斯卡契约》这五款游戏的总共84张地图进行剖分。
首先,我们需要定义一些“类魂”游戏关卡地图当中,常见游戏元素的概念。
1.兴趣点(POI,Point Of Interest)
游戏当中可以吸引玩家兴趣、引导游戏流程、维持心流体验的可交互元素。主要表现为:篝火(存档点)、可捡拾的宝物、敌人、宝箱、可交互NPC、掉落的素材/增益道具,或者特殊的灯光、建筑、奇观等等。
2.开放区域(Open Aera)
在关卡中,由一簇POI所框定的一块可探索区域,一般具有明晰的独立于其他开放区域的地标、独立的敌人AI适用区域(NavMesh)、美术风格或素材等。在我们的绘图中,普通的开放区域用绿色圆圈标出。
3.路径(Path)
用于给予各个开放区域的连接关系的线型结构,一般不含有POI。
4.存档点(Point Of Save&Load)
POI的一种,玩家可以在关卡当中的此处,进行休整、升级、传送、回复、配队、备战等等操作。与该POI交互时,系统会记录玩家的状态,刷新地图时会将玩家位置重置到最近一次使用的存档点处。在魂系列里,被称作“篝火”;仁王系列为“神社”;血源诅咒为“提灯”;帕斯卡为“祭坛”。初始点由于其在整个关卡中的重要地位,会被自动划分成一个开放区域。在我们的绘图中,用橙色圆圈标出。
5.初始点(Point Of Start)
开放区域的一种,玩家第一次进入该地图关卡所处的位置,一般来讲此处的POI是篝火(存档点)。初始点由于其在整个关卡中的重要地位,会被自动划分成一个开放区域。在我们的绘图中,用蓝色圆圈标出。
6.Boss点(Point Of Boss)
开放区域的一种,POI一般为该关卡区域中最强力的敌人。到达Boss点往往意味着关卡探索的结束。Boss点由于其在整个关卡中的重要地位,会被自动划分成一个开放区域。在我们的绘图中,用红色圆圈标出
7.全连通路径(Undirected Path)
路径的一种,在我们的绘图当中,利用A —— B或A <-> B来表示。这个连线符号,代表A、B两个开放区域之间是完全连通的关系,从A点出发可以无条件进入B点,从B点出发也可以无条件进入A点。
8.单向路(Directed Path)
路径的一种,在我们的绘图当中,用A->B 来表示,从A点出发可以进入B点,但从B点出发不可以进入A点而不经过其他区域。具体例子如:悬崖,可跳跃平台,滑坡(这种是物理意义上跳过去就回不来的路);或者剧情意义上的单向传送(黑魂猎王之后传送舞娘、帕斯卡艾尔玛剧情战斗、黑魂1黑暗大蛇、血源诅咒被布袋哥抓进未见村等。)
9.单向门(ShortCut)
路径的一种,在我们的绘图当中,以
A—>—B
或
A—)—B
或
A
这三种符号均代表,第一次到达B点时,玩家无法进入A点。但当玩家到达A点开启该单向门之后,A、B两点变为完全连通状态。俗称“捷径”、“近路”。主要表现形式有:单侧可打开的门、可放下的梯子、需要踩动的电梯、可断裂的石碑、可踢倒的大树、需要转动的旋转楼梯等等
10.机关门(Mechanism)
路径的一种,我们标注为
A●——>B
用于表示需要钥匙、特殊机关、等级锁、剧情锁等才能从A点开启的通向B点的路径。尽管同样在第一次到达B点时无法进入A点,但与单向门不同,A点亦是到达不了的,也无从谈起从A点反向到达B点。玩家需要在B点之前的区域探索、成长,直到满足某一需求(找到钥匙、特殊机关;升级到足够的等级、做了特殊任务等),才能从B点进入A点。举例:黑魂1拿王器开金色大门;血源诅咒治愈教会上层、未见村后侧、通向禁忌森林的大门;魂3大书库大门、法兰要塞大门;仁王地图的等级锁;帕斯卡赐福之地四神柱等。
在我们后续的讨论中,称初始点、存档点、Boss点为“不动点”,单向门、单向路、机关门称为“不动键”或“特殊键”。(至于为何如此称呼请见下文)。
鉴于84张地图数量实在太多,无法每一张都详细展示说明。我们将绘制出的地图逻辑图全部附在附录“类魂关卡自然逻辑图一览”里面。(流泪了,鬼知道这么多张地图,我们这个只有两个人的研究团队,为了确定每一处最细小的悬崖,到底进游戏跑了多少遍地图才勉强画完,这种dirty work尽管收益很低,耗费时间最多,但又不得不做的,人都麻了。笔者按)
笔者特别精心挑择了如下三张地图:《仁王1》恶鬼栖息之岛、《黑魂3》幽邃教堂、《帕斯卡契约》伊瑟流姆,进行实例性的解说,讲述如何将从空间结构变换为逻辑的结构。
Step1:选取POI,对POI进行圆覆盖
我们引用同好手绘的《仁王1》恶鬼栖息之岛攻略地图[13]
《仁王1》恶鬼栖息之岛攻略地图
对于恶鬼栖息之岛这张地图,一个比较理想的选取POI的方法,就是取木灵(对没有玩过仁王的读者:一种可以给主角加强力Buff的特殊收集要素)、场景中的水桶(对没有玩过仁王的读者:可以灭掉场中不可进入的火区,相当于钥匙)、以及开启宅门的钥匙。
接下来,我们要用一个圆去覆盖各个我们选中的POI,并且我们要求逐渐的去“吹大”(For Expert:双连续映射)这个圆,直到发生下述三种情况之一时,我们才停止扩张这个圆:
1.如果继续扩大圆的半径,会导致包含进圆内的点与圆心之间不存在一条通路(这条保证了圆内各点都是同一“开放区域”)
2.如果圆周接触了某个地图上的特殊键(这条保证所有特殊键都能被画出
3.该圆与其他圆相切(这条保证各个“开放区域”相互独立)
选取POI,并不是完全随意的,这个不随意性就在于,我们进行了圆覆盖之后的这张图,必须满足这个条件:
所有特殊键都已经落在覆盖地图的任一个圆的圆周上。
此时,我们称这个圆覆盖是“合法(Legal)”的。
对于恶鬼栖息之岛这张图而言,我们得到的圆覆盖如下图所示:
《仁王1》恶鬼栖息之岛地图各个开放区域的划分
这样,按照我们对“开放区域”的定义“在关卡中,由一簇POI所框定的一块可探索区域”,就这样被划分好了。
Step2:依照各个开放区域之间的连通关系,将他们顺次连接
这一步没什么好细讲的,按照我们之前的全连通路径、单向路、单向门、机关门四种连通形式去连接就好了,对恶鬼栖息之岛,得到如下结果
利用四种键的定义,绘制出各个开放区域之间的联系
Step3:将开放区域抽象成点、各区域之间连通性质抽象成键,从地图背景上取下,整理绘制出该关卡的“自然逻辑图”
去掉地图背景,整理得到自然逻辑图
这样,《仁王》恶鬼栖息之岛关卡的自然逻辑图就画好了。
依照同样的原理,我们可以绘制《黑魂3》幽邃教堂的关卡自然逻辑图。[14]
《黑魂3》幽邃教堂地图与开放区域划分
依次画出连通路径,有
绘制出各个开放区域之间的联系
整理得到
幽邃教堂自然逻辑图
类似的,对于《帕斯卡契约》伊瑟流姆,引用同好的手绘地图[15],我们有
《帕斯卡契约》伊瑟流姆地图与开放区域划分
用四种连通关系连接各个开放区域
伊瑟流姆各开放区域之间的连通关系
整理得到伊瑟流姆自然逻辑图
伊瑟流姆自然逻辑图
到这里,其实我们已经可以开始“玩”这些绘制出来的结构图了,我们将这三幅图片并排放在一起。
左中右三张地图,分别为恶鬼栖息之岛、幽邃教堂、伊瑟流姆
不知道读者是否有一种“直感”,就是这三幅地图的结构,看起来有那么一点点不太一样?仁王的地图,点与点之间看起来关系更“分散”一点,帕斯卡契约的则联系的比较“紧密”,而黑魂3的地图则联系的更加“紧密”——甚至有些路径必须交叠着才能画出(For Expert:非平面图)。这是正确的,在4.1节,我们会科普性的介绍图论当中的“连通度”概念,即可确定性的描述这种模糊的感受。
关卡结构图中的最小生成树
那么,我们利用关卡当中的自然元素所构架的“自然逻辑图”已经画好了。作为一个实际的应用,我们不妨利用图论进行初步分析,看看能不能得到一些有趣的结果,顺便引入几个定义。
1.顶(顶点,Vertex)
由图中路径相交之处的点,称之为图的“顶”。
标注1,2,3,4的圆圈都是图的顶点
2.键(边,Bond/Edge)
从顶点到顶点的一个对应关系(映射),称之为“键”。
图的键,由红色粗体标出
3.链
由一系列顶和键交错构成的连续路径,称为“链”。
图中的一条链,由红色粗体标出
4.环路(圈,circle/loop)
首尾重合且各顶相异的链,称之为“环”
一个简单的图,如左侧图片所示,利用三种颜色一共标出了三个环。右侧图所示的1-2-7-3-4-7-1不是环路,因为有重复的顶点7
5.子图
左侧为原图G,右侧为图$G$的子图;
6.连通与连通图
对于一张图G,取其中两顶 u,v 。若图G中存在以 u,v 为起点与终点的一条链,则称 u,v 连通。
若图G中任意两个顶均连通,则称图G为连通图
左侧图中,$u,v$之间存在$u-2-3-v$这样一条链,$u,v$两顶是连通的。左侧图中任意两个顶之间都存在链,因此左图是连通图。对于右侧的图,因为标红的$u,v$两顶之间不存在链,所以右图不是连通图
7.最小生成树
最小生成树就是该图的所有包含所有顶点的子图中键数最低的连通子图。
左图为原图G,右图为它的一个最小生成树
易证最小生成树有如下性质:
最小生成树当中不存在环
在最小生成树中添加一条边会构成环
对于我们手中已有的“自然逻辑图”,一个自然的想法就是,通过依次找出环路,然后剔除环路中的某一根键,不断进行下去,就可以得到最小生成树了。主要的问题就显露出来:是哪一根键这么“幸运”,需要被剔除呢?或者,更细致一点的问——一个环路当中,哪根键最特殊,会被认为是用于“形成环路”(下简称“成环”)的键呢 ?这我们需要仔细分析四种键的作用。
1.全连通路径
两侧均连通的路径,最普通的双向路,很难想象有什么特殊之处。我们不认为任何一条全连通路会起到成环作用。
2.单向门
捷径,专为成环而生的键,构建起整个地图回溯式探索的主要结构组成。成环优先度最高。
3.单向路
单侧连通的路径。单向路通常以跳点的形式体现,部分是为了成环,部分是为了去往下一个区域。对此,我们不妨做这样的认定:当一个环路里,不存在单向门时,单向路才负责成环。也即单向路的成环优先度是第二位的。
4.机关门
通常意义上来讲,机关门是用于锁住新区域,而非在旧区域内成环,有很多极端的例子,甚至于打开机关门之后,只有一个藏有宝箱的小房间。但是例外依然是有的(《仁王》佐贺山的武士,某一面机关门),因此,我们把机关门的成环优先度放在最末一位。
这样,我们就可以安心的书写从自然逻辑图查找最小生成树的方案了。
《关卡逻辑图最小生成树方案》
对于任意环路:
1.若该环路存在单向门,则将全部单向门置为空。
2.若该环路不存在单向门,但存在一个或多个单向路,则统计所有单向路键,将被指向点的层级数(广度优先搜索,BFS意义上的“层级”)最低的那条单向路键置为空。
3.若该环路既不存在单向门也不存在单向路,但存在一个或多个机关门,则统计所有机关门键,将被指向点的层级数最低的那条机关门键置为空。
4.若该环路不存在任何特殊键,则将该环路缩并为一点。
此时可能有读者要问了:“自然逻辑图的最小生成树有什么用呢?”
作为例子,让我们看看黑魂3全游戏流程的自然逻辑图,并且将成环键标灰白色,使图结构成为最小生成树。
魂3全游戏流程自然逻辑图与最小生成树(成环键被标成灰白色)
仔细观察可以发现,黑魂3的全地图流程的最小生成树,事实上有两条“枝”(For Expert:最长链和极长链)。
一条最长链(即整个生成树所含的路径最长的链)由蓝色曲线标出,另一条极长链(即生成树一条旁支区域中最长的链所含的路径最长的链)由红色曲线标出
第一条很长,从火祭场开始,经由洛城高墙、不死聚落、磔罚森林、法兰要塞、地下墓地、伊鲁席尔、亚诺尔隆德直到最深处的地下——罪业之都结束。
另一条相对较短,起自火祭场,经过洛城高墙、洛城、进入妖王庭院截止。
(以及后续的无火祭祀场,但是这个无火祭祀场比较复杂,所以没写。事实上,解包游戏的结果显示,无火祭祀场和传火祭祀场其实是同一张图,只不过从不同的位置进入时,加载的天空球和敌人配置会不一样。
这两条路是什么呢?熟悉黑魂3的玩家可能很快就看出来了——这两条路分别对应两种设计师设计好的“游戏流程”。
第一条路,从高墙出发,击杀Boss冰狗下到高墙下方探索,猎王回来之后,再回到小环旗老婆婆处,击杀Boss舞娘,登上洛城。这一路是标准的魂3普通玩家的游戏流程。
另一条路,从高墙出发,直接击杀强力Boss舞娘,登上洛城。玩家只要能打过强力Boss舞娘,就可以在前期拿到后期的武器、装备、强化道具等。这一条路恰是留给高端玩家,速通黑魂3的流程。
也就是说,一个关卡的“自然逻辑图的最小生成树”事实上反映了设计者的设计意图,即设计者对玩家游玩流程的把控程度。
一个游戏、或者一张关卡,设计者留给玩家有几种游戏流程的选择,恰恰就蕴含在该图结构的最小生成树里。也就是说,从策划的视角来看,分析图结构的最小生成树,可以用于解析设计者的原本意图,快速写出的反推案。从玩家的视角,对于高端速通玩家或者想快速跑周目的普通玩家而言,列出图结构的最小生成树,也可以高效的帮助我们理顺游戏的必要流程,对于游戏攻略更加得心应手。
类似的我们来分析帕斯卡的地图“伊瑟流姆”。
伊瑟流姆自然逻辑图与最小生成树(成环键被标成灰白色)
同样的,我们也把最小生成树的几条极长的“枝”画出来。
一条最长链我们用蓝色曲线标出,另一条极长链用红色圆圈标出。三个黄色圆圈代表地图非主干路径当中形成的小环形结构。
可以看到,最长的枝(最长链)是放逐之径、水边塔二层、大树洞、教堂后门、教堂一层、水潭石山、遗物这一枝。这应该是设计者对玩家游玩流程的一个总体预规划。
另一条极长链,从放逐之径到无头骑士,这条比较特殊。仔细观察,整个地图当中的四条捷径,竟然全都指向这个红色圆圈内的区域,恰恰说明,这个区域是整个地图的连接核心,一条“中轴”。
此外,还有三条小的环路露出来的游离在外的键(For Expert:Dangling Bond,自由键)。
三条分别是:水边塔和大树洞之间,设计者制作了一个小区域的分叉结构;从教堂后门爬上教堂二层,再二连跳进入教堂内部;水潭与石山附近,有一个小路通向卖不存在之靴(致没玩过帕斯卡契约的读者:一种跑图用的强力道具。),再迅速回到主干道路上。
由上述推断,我们得到伊瑟流姆的设计意图应该是这样的:以放逐之径——无头骑士一线作为桥接整个地图的主轴,水边塔、大树洞、教堂、水潭石山等主要探索区域为旁支,每个旁支区域探索结束的位置,设计捷径将他们连回主轴,构成回路。为了增加趣味性和探索的难度,设计者又增补了三处小环路,用于隐藏主干道路、放置强力宝物以及扩大开放式探索区域。
以上就是笔者对于帕斯卡“伊瑟流姆”地图设计思路的一个试探性分析。我们直接去审视伊瑟流姆的原地图,它的几何结构也恰如我们所分析的那样。
暗红色直线标出“放逐之径—无头骑士”一线的主要桥接成环道路;四个主要探索区域:水边塔、大树洞、教堂、水潭石山,“恰巧”落在一条绿色直线上
可以明显的看到,水边塔、大树洞、教堂、水潭石山四个主要探索区域“恰巧”集中于一条绿色直线上——我们很难相信这不是来自于设计者精心构思的结果。
而放逐之径——无头骑士一线是一条长的、双向连通的路径,我们用暗红色直线标出,几乎平行贯穿整条地图。四个右侧的探索区域,每个区域探索结束的位置都会尽量拉出一条捷径,与主轴放逐之径——无头骑士一线相连,构成闭合回路。与我们对最小生成树的分析结果不谋而合。
最简逻辑图
本小节将是本文整套理论的最核心内容,这就是比关卡的“自然逻辑图”更进一步抽象的“最简逻辑图”的提出。
“最简逻辑图”并非空中楼阁,而是我们在使用“自然逻辑图”的过程中遇到了问题,才会冒出改进“自然逻辑图”的想法。
这个问题就是“自然逻辑图”的非唯一性。
我简单的举个例子,对于如下图所示的一张地图局部,我们画出来的自然逻辑图应该是什么样呢?
很遗憾的,随着我们选取POI的不同,这同样的空间几何结构,至少可以找出三种“自然逻辑图”的画法。
上述反例对于我们的理论来说,是巨大的缺陷。因为倘若同样的地图可以拥有不尽相同的图结构(For Expert:也就是讲,从几何空间到逻辑空间的双连续映射无法构成),我们就无法进行定量的解析分析,那么找出类魂游戏关卡设计的一般规律就是无从谈起。
为了解决这一问题,我们必须寻找一种“既约规则”——这种规则可以对已有的“自然逻辑图”进一步简化,得到更抽象的“最简逻辑图”。我们希望各个地图关卡的原图仅能对应一张最简逻辑图(For Expert:满射)。
为了良好的定义这套化简的既约规则,我们需要再次引入新的概念:
1.度(Degree)
对于每个顶点,我们定义与之相关联的键的数目为该点的“度”或叫“度数”。
此图中所示的顶点3,它的度数为5,有五条键与之相连
2.极小环
在平面图当中,极小环有着非常明确的几何意义——我们按照某一个固定的“手性”定则(譬如,我们知道,在走迷宫时,会有“左手定则”或“右手定则”,即遇见所有岔路口都固定向左手/右手方向转弯,最后一定可以走出迷宫),绕着一张图一直走,直到回到原点。形成一条环路,这时候得到的环就是极小环。
图中如红色方框所示,有三条极小环
更一般的对于非平面图,有极小环定义:对于图G,取一组它的环结构的集合。我们要求该集合中所有环的顶点和键必须覆盖原图G的所有顶和键。若该集合中任意两环结构不相同,且相互独立。则称该集合中所有环结构为该图G的极小环。我们也称“极小环”为“基环”,即,拆解一个图结构的“基矢量”
3.极大环
对一张图G所有极小环做模2加法(什么叫模2加法呢?就是说,如果两个环叠加形成新的图。如果只有一个环有对应边,则画上对应边;如果两条边重合在一起,则该边变成空置状态。你也可以称之为“异或”加法,只有两个输入值相异的时候,结果为1。输入值相同则为0。),此时得到的环结构称为图的极大环。
图结构的异或加法示意图
如图所示,红色的三个环为该图的极小环,蓝色的环(1-2-3-4-8-7-6-5-1)为该图的极大环
4.邻边
两个极小环的公共键,我们称之为邻边
5.不动点(Fixed-Point)
无论如何绘制自然逻辑图,其个数都不会发生变化的顶。在分析类魂关卡时,就体现为初始点、存档点和Boss点。
6.不动键
无论如何绘制自然逻辑图,其个数都不会发生变化的键。在分析类魂关卡时,就体现为单向路、单向门和机关门。
7.缩并(Contraction)
将与同一顶相邻两相同键合并为同一键的操作,称为键的缩并。
如图所示的操作称为对键的缩并
8.同伦(Homotopic)
这个概念很重要——它就是我们从“自然逻辑图”变换到“最简逻辑图”时的数学表述。\par
定义:我们称两结构X和Y同伦,等价于当且仅当存在结构Z,该结构属于X、Y的一个公共子结构,且可以分别由X、Y在连续的形变收缩下得到。
如图所示,X、Y均可以在连续形变下映射为他们的公共子结构Z。因此称X、Y同伦
9.同构(Isomorphism)
这个概念也很重要,在图论中,只要一个线性变换T是可逆的,那么这个线性变换T就称之为同构变换
简单意义上去理解,两个图同构,意味着两张图只是单纯的重命名(Rename)了顶,或者重排列(Rearrange)了键的位置,两张图本质上依然是同一张图。
如图所示,左侧和右侧的两个图结构是同构的,重命名并重排列各个顶之后,两张图本质上相同
10.无向图与有向图
键为有方向的图称作有向图。键无法分辨方向性的图称作无向图。
左侧为有向图,右侧为无向图
11.弱连通图与强连通图
在有向图G中,如果两个顶点 u,v 间存在一条 u->v 的有向路径,和 u->v的有向路径,则称两个顶点强连通(Strongly Connected)。如果有向图G的任两个顶点都强连通,称G是一个强连通图。
将有向图的所有的有向边替换为无向边,若该图是连通图,则有向图是弱连通(Weakly Connected)的图。
图中存在4—2的有向路径,但不存在2—4的有向路径,因此不是强连通图。若将此图无向化,可以形成环结构,显然有该图为弱连通
12.n顶环
一个具有n个顶的环路,称之为n顶环。
本图为5顶环
13.自由键(Dangling Bond,悬空键)
对于图中任一长链,其中除了首尾之外,其余顶点的度数为2,首尾任一点的度数为1,则称该长链上的任一条键为“自由键”。
图中4-5-6这条链为自由键
我们摆出的一张自然逻辑图,本图为《帕斯卡契约》的地图阿达米亚。不难发现,其实整张自然逻辑图里有许多“冗余”的全连通键。我们的最简逻辑图正是要删掉这些不构成环的键或者构成了全连通的“伪环”。
冗余的全连通键用红色箭头指出
我们需要一个完备的缩并键的规则集合,为此,我们要再回溯性的讨论四种键的各种组合。
首先考虑我们的“成环”判据。显然的,我们做出的自然逻辑图不是简单的无向图,甚至也不是简单的有向图——“捷径”这种线型结构,事实上在整个图论中就没出现过,但不妨我们类比着去研究。作为一种合理的近似,我们在判断一个回路结构是否“成环”的时候,不妨只讨论弱连通性下的成环,不要求强连通性的成环。
这种近似的,我们试图在谈论的是一张地图的整体结构。对于设计者来讲,是一种“顶层设计”;对于玩家来讲,仅当地图探索完成之后,整张地图的结构才在玩家的脑海里建构起来。捷径这种结构显然是有向的,但在地图探索结束、全部捷径被开启之后,这种有向就变成了无向。正因为如此,我们认为在探讨地图探索结束时才能完整显露的关卡结构时,只考虑弱连通性成环是合理的。
接下来看我们对环结构顶点的要求。一个成环的结构至少需要几个顶?答案似乎是三个,因为平面上最简单的多边形是三角形,它具有三个顶。
但事实上,两顶环和单顶环也是可以存在的,只不过比较少见——在地图当中,他们大多以藏于主路径边缘的小宝箱、小宝物或其他奖励性的收集要素的形式出现,一个合理的理解是,他们并不会参与主路径的成环构建。所以,我们的主目标还是要尽量将一张图里所有的极小环向三顶环那个方向去缩并。
另一方面,我们必须禁止两顶环,但是可以允许单顶环少量存在。——可能有人不好理解,为什么三顶以上都能允许,单顶也被允许,偏偏两顶就被pass了?这个是因为两顶环会导致一个很离谱的问题。假设点A与点B形成一个两顶环,那么从A到B的关系会有两种(For Export:这是一个双射,在我们写图结构的邻接矩阵时,A、B两点间关系对应的矩阵元同时存在两个数值,就没办法研究了。)无论是三顶以上的环,还是单顶环,任两个相邻点之间的关系都是唯一的(单顶环可以理解为A——A的一个连接,相当于自己映射自己)
这就是我们必须禁止两顶环的理由。
2顶环图例
单顶环图例
总结一下,我们的策略为“尽量三顶环,禁止两顶环,允许单顶环”,这是我们对最简逻辑图成环结构的顶数的要求。
下面我们考虑对键的性质的要求,全连通键肯定是尽量全部缩并掉,因为全连通键对成环只起到辅助作用,真正的成环一定要看不动键。
对于不动键,其实部分不动键依然有所冗余。譬如某条极小环里有多条单向路,这说明我们是连续多次跳悬崖到达了某个地方,尽管有多条单向路,但只有最后一条才实际起到了成环的作用。我们不妨将连续多条的同类型同向的单向路缩并为一条单向路,这样可以大大简化结构。
最后我们再分析一下自由键的问题。自由键的表述为:一长链,其中除了首尾之外,其余顶点的度数为2,首尾任一点的度数为1,则称该长链上的任一条键为“自由键”。
这样的结构显然是不能成环的。它在地图中,往往以:通向Boss的道路;探索途中的宝箱或特殊道具;特殊的NPC支线任务等形式出现。
既然已经确定了这些建都无法参与成环,为了分析的简洁性,不妨将这些键全部缩并掉。
最简缩并既约规则
1.考虑成环与否时,只讨论弱连通性下的成环判据。
2.若对某条键进行缩并会使得图结构中出现2顶环,则该操作不允许被执行
3.对于任意键两顶点的缩并,普通点与普通点缩并时,任取两者任一的名称为标识;不动点与普通点缩并时,将缩并后的点标识为不动点;不动点与不动点之间不可缩并。
4.检查自然逻辑图的全部键,若存在某顶点度数为1的键,则将该顶点与另一顶点缩并为同一点。标识规则如规则3。如此迭代,直到图结构中不存在度数为1的顶。
5.对任意极小环
,若
若这个邻边的集合当中存在全连通键,则缩并全部的全连通键。
执行5. 1)后,对于新的邻边集合,若存在相邻两边属于同一类型的不动键,则将两不动键缩并为一根同样类型的不动键,反复迭代直到该邻边集合当中不存在相邻的同类型不动键。
6.经过操作5得到的新图结构,考察与
7.反复执行上述规则3~6 ,直到图结构不再变化。
部分读者可能看这些规则有些眼晕了。我们在这里拿出一些具体例子来
下面演示黑魂3的关卡:洛斯里克高墙。我们给出洛城高墙的自然逻辑图如下。
洛斯里克高墙自然逻辑图
首先,根据既约规则4,图中存在5条自由键——离塔篝火、吸魂鬼支线、小偷支线以及两个Boss冰狗和舞娘。
作为第一步,我们将这五条键缩并为一点,命名规则按照规则3,得到
洛斯里克高墙对自由键缩并的结果
此时,可以看到图结构的极大环已经不存在重边了。
仔细观察上图,可以发现,图结构当中存在4个极小环。同时,极小环与极大环的邻边当中,有如下图所示的两条长链具有多条“冗余”的全连通键。
红色圆圈标识出来的两条长链内,含有多条“冗余”的全连通键
再注意到图结构中存在高墙一火、离塔篝火、Boss点三个不动点。根据既约规则5,一个简单的缩并思路是,将“洛骑塔”、“人脓屋顶”两个开放区域与离塔篝火区域合并。活尸小路、人脓塔与高墙一火区域合并。Boss点与羽翼骑士广场区域合并。由此进行线型缩并之后。得到新的结构为
对两条长链,根据既约规则5进行缩并,得到的新结构
根据既约规则6,观察图结构。图中共有4个极小环,其中,3个是三顶环且具有不动键,因此无法缩并。一个是四顶环,但是倘若要去掉任意一键时,要么删去不动键,要么破坏其他极小环的结构,这两种操作分别被规则2和规则3所禁止,是“非法(Illegal)”的。因此,这个图结构已经是最简逻辑图了。我们稍作整理,有
黑魂3关卡:洛斯里克高墙的最简逻辑图
最简逻辑图能够让我们更加清晰的理顺关卡的逻辑结构。从上图可以看出,整个关卡,洛斯里克高墙事实上由四个极小环构成。
一个四点环,从高墙一火起始,途经飞龙塔、离塔篝火,直到洛城中央广场的Boss为止,这一条是游戏流程的主干。
三个三点环,分别分支出“望远镜”、“宝箱怪”、“元素碎片”三个小的环路区域,在这三个区域正如字面意义上的,可以拿到强力道具、武器和素材
接下来,我们将在3.4小节证明,在这套最简缩并既约规则的同伦变换下,得到的最简逻辑图具有唯一性。
这里声明一下,为了保证来源复杂的读者群体,都能够完整的读懂本文构建的理论体系,笔者一直试图减少数学推论和公式的使用,尽量用图例来解释说明。但是接下来的证明,无论如何都需要使用大量的数学工具。因此,笔者建议对数学证明过程不感兴趣的读者直接跳过下一小节,直接进入3.5节“关卡逻辑图小结”的阅读。您只需记住这样一个结论即可:对于任意一张地图,在既约规则的化简下,有且只有一张最简逻辑图与之对应。
*同伦变换唯一性的数学证明
关卡逻辑图小结
这里,我们做一个小结:
当我们画出“自然逻辑图”时,其实我们已经简化掉了关卡中的许多要素——引导、美术、地形等等。我们就如同当年欧拉在解决“七桥问题”时候做的那样,甚至与连地图当中的几何要素——距离,都被模糊了。在自然逻辑图中,我们并不能直接读出,从一个开放区域到达下一个开放区域的物理距离是多少。我们唯一留下的,就是两个区域之间的“逻辑关系”。
更进一步的,当我们从自然逻辑图化简到更抽象的最简逻辑图时,其实地图当中“开放区域”和 “路径”这种概念都已经被模糊掉了。此时,图结构当中,唯一不变的,只有同伦变换下,依然并保持原样的不动点和不动键。
这种简化和抽象,是否过头了呢?笔者并不这样认为。原因在于,对于一个模型、或者说理论而言,越是抽象,通性和普遍性才能从复杂的表象当中显露出来
我们不妨去移情一下,一个玩家当他完全探索开启了整个关卡地图之后,他对于地图整体结构的把握主要源于哪些定标?
一个合理的想象是,玩家是不可能记住地图各个开放区域之间的具体的距离是多少,他可能有个大概的距离的估测,但这个距离的估测,也是由“途中经过多少个开放区域”这种方法来记住的,绝不可能是依靠对于物理距离的测算——除非他直接解包游戏文件,否则在流程内,这件事情是办不到的
这也是我们想要去诠释的一个方向——就是玩家在游玩关卡之后的满足感。
在玩家刚刚探索完一个关卡之后,他对于的关卡内可游玩要素的印象还很新鲜,这个时候我们认为,正是由本文的“自然逻辑图”去概述玩家对整体游戏流程的把握。玩家依然会记得各个开放区域内有趣的“POI”,他们会在脑海内建构这些区域之间的联系。他们可能不会画出来,但是关卡的结构,一定已经以一种模糊的、直感的方式被潜意识所记住。正因如此,在玩家的高周目流程中,他们才可以更快的完成关卡探索。
而至于“最简逻辑图”呢?这个图结构可就更抽象了,所有的兴趣点都被抽象掉,只剩下最骨干的不动点和不动键支撑着玩家对游戏关卡流程的记忆。一个合理的解释是,这是玩家在初次游玩该关卡很久很久之后,再次提起该关卡时的记忆模式。初见时期捷径的打开,是如此的令人印象深刻,以至于在长时间的闲置之后,老玩家依然需要利用存档点、Boss点和捷径去锚定关卡区域,而期间的游戏流程,尽管有趣,但是在对关卡整体结构的记忆中已经消逝在角落里。
所以我们讲,玩家不一定是懂得图论的,或者说,一个策划也不应该期待玩家懂得这些,但这不代表利用图论去分析研究关卡结构就是无效的。玩家可能不会用图论的语言去描述一个关卡给他们的感受,但也不代表他们在记忆他们的心流体验时,不会用“点”、“线”、“环”这些简单的图结构去记忆。而一个策划最重要的任务,恰恰是要让玩家说出他们想说但说不出口的话,让玩家做到他们想做但是做不到的事。为了达成这一点,策划们需要一些更多的“语言”,这种语言可以是镜头语言、肢体语言,可以是一个优秀的系统、战斗机制或游戏玩法,当然也可以像本文一样,是一种利用图论去表述关卡设计的“语言”。
图结构的稳定性
图的连通度
在第三章,我们对前人的工作进行了扬弃,最简逻辑图的建立,让我们得以将任意一个箱庭式关卡内部的逻辑关系,唯一的对应于一个纯粹的数学结构。从第四章开始,我们的任务,就是分析这些最简逻辑图,找出那个最适合的用于评价地图好坏的“观测量”
在这里,我们需要介绍图论里,用于衡量图结构的一个重要概念:连通度
连通度(Connectivity)
定义:对于一张图 G ,若去掉其中任意 k-1 个点之后,剩下的子图依然是连通图;且存在一种 k 个点的取法,使得去掉该 k 个点之后,剩下的子图是非连通图。此时,我们称该图 G 的连通度为 k 。并且我们称这 k 个点为图 G 的 k 个“驻点”。
举例:我们不妨考虑下面这样一张被投影到平面上的正四棱锥。
如上图所示,是5个点8条键构成的正四棱锥图结构
原图删去1个点,有2种非平庸的删除方案,2种方案得到的子图都是连通图
原图删去2个点,有3种非平庸的删除方案,3种方案得到的子图都是连通图
原图删去3个点,在我们删去1、3、5号点时,图结构变为非连通图。
综上,正四棱锥图的连通度为3。
连通度是干什么用的呢?它的主要作用是衡量一张图的“稳定性”(For Expert:鲁棒性,Robustness)。连通度越高,说明地图的连通性越难以被破坏,即去掉一些点之后,这张图依然可以是一张连通图。
拿出我们3.1节举例的三张自然逻辑图的地图,可以简单的看出,三张图的连通度分别是1,2,2
恶鬼栖息之岛、幽邃教堂、伊瑟流姆三张地图的自然逻辑图,简单的验证可以得到,三个图结构的连通度分别是1,2,2
我们直接列出《黑暗之魂1》、《黑暗之魂3》、《血源诅咒》、《仁王1》、《帕斯卡契约》五款游戏全关卡最简逻辑图的连通度计算结果。(注:各个地图的最简逻辑图请见附录)
这么长的表大概把读者眼睛都看花了,我们做一个简单的统计吧。
五款类魂游戏,连通度为1和2的关卡,对各自游戏总关卡数目占比一览表。
事实上,在这一步,就可以看出,仁王的地图设计其实出现了比较大的问题——所有的的仁王地图连通度都是1 。。。这里补充一点,一张正常设计的地图,它的连通度最低就是1——这保证了该地图是一张连通图。如果一张地图甚至不是连通图,那么说明它的地图存在一个部分的区域,被设计者设计好了,但是玩家无论如何都无法在游戏流程内到达...这是不敢想象的。
连通度为2,体现在游戏里,主要表现在玩家完整探索地图之后,仍能够回到初始的篝火点。
读者不妨仔细想一想,黑魂的地图设计,可以诠释为“局部的开放性探索+整体的回溯式探索相结合”,在游戏开始到游戏中期,地图可探索区域解锁速度非常快(恶魂五座石碑,魂1初始地点火祭场连接了五个大型可探索区域,魂3在活祭品之路后地图分叉、血源大教堂区连接了四个其他大区域,只狼到达苇名主城后可以去三个其他区域)。在中期到后期,则倾向于收拢、回到初始之地(这个是最明显的,除了魂2之外其他的“魂类”五部作品——恶魂、魂1、魂3、血源、只狼,它的最终Boss战都和出生点只有一步之遥,恶魂和魂1的都在祭祀场正下方,魂3是火祭场原地tp,血源猎人的梦境后院,只狼是在暗道前,教学关卡被剧情杀的位置)。
玩过仁王的玩家不妨再仔细考量一下,仁王的地图关卡,是否有哪张图,探索结束之后可以开启近路回到第一个神社处呢?很遗憾,答案是,没有,没有任何一张地图满足这个条件。我们看仁王1各个地图,其实它的环边比 l/e 一般都不低,基本徘徊在0.5左右。说明仁王1地图的成环数目其实不差,平均每两条路径就能成一环路。问题在于仁王1地图的连通度太低。也就是说,成环的“质量(Quality)”比较低,全都是局域性的小环路,没有全局性的大环路。
所以说,仁王的关卡设计,我们可以称之为“整体线性,局部回溯式探索”。
我们拿出一张仁王的地图、自然逻辑图和最简逻辑图出来看一下
比睿山的魔物原始地图
比睿山的魔物自然逻辑图
比睿山的魔物最简逻辑图
整理后的比睿山的魔物最简逻辑图
可以看到,仁王的设计思路是这样的——局部的优秀小关卡,然后用甬道将小关卡顺次连接起来。
这就是我们讲,它事实上整体结构依然是线性的,局域的小回路固然有助于加强游戏的有趣性,但是对地图整体结构在玩家脑内的形成是没有帮助的。仔细观察最简逻辑图,3个驻点将整张地图事实上的划分成了4个区块。也就是说,仁王的地图是“整体上的线性”。
比睿山的魔物最简逻辑图,3个驻点已经使用红色箭头标出
分析到这里,其实也差不多了,连通度是一个很有效的量,但是对于本文来说,它依然不够精确——正如玩家所见,几乎所有的地图连通度都是1,这里就缺乏了区分度。仁王的大部分地图在这一步受到了批判,但是更多的地图,尽管他们的连通度都是1,显然他们之间依然有区别。对于连通度而言,1就是1,2就是2,没有中间值。我们需要一个更进一步的量,一个更加连续的、不是像连通度这样分立的量。这个时候,图的 Cheeger 数就进入了我们的视野。
图的Cheeger数
我们先给出标准的数学定义
一个简单的计算Cheeger数的例子
可以看到,因为一共有5个点,所以显然有5种删点方案,其中没有任何一种导致图的连通性崩溃,因此得出图的“1阶 Cheeger 数”为
类比之,假如我们要删掉2个点呢?有且只有两种删法会使得图的连通性崩溃——分别是,删掉(2,3)两个点(注:以后用小括号标识的点我们称为“点对”),以及删掉(3,4)点对。因此有
读者不妨验证一下,其他删法都不能破坏连通性。
同样的,假如我们要删掉3个点呢?有三种删法会使得图的连通性崩溃——分别是删掉(1,3,4)、(2,3,4)、(2,3,5)这些点对,共计三种删除方法(读者不妨自行验证其他删法不能破坏连通性)。此时有
读者朋友可以看到,通过这样算比例的方式,我们就比较直观的将原先高度分立、只能是自然数的“连通度”变成了许多连续的“ k 阶 Cheeger 数”。
我们不妨将我们研究的五款游戏各个关卡的 Cheeger 数也算出来,制成表格。
为什么我们的 Cheeger 数只算到三阶呢?因为平面上最简单的成环结构——三角形的顶点数是3,我们在化简自然逻辑图的时候,也尽量将最简逻辑图当中的极小环向三顶环的方向去化简。考虑到三阶以上的图结构也很难被设计者考虑进去了,我们认为取到三阶为止是合理的。
从表中,对数字比较敏锐的读者可能已经看出端倪——一些被大量玩家群体公认设计的好的地图,包括但不限于魂1全流程、魂1绘画世界、大书库、亚楠城、塞恩古城、地下墓地、研究大厅、幽邃教堂、帕斯卡的圣塔等等。这些地图往往1、2、3阶 Cheeger 数都比较高。
但是, Cheeger 数依然不符合我们对观测量的需求,我们希望找到“一个连续的观测量”。连通度是一个量,但不是连续的;Cheeger 数是连续的,但不是一个量,有好多阶的数值。为了整合两种方案之优势,我们即将进行最终的观测量构建。
图的稳定因子
如何将多个阶数的 Cheeger 数统合为一个数?我们要求任一阶的图结构,都能在这个最终的观测量里体现出自己的价值,并且,不同阶数的 Cheeger 值互不影响,相互独立。满足的上述条件的一个最自然的方案,就是对不同阶数的 Cheeger 数进行线性组合。如下:
我们又希望,这个最终的观测量有这样两条性质:归一性、收敛性。
收敛性表现为,我们不希望随着图结构点的数目的变多(对应游戏实体,就是地图摊大饼式的越做越大)就可以使这个观测量的值无限制变大,否则对部分结构小而精的关卡设计就太不公平了。我们希望随着 Cheeger 数阶数的增大,该观测量可以迅速收敛到某个稳定值。
归一性表现为,我们希望最终的这个观测量取值范围在 0 ~ 1 之间,这样的话可以省去很多麻烦,与其他值做比较也简单很多。
正如我们之前对待 Cheeger 数的简化那样,由于稳定因子 y 收敛的很快,我们只计算到 y 的三阶微扰,即
很简单的,由我们前文计算出来的三阶 Cheeger 数:
再来仔细的考察一下,为什么 y 能用于定标关卡逻辑结构设计?稳定因子当中的各项来源于各阶 Cheeger 数。前文讲到每阶 Cheeger 数代表了图结构在更多被删点情况下的稳定度。但其实还有更深层次的理解。
我们考虑六个顶组成的连通图结构。当我们只需要1阶 Cheeger 数为1时,最简单的6顶环就可以满足条件。
最简单的连通度为2的六顶环
更一般的,对于任意关卡逻辑图,只要保证图结构最外侧的极大环所有顶的度都是2即可,那么就一定有该图的1阶 Cheeger 数为1。
倘若我们不只需要1阶 Cheeger 数为1,我们希望2阶 Cheeger 数也为1时。即任意删去两个点后,图结构依然是一个连通图。此时情况就开始变得有些复杂了,我们需要向结构中添加“精细”的环结构,如下。
一个简单的连通度为3的六顶图结构
倘若我们要求3阶 Cheeger 数也为1,即,我们需要图结构在被删去任意三个点后,依然可以是个连通图,则需要向结构中添加更加“精细”的环结构,如下。
连通度为4的六顶图结构
从上述的迭代操作中可以看到,低阶的 Cheeger 数反应了图结构的整体成环性质,但想要更高阶的 Cheeger 数也高,就需要我们向大的环结构当中添加更多小的环结构。
从这个角度来讲,我们可以得到这样一种看待稳定因子 y 的视角:稳定因子 y 越高,代表着各阶 Cheeger 数越大,也就代表关卡逻辑图当中的环,具有更加丰富、更加精细的结构。
类魂”关卡中的通用结构
经过我们的观察发现,有如下四种子图结构最常出现,下面做以展示。
1.正四面体结构
2.正四棱锥结构
3.三角星结构
4.五点三环结构
为了分析各种构型的优势与劣势,我们不妨列出四种图结构的数据表。
可以看到,四种子图结构的稳定因子都比较高,在 0.91 ~ 1 之间。
正四面体结构,稳定因子最高,且是四个点构成的完全图,连通性最好,常用于关卡中的小局域的、高质量的精致探索。
应用该结构的地图有——魂1:绘画世界、底层、地下墓地、小隆德—飞龙谷一线、公爵书库。魂3:大书库、幽邃教堂、教宗后院。血源:亚楠城、猎人的噩梦、研究大厅、小渔村。仁王:潸然落雪、佐贺山的武士。帕斯卡:圣塔、伊瑟流姆、赐福之地。
正四棱锥结构,稳定因子0.9636为第二高位,环点比高达0.8,常用于构造开放性探索区域,让玩家拥有更大的探索自由度。
应用该结构的地图有——魂1:绘画世界、乌拉席露、地下墓地、夹缝森林—底层一线、公爵书库。魂3:地下监牢、环印城、绘画世界。血源:亚楠城、旧亚楠、研究大厅。仁王:沉睡的灵石、蠢动的银矿、佐贺山的武士。帕斯卡:伊西索亚。
三角星结构,稳定因子0.94中位,兼顾开放性探索与延展性,极大环边数较多,以及两个度数为4的顶。
应用该结构的地图有——魂1:绘画世界、乌拉席露、地下墓地、城外不死镇、塞恩古城飞龙桥—病村一线、公爵书库。魂3:不死聚落、熏烟湖、大书库、幽邃教堂、法兰要塞、伊鲁席尔。血源:曼西斯梦魇、未见村、血源全流程、亚楠城、猎人的噩梦、研究大厅、小渔村。仁王:沉睡的灵石、蠢动的银矿、佐贺山的武士。帕斯卡:地下溶洞、海格姆、伊迪斯、圣塔、伊瑟流姆、赐福之地。
五点三环构型,类魂游戏最爱用的结构,能够保稳定因子0.91,延展性极好,极大环边数很多,方便向外延拓地图,有时甚至成为地图桥接的中枢核心。
举例:有这种子图结构的太多了,基本各个地图都有。举几个特殊例子吧——整个地图化简下来正好就是五点三环构型的:
北方不死院、妖王庭院、黑森林庭院、治愈教会上层、关原。
这几张地图的结构直接就是五点三环。也就是说尽管外在的美术素材千差万别,这几张地图内部的逻辑是相一致的——或者,更直白的说,这五张地图是“同构”的。
关卡普适类
在这一小节,我们将要做的,就是兑现在前言里的承诺——纵向的剖开各个游戏,给予各个关卡一个新的分类。
我们选择的参量就是前文中构建的“稳定因子 y ”。
作为一个尝试,我们不妨拿出前一小节所述的四种最简单的类魂关卡构型作为划线标准。
此时,我们可以看到全部关卡被大致相等的划分成了三个“类别”,我们称之为关卡“普适类(Universality Class)”。稳定因子 y 就是区分关卡处于哪一个普适类的“观测量(Observable)”。一般性的,我们会认为,同一个普适类里面的关卡,会有大致类似的一些性质,与其他普适类的会相区分开。
对于类魂游戏,在本文的方案下,我们将按照稳定因子 y 值将全部关卡区分为三个普适类——
高 y 普适类,代表关卡最简逻辑图 y 值介于 0.94 ~ 1 之间
中 y 普适类,代表关卡最简逻辑图 y 值介于 0.91 ~ 0.94 之间;
低 y 普适类,代表关卡最简逻辑图 y 值介于 0 ~0.91 之间;
我们不妨统计一下,五款类魂游戏,处于各个普适类当中的关卡数目占比为多少?
五款类魂游戏当中,属于各个普适类的关卡数目占各自游戏总关卡数目之比
我们由此可以看出,五个类魂游戏关卡的地图设计存在差异性。
先来看三个经典FS本家的魂类游戏。
稳定因子的应用
玩家满意度与稳定因子
这一章我们将开始探讨对稳定因子 y 的实际应用。请读者注意,直到上一章结束,我们的整个论述体系都是非常严格的、客观的。无论一个人他的游戏设计水平、游戏经济水平如何,只要利用图论,按照本文上述的范式来研究,就一定能得出结论——在解析值 y 的划分下,五款游戏的关卡逻辑有着本质上的不同。
魂1的高 y 关卡会更多一点,魂3的中 y 关卡更多一点,仁王的低 y 关卡更多一点。但是我们截止目前,能得到也仅能得到的结论是,魂1的关卡设计逻辑与仁王“不一样”,我们无法说明,魂1的地图就是比仁王“好”。因为“好”与“坏”这个东西是非常主观的,完全凭借玩家和评价人的喜好。
我们这一章要做的事情就不会向之前那样完全严格,我们试图去做一点“价值判断”,我们试图找到 y 值(这样一个客观的数学量)与玩家对关卡喜好程度(这个是主观感性认知)之间,是否存在一定的相关性。
直接去找评分网站上面的评分是一个最简单的方法,但是这些评分都有一个问题——太笼统了,我们需要一些更具体的、精确到每个关卡的评分数据。
作为一种尝试,我们发布了对黑魂3 、黑魂1 、血源诅咒 、仁王1 、 帕斯卡契约 五款游戏当中全部关卡评价的调查问卷。(编者按:事实上,我们也只能通过调查问卷的方式来得到玩家的游戏体验的反馈——尽管这方法非常的不可信。如果要求更进一步的、更有说服力的研究,只能祈祷神经科学的突破了,让我们能直接通过人体的各种体征信号来观测玩家的情绪体验。)
对于该调查问卷,我们直接列出玩家对关卡的打分,与该关卡的 y 值的坐标点图。
如图所示,各点给出了各个关卡的玩家评分均值以及误差棒
一个积极的结果是,可以看出二者确实大体成正相关。不妨拟合之,有
亚诺尔隆德(一代)、大树洞&灰烬湖、巨像墓地、魔王耀变、佐贺山的武士
这几张地图都获得了比较高的玩家评价,但是我们计算出来的 y 值却相对来说低很多。对于这几张地图我们如何分析呢?其实可以看到,这几张地图在各自游戏当中起到的作用往往不是“探索”而是“叙事”,让场景当中的奇观给玩家以冲击性,顺便补全世界观之类的。如果按照纯粹探索地图的角度来讲,灰烬湖、巨像墓地和魔王耀变,这三张地图都没什么好探索的...因此,我们再次对本文的理论适用范围做出限制——以探索为主要驱动的3D箱庭式关卡。
对《帕斯卡契约》关卡修整的一个试探性结果
作为本文方法论的一个应用,我们试图拿出国产游戏《帕斯卡契约》当中稳定因子 y 值较低的一张图,并试图通过对场景的小幅度修改,来增加地图的连通性,使得该关卡的环路结构更加优秀。
我们选取“海格姆”这张地图进行演示。首先,画出海格姆的最简逻辑图,与原地图并列,如下:
左侧为手绘海格姆地图,右侧为自然逻辑图
随后根据既约规则化简成最简逻辑图并整理,得
左侧为最简逻辑图,右侧为整理后的最简逻辑图结构
计算最简逻辑图的结构数据,有
初步修整的最简逻辑图
我们将这个最简逻辑图对应回原地图,就是在如图所示的位置两个红色方框区域内各添加一个单向门。
我们给出的两处需要添加单向门,设计者可以想象有很多种设置办法:从桥上踢落梯子到地面,以及推倒树桩将断桥连接起来
此时的关卡 y 值是多少呢?列表计算一下
海格姆关卡单向门修正建议
此时,减少了篝火数量,加强了地图的连通性与立体感,半强制性的要求玩家更深刻的理解地图结构,使得玩家在关卡探索结束后,对地图的整体满足感上升。
海格姆关卡存档点修正建议
综上,我们对《帕斯卡契约》海格姆地图的修改建议是,在黄色三角形位置添加存档点,并且删去其他所有存档点。在图中所示的三个红框位置添加单向门。此时,关卡的连通度会大大提高。
结论
什么是“魂味”?
回到我们最开始的那个问题,现在,我们终于敢于正面回答这个问题了。
所谓“魂味”,在关卡逻辑方面,意指地图中存在优秀的、丰富的、多层次的环路结构。
——这三个形容词一个都不能少,环结构的链不能太冗余,否则就不够“优秀”,稳定度差。数目太少也不行,但是只堆数目也不行。环结构大的层次(高阶 Cheeger 数),表现为首尾至少要相连,极大环才不会出现驻点。要有很多细致的层次(高阶 Cheeger 数也要高)这样才叫一个有“魂味”的关卡。
如何定量描述“魂味”?——我们可以通过计算关卡的稳定因子 y ,来定量化的描述“魂味”的多与少,乃至与其他地图的“魂味”浓度做比较。
对于不同类魂游戏,如何评价他们的“魂味”?——计算各个游戏全部关卡的稳定因子 y ,将所有关卡归入三个关卡普适类当中,看看他们的关卡在各个普适类中占比多寡。
如何设计一张类魂地图?能否设计出一张超越FS社的类魂地图?一张设计的不好的地图,如何修改成为一张好的类魂地图?
1)画出一张连通度大于等于2的最简逻辑图,根据最简逻辑图构建自己的类魂地图。
2)能,不仅能,而且比魂系列关卡更好的环路结构理论上存在很多很多,魂系列本身也有很多关卡设计的很差。模仿魂的类魂游戏有一些关卡做的也比魂要好,比如帕斯卡的圣塔和赐福之地。
魂系列之所以还没被超越,是因为截至目前,没有任何一款类魂游戏当中,高 y 普适类关卡占比大于魂系列的任何一部作品。
3)画出最简逻辑图,找出驻点,将驻点与次近邻点用不动键相连,检验新的地图稳定因子是否符合标准,成功之后,回到原地图去添加捷径。
到这里,关于类魂关卡的几个一直以来比较模糊的问题,现在算是有了部分解答。
下面笔者还是来回答几个大概会来自关卡策划朋友的疑问:
Q:本文所讲的以计算稳定因子 y 为评判标准的方法,是否过于教条,以至于限制设计者的想象力?
A:笔者不这么认为,首先,本文传达的是一种方法论,就是绘制关卡的最简逻辑图来研究关卡的方法。稳定因子 y 是一个构造出来的观察量,我们用的次数多一点而已,并不是规定了关卡必须拥有一个高 y 值。正如我们之前所述,几张叙事驱动的地图在低 y 值下,依然获得了玩家的好评。
此外有这样一个数学结果。6个顶连通图的个数为26704,7个顶的连通图数目为186万,对于8个顶的图,这个数字是2亿5千万。
而这才仅仅是8个顶,一般的类魂游戏关卡最简逻辑图,顶数大概是10个左右。也就是说,当笔者开始拿起图论作为工具时,事实上已经极大的扩充了可能存在的关卡数目。
试想,数以万亿计的连通图,他们都是潜在可能的游戏关卡,而这个数字远超过人类电子游戏史上所有已经设计出来的箱庭式关卡的总和。这难道不是极大的拓展了设计者的“可想象空间”么?怎么会限制设计者的“想象力”呢?
左侧图被称作$K_{3,3}$或汤玛森图,是最简单的连通度为3的图结构。中间的图结构被称作彼得森图,连通度为4,具有很多奇特的性质。右侧的图为花蛇$J_5$,性质与彼得森图类似。
如上图所示的三个图结构,在图论里面以其优秀的环路结构性质而著称,但是截至目前为止,并未有任何一款类魂游戏的地图逻辑结构给出类似上述三图的结构,也就是说,在图论当中蕴含着许多优秀关卡的原型。
Q:关卡是很复杂的,关卡设计里面还有很多,引导、美术、光影、叙事等等一系列要素,都能印象玩家的沉浸感,为什么没纳入讨论?你这么简化真的合理吗?
A:是的,您讲的没错,但是本文的讨论范围仅限于关卡的逻辑结构,本理论也仅适用于讨论关卡逻辑结构。至于本理论是否有效,请见第5章,我们对关卡的稳定因子 y 与玩家满意度两个变量做的相关性检验。
最后,还是总结一下本文的构建出来的这一套研究关卡的方法吧。
1.绘制关卡的地图,标注各类兴趣点
2.利用圆覆盖,划分关卡的各个开放区域
3.根据划分的区域绘制“自然逻辑图”
4.根据既约规则化简“自然逻辑图”,得到与关卡唯一对应的“最简逻辑图
5.分析研究“最简逻辑图”中的数据,比如稳定因子 y
在这套方法下,我们做了如下分析:
依照几个最简单的构型的稳定因子 y 值,划分出三个关卡普适类,证明了五款市面上常见的类魂游戏底层设计逻辑是有本质区别的。
最后利用调查文件的分数统计,得到了玩家对关卡的评价与稳定因子 y 值大致呈正相关的结论,验证了本理论的有效性。
一些对本理论的展望是:
对于尚未开始设计的关卡,设计者不妨直接的画出一些高连通度的图结构,并且利用这些图结构帮助自己设计关卡;
对于正在设计中的关卡,本理论的出现,可以帮助设计者改善工作流,加快原型迭代;
对于已经设计好的关卡,设计者不妨算一算自己关卡的稳定因子 y 值,如果不达标的话,可以分析最简逻辑图,适当添加不动键,让自己的关卡连通度更高。
鸣谢
在本文的编写过程中,笔者利用了两位同好的手绘地图作为绘制自然逻辑图的背景,在此感谢纳闷虎与幻虚道长两位的辛勤贡献。
在拆解地图的过程中,笔者也向王者遗灰Mod组的并非Nep、遗忘的银灵、神气的猫以及第一猎人的学徒等Mod制作者请教和学习了很多游戏解包与编辑器的使用,在此表述感谢。
此外,感谢Darkbblue、零悠悠、晓渔、hsyt、Fourier等硬核玩家对于类魂关卡与其他游戏机制的解析,这些工作给予了笔者极大的启发。
特别要感谢的是我的合作者Nori,他花费了很多的闲暇时间进入游戏跑图,在自然逻辑图的绘制上,也帮助了笔者很多。
在此,感谢各位同好的贡献!如有侵权,请联系笔者,笔者会添加水印或相关修改提议。
引用
[1]Dormans, Joris.2010."Adventures in Level Design: Generating Missions and Spaces for Action Adventure Games"
[2]Darkbblue.2019."魂系列基础系统讲解 冲击力-韧性机制"
[3]零悠悠.2019."关于连招理论以及反压制的解析"
[4]晓渔.2018."失落的罗德兰: 浅谈《黑暗之魂》的地图设计"
[5]hsyt.2016."我走过最长的路,是你的套路-黑暗之魂3关卡设计分析".腾讯游戏学堂
[6]Daniel Vella.2015."No Mastery Without Mystery: Dark Souls and the Ludic Sublime"
[7]Tracy Fullerton.2017."Game Design WorkShop"
[8]Adams,David.2002. Automatic Generation of Dungeons for Computer Games. Bachelor thesis, University of Sheffield
[9]Dale C. Arney,Alan W. Wilhite.2014."Modeling Space System Architectures with Graph Theory"
[10]Arney, Dale Curtis.2012."Rule-based graph theory to enable exploration of the space system architecture design space"
[11]Joris Dormans.2006."On the Role of the Die: A brief ludologic study of pen-and-paper roleplaying games and their rules"
[12]Valdemar Ribbing, Laban Melander.2016."Examining the Souls's series level design"
[13]纳闷虎.2019."[仁王]手绘地图高清重绘"
[14]纳闷虎.2018."[黑暗之魂3]手绘地图攻略"
[15]幻虚道长.2020."萌新向,帕斯卡契约全七章手绘地图"
附录
魂1绘画世界、底层、城外不死镇、地下墓地、病村、北方不死院的最简逻辑图
魂1全流程、恶魔遗迹、小隆德遗迹、乌拉席露、塞恩古城、黑森林庭院的最简逻辑图
魂1亚诺尔隆德、地下监牢、不死聚落、大书库、魂3全流程、卡萨斯地下墓地的最简逻辑图
伊鲁席尔、熏烟湖、魂3亚诺尔隆德、洛斯里克城、妖王庭院、洛斯里克高墙的最简逻辑图
罪业之都、噩梦边境、法兰要塞、大教堂区、拜尔沃金斯、幽邃教堂的最简逻辑图
教学大楼、猎人的噩梦、该隐赫斯特、旧亚楠、禁忌森林、亨维克阴森小巷的最简逻辑图
曼西斯梦魇、血源诅咒全流程、未见村亚哈革、亚楠城、小渔村的最简逻辑图
研究大厅、阿达米亚、海格姆、地下溶洞、赐福之地、治愈教会上层的最简逻辑图
伊西索亚、圣所、基布塔、圣塔、伊迪斯、伊瑟流姆的最简逻辑图
恶鬼栖息之岛、沉睡的灵石、不净灵山、比睿山的魔物、蠢动的银矿、对彼岸的思念的最简逻辑图
魔王耀变、黑暗深处、海鸣又起、关原、横越伊贺、秽土之城的最简逻辑图
佐贺山的武士、潸然落雪、信贵山的蜘蛛、拥有精灵的男人的最简逻辑图
稿件合作:一元(微信:smallkisshe)
商务合作:Amber(微信:lcxk6876767)
投稿邮箱:news@GameRes.com