Dark Machine Games 拆解《White Knuckle》:双手分控的速攀系统与烘焙式抓取点
从一开始,塑造这款游戏的核心设计支柱是什么?
Holly:这款游戏源于我们多年来一直在制作的游戏和原型的环境,这些想法甚至在我们知道 White Knuckle 会是什么样子之前,就塑造了它的身份。因为这款游戏并不是以一个完全成形的概念出现的,而是在开发过程中才逐渐稳固下来,所以很难说我们从一开始就有一些核心支柱。
话虽如此,随着时间推移浮现出的设计支柱是:
- 玩家遇到或使用的任何东西都应该要么迫使他们前进,要么帮助他们前进,要么阻碍他们的前进,从而使当前迫使他们前进的东西变得更加危险。一切都关乎攀爬,关乎向上,如果我们的系统不能以有趣的方式服务于这一点,那我们就没能做出一款关于攀爬的游戏。
- 始终给玩家惊喜。遇到新事物应该带来惊讶或困惑,随后是缓慢而稳定的理解。新区域应该改变玩法的核心方面,让你在环境中前进时,每一局都保持新鲜感。
- 游戏应该是严格的、困难的,但始终公平。这不是一款 kaizo 游戏,也不是一款激怒游戏。玩家应该始终能够在危险发生之前预判它,或者有足够的时间在它变得致命之前应对新的危险。我们是在推动人们提升自己的能力,而不是让他们责怪游戏不公平。

攀爬系统是体验的核心,感觉非常具身、高风险。你是如何从玩法和技术的角度来设计和实现这个系统的?
Holly:我们知道我们想做某种攀爬×恐怖游戏,而对我来说,那意味着身体感。几年前我玩过一些 VR 攀爬游戏,那种贴附在巨大墙面上的感觉一直留在我心里。在原型制作的第一晚,我尝试了一个想法:让每只手对应一个独立的鼠标按键,并把它放进一个摆满简单立方体的攀爬测试环境里,我立刻看到了潜力。系统还很粗糙,但很吸引人。
《White Knuckle》的移动关乎动量,关乎在抓点之间摆荡的动作,关乎每次跳跃、每次抓握之间叠加的速度。它必须手感好,而对我来说,好意味着极高的控制水平,同时也意味着宽容。攀爬本身已经是高风险。悬在危险的高度上,做出更加危险的动作,永远都会让人觉得有冲击力、引人投入。所以从开发者的角度来说,我并不太担心。
我必须做对的事情是让它容易。我不是说让游戏变简单,我是说让攀爬这个行为几乎像走路一样成为第二天性,这样紧张感就可以来自玩家在试图解决眼前问题时所处的处境和把自己缠进去的乱局。在技术层面上,那种轻松、那种宽容,来自我称之为“Lazy Grab”的系统。
基本上,你不必精确地指向一个抓点然后再点击鼠标,而是可以一开始就按住鼠标,一旦检测到抓点,它就会抓住。此外,我给每只手一个短暂的记忆,记住它最后看到的抓点,所以如果玩家在摆荡经过一个抓点后不久点击,它也会抓住那个点。最后,我让玩家移动得越快,检测半径就越大,使快速攀爬或恢复更容易完成。
所有这些都意味着,在高风险情况下,你始终可以相信自己抓住东西的能力。你可能正在下落几十米,只要你把手伸出去,就很有可能抓住一块几何体或一个摇摇欲坠的岩钉。硬币的另一面来自玩法设计角度。《White Knuckle》讲的是攀爬穿过一座废弃的超级建筑,一个混凝土与钢铁的设施。
仅仅让抓点可抓是不够的,我希望玩家能够攀过任何感觉应该可以攀上的几何体,从墙上一块松动的砖到管道和梁的边缘。这是一个有趣的问题。你如何构建一个抓点检测系统,既能考虑来自不同角度的世界几何体,又能让关卡设计师控制?
解决方案很简单:提前构建所有静态世界抓点,用一个流程将它们烘焙进各自的几何体中,而不必去摆弄高级检测系统。生成器的效果比预期更好,而且作为额外好处,它还让我在积极制作关卡时直接查看玩家能抓取什么。


从技术角度来说,你们使用的是什么引擎?是什么让它成为适合物理驱动、第一人称体验的选择?
Holly:我们使用的是 Unity,不过我不确定这算不算是“合适”的选择,倒不如说这是我们习惯使用的工具。尽管 White Knuckle 是一款偏物理的游戏,但玩家控制器实际上完全不与 Unity 的刚体系统交互,而是拥有一套完全自定义的移动和物理系统。这对于让我获得所需的控制力、以调校游戏中移动的精确手感是必要的,而这花了数月时间打磨。
能否带我们了解一下你们构建可攀爬环境的典型工作流程——从早期的区块搭建到最终实现,包括危险物、通行点和打磨?
Quinn:环境最初在 Substance Designer 中开始,由 Holly 充实 White Knuckle 某个区域的视觉/风格核心。这些平铺贴图集会被导入 Blender。White Knuckle 外观(相比其他艺术风格)最大的优势之一就是流程的简化。大多数情况下,区块搭建/灰盒与美术制作是同时进行的。
在 Blender 中制作关卡资产时,很容易抽空到引擎里测试预期的路线,然后回到 Blender 继续调整,直到满意。路线完成后,会在 Unity 中进行一轮特殊危险物(环境危险、敌人)的分布和物品摆放。
Holly:我们其实不会以经典的“灰盒”方式对大多数关卡进行区块搭建。我喜欢在空间逐步构建时,观察纹理和更精细的形状如何影响设计。这似乎给环境留下了一种风格上的自然感,让一个地点相当干净利落地过渡到下一个地点。
这是一种奇怪的做法,只在 White Knuckle 的情况下才真正行得通,因为游戏发生在一个荒诞的设定中:一个混凝土可以与无意义的机械相遇的环境,而这一切都围绕着游戏中玩家与生俱来的动机:攀爬。

设计那些旨在被攀爬而非传统导航的空间时,最大的挑战是什么?
Holly:攀爬游戏作为一个类型,一个有趣的特点在于:它们围绕某种在我们的世界中与自然移动方式截然不同、而且极具挑战性的事物来构建。游戏设计,尤其是 3D 游戏设计,是围绕经过数十年打磨的基本移动与游玩模型发展起来的。走路就应该有这种手感,就应该用这些控制;跳跃就应该用这个键;开枪就应该有这种手感,等等。
攀爬是另一条轴线、另一种模式,而它的术语和设计尚未被编码进开发者的头脑,也尚未进入玩家的预期。在《传送门 2》的开发者解说中,提到了要让玩家哪怕只是抬头“向上”看有多么困难;在许多场景中,玩家实际上会陷入软锁、无法推进,原因仅仅是他们潜意识里拒绝抬头向上寻找前方的道路。
在攀爬游戏中,“上”就是玩家本该前进的方向。这意味着玩家与世界之间多了一层不必要的摩擦,而我们需要随着玩家在战役中不断深入,慢慢训练他们摆脱这种摩擦。

从美术角度来看,在如此快节奏、高压力的场景中,你们如何确保可攀爬表面、可交互物体和危险物的可读性?
Quinn:有几种方法让我们在整个关卡中保持可读性一致。我们的“可攀爬性层级”。最可攀爬的表面通过颜色控制来强调(如果它是要被抓住的,它的纹理中会强烈体现红色),并借助烘焙的环境光遮蔽来帮助这些元素突出。对于更“隐蔽”的路线,我们遵循这样的规则:如果一条边缘看起来像可以抓,它就应该能抓。
我们在 Blender 中用几何节点生成“抓握几何体”,用于检测但在游戏中隐藏。当关卡设计师规划路线时,会额外仔细检查生成的抓握几何体,以确保它是有趣的。在隐蔽抓握点之间分布更容易看到的抓握点,也有助于向玩家提示预期路线,并减少玩家困惑。
Jack:由于游戏的任何一局都可能迅速发生逆转,确保玩家理解特定空间中存在哪些威胁至关重要。在开发早期,我们选择使用更稀疏的配乐,在通常安全的区域播放。这样一来,在紧张时刻,敌人和危险的音频提示就不会在混音中那么争抢空间。
我们做了大量工作,确保这些提示在更远距离下仍然可读,让玩得更快的玩家也能捕捉到,同时又对以更有条理节奏游玩的玩家保留一定程度的真实感。


考虑到清晰度和性能的需求,你们用于环境、道具和可交互元素的资产管线是什么样的?
Holly:White Knuckle 的美术风格使得世界上大多数物体的制作方式都相当简单:基础建模、贴图、一些 Substance 3D 的工作(在 Substance 3D Designer 和 Painter 中都有),然后进行最终的分辨率与调色板精简。
Quinn:可交互元素,比如装备(岩钉、神器),通常从 Blender 中的高分辨率 3D 模型开始。我们会转到 Marmoset Toolbag 或 Substance 3D Painter 里做贴图。除非资产存在大量群体争用的情况,否则我们通常会跳过概念绘制。我们会为每段动画渲染出各个单独的姿态。
然后,在 Aseprite 中收窄调色板,并做一些绘制修改,以达到恰到好处的污渍程度,这正是 WK 外观的基础。接着取用最终确定的精灵表,在 Unity 中制作动画。整套工作流由 Holly 设计,目的是在不给 GPU 带来沉重负担的前提下,制作出相当不错的资产。
Roguelite 游戏常常难以平衡随机性与公平性。你们如何处理程序化或半程序化的设计,以确保每一次流程既不可预测又富有意图?
Holly:在 White Knuckle 开发的早期,我们就决定不做真正的程序化生成。游戏中的每个关卡都是手工设计的,只带有少量次要元素,然后被打乱顺序,这样你所看到的变体及其排列顺序就会显得随机。我们希望玩家在遇到新房间时去读路线,而在遇到之前见过的房间时去优化路线。
为了保持新鲜感,随着玩家在战役中不断推进,我们会把新房间注入到较早的区域,因此只要他们在不断抵达新地方,那么在重新开始时就会看到更多新事物。

在跨学科开发流程中,哪些工具和软件是核心?
Quinn:Blender、Aseprite、Substance 3D Designer 和 Unity。
Holly:同上。
Jack:White Knuckle 的音频几乎完全在 FL Studio 中制作,并使用大量第三方插件。Native Instruments Kontakt 音色库经常出现在游戏音乐中,同时也会使用 Synth1 和 Atonoise Pro 等免费乐器。许多音效也是内部录制的,使用 H4N Zoom 录音机录制拟音。
White Knuckle 的音频处理没有使用任何中间件,因为在开始制作这款游戏之前,我们团队中没有人有相关经验,但我们确实打算在未来的项目中弥补这一点。就目前而言,Holly 在 Unity 中出色地制作了工具,使这一流程显著轻松了许多。
抢先体验期间的社区反馈如何影响了进度、难度和新内容等系统的方向?
Holly:我们想走抢先体验路线的一大原因,是希望看看社区对各种不同功能的看法。我们刚刚发布了大型周年更新,这是游戏元进度方面的一次重大转变,其中包含了过去一年里我们观察玩家与游戏现有内容互动时逐渐酝酿出的许多想法和便利性功能。
尤其是经济系统的改动,源自与更广泛社区进行的数十次讨论。抢先体验最有价值的地方在于,你可以根据玩家对每项功能的接受情况来调整方向。即使只是抽象地倾听他们的意见也值得,因为如果你这样做,就会涌现出新的想法,让所有人的体验变得更好。

回顾过去,作为工作室的首个项目,在开发《White Knuckle》的过程中,你们最大的收获是什么?
Quinn:对我们工作室的流程来说,势头有多重要?《White Knuckle》自诞生以来,一直以极快的速度开发。它很好地限制了范围,保持了很高的社区参与度,并真正设定了一种“风味”,让我们一次又一次地回到其中挖掘更多想法。
Holly:我认为是如何管理我们的时间。我们雄心勃勃到有点过头,常常把自己摊得太薄。White Knuckle 教会了我们如何更好地规划,以及当某件事阻碍我们时如何放手。
Jack:在更具感染力或更奇怪的设计选择与更接地气的设计选择之间找到良好平衡。这让我们在给游戏添加新元素或做营销时,能够非常轻松快速地讨论。一个例子是货币系统,它允许你购买工具和增益来推进游戏,但货币是可以被杀死的昆虫。如果一个想法不符合我们对“是什么让 White Knuckle 成为 White Knuckle”的直觉,就很容易把它废弃或开始充实它。
最后,是否有任何幕后材料——例如灰盒关卡、调试工具或系统拆解——可以分享,以帮助开发者更好地理解这款游戏是如何构建的?
一张 Blender 中后期区域关卡的截图。

“Generated Handhold”几何体(以红色标记)会在我们建模关卡时自动应用,这使得我们很容易知道正在创建哪种攀爬环境。

这是我们少数几次进行了粗略灰盒(在同一大环境中)和路线规划的情况之一。

这是原型制作第一晚的截图,当时我们已经把基础的攀爬机制做了进去。

一个能够攀爬墙壁的 NPC 的早期 AI 测试截图。


Dark Machine Games
采访:David Jagneaux
相关链接
原文链接:https://80.lv/articles/breakdown-how-dark-machine-created-a-roguelite-speed-climbing-game
喜欢这篇内容吗?