10天,做一款Among Us-Like多人游戏

作者:浔阳编译 2020-11-06

Disc Us是Bari Silvestre、Mike等游戏开发者制作的一款多人游戏,开发者们在Devolver Digital与Disc Room联合举办的Game Jam上制作了该作品,游戏以Among Us为原型,同时融入了此次Game Jam的主题。

在Disc Us中,玩家们同样是扮演科学家,他们需要到各个房间收集氧气罐并投放到地图中央的氧气室,多数房间都布满了锯片式的障碍,玩家需要躲避障碍、集满氧气。而部分玩家将扮演反派,他们可以在“科学家”以及“圆锯”之间切换,阻碍科学家们完成任务。

你可以点击该地址游玩他们的作品:https://mwaayk.itch.io/discus

游戏开发者Bari Silvestre在gamasutra分享了他们的十天创作经历,GameRes对文章进行了编译,为方便阅读,删减了部分内容。

拒绝克隆

这件事一定要说在前头。Among Us是一款特别棒的游戏,我们尊重做出这款游戏的开发者们,他们以电子游戏的形式让Social Deduction Games(无确切中文译名,隶属桌游的一个类型,部分玩家称之为“嘴炮推理型桌游”)走向了公众视野。我玩过不少桌游,其中包括BattleStar Galactica 、The Resistance等同类型的游戏。


在Disc Us中,我们加入了一种截然不同的规则,这让它与Among Us区别开来。游戏有无限的生命,为嫌疑人准备的牢房,时刻在线的聊天系统,还有塞尔达式的房间。

“优秀的设计应当是一种过程,而非结果。”——Steven PONKIN

如果我向你们展示游戏的原始模型,你们大概率会发笑,因为它确实有点糟糕(摊手)。在头三天里,我们每个人根据投票结果来安排各自的工作量,结果引发了一系列问题,游戏设计与代码不忍卒读,我们不得不抛弃它。(好吧,这只是我不想再面对那堆问题迭出的代码的借口而已)

我们没有花太多时间在纸面设计阶段,而是直接在原型上打磨,当手头上有可供游玩的模型时,更有助于我们去想一些好点子。我们使用Photon PUN来搭建网络模块,同时利用SmoothSync做插值,补偿延迟以降低网络成本。

开四个游戏窗口来测试网络工作情况

在第一次迭代中,氧气室位于复活房间的中心,这引发了一些问题,比如新手玩家的对其的第一观感太过杂乱,比如它挡住了其他玩家的身影。


经过商议,我们把氧气室挪到了复活房间的上方。


发现问题,解决问题,反复循环

在我看来,游戏设计就是制造难题、解决问题。

在一局充满锯片障碍的游戏中,死亡是件正常不过的事,因此我们让玩家拥有无限重生的能力,该设计顺便解决了Among Us的存在的问题。

“如果你在游戏一开始就被杀死,你将毫无游戏体验。我们需要为这一类玩家甚至是所有死去的鬼魂创造一些乐子……”Among Us的开发者Bromander在开发日志中如是说到。

我们的方案是复活所有被杀死的玩家。这当然会引发一些问题,尤其是它与游戏中的反派使命相违背,玩家完全可以在复活后指认凶手。不过,我想到的却是一部电影——《忌日快乐》,它像是《土拨鼠之日》的孪生篇,故事主角重复经历自己被人谋杀的一天来追查真凶。

电影《忌日快乐》

同理,在Disc Us你很难知道是谁杀了你,因为凶手长着一副锯片的模样,被杀—重生减少了玩家收集氧气的时间,但无限重生也增加了反派的游戏难度,科学家可以反复尝试,反派被质疑就会下场。


一个问题的解决引发了新的问题。

我们为此设计了一个关押嫌疑犯的牢房,这让反派有了返场的机会,比如让同伴伸出援手,或者取得科学家的信任,又或者未雨绸缪,在游戏早期就往牢房藏钥匙。我们还设想了一个游戏功能,让反派在被关押的时候能够化身锯片,锯开牢房逃脱,其风险就是被发现的话将永久出局。可惜,Game Jam并没有留给我们太多时间。

出乎意料的游戏设计

如果玩家出生在反派阵营,天然存在数量劣势。我们需要从游戏设计上提供给他们更多优势,此处简单说几点。

在早期游戏中,我曾遇到一个BUG,我掉到了房间外,我突发奇想地加入了一个视角缩放的功能,以便于查看整张地图,同时还能移动到地图任何一侧,但这种移动方式太过于缓慢。


我在部分房间设置了瞬移点来取代原有的设计。


此刻,我们完成了游戏的基本循环,并对其进行游玩测试。在测试中,我们发现对科学家阵营来说,完成游戏任务过于简易,他们在短短一分钟内就能收集12个氧气罐,我们必须增加更多的变体,玩家也应该有不同的游戏风格。比如球体(游戏任务之一),它们需要被放置到房间中心的基座中,反派可以利用快速移动能力来将球体挪至其他房间,搅乱科学家阵营的计划。球体一旦被放置到基座上就无法再移动,这就像一场猫捉老鼠的游戏,由于球体只能通过瞬移通道被移至其他房间,它迫使正反阵营更容易碰面。

舍弃无效的设计

早期游戏中,从一个房间移动到另一个房间时会有一个地图缩放视角的过渡,后来我将其移除了,让玩家浏览到其他房间的信息破坏了游玩时的沉浸感。给相邻房间添加罩子的设计也很愚蠢,无论从策划还是从代码的角度。


在设计阶段,我还研究过随机地牢的可行性,由于时间有限,不得不报废。它是一个可行的方案,但需要经历大量的调整才能催生游玩的乐趣,并使房间布置看起来不违和。


屏幕抖动及其他功能

到了开发的第七天,我们添加了其他游戏功能,比如屏幕抖动,帽子、颜色变换等。以下是颜色变换的教程链接:如何利用着色器修改小精灵的颜色

https://gamedevelopment.tutsplus.com/tutorials/how-to-use-a-shader-to-dynamically-swap-a-sprites-colors--cms-25129


帽子最初的设想是做成动画帧。


后来我直接用SpriteRenderer修改了这些小精灵的模样,编写代码给它们戴上了帽子。


角色的死亡是游戏的重要组成部分,因此我们增加了骨骼以及血液特效来使其更具观赏性。Mike还特地做了个死亡动画,并利用着色器修改颜色,避免为每个角色制作帧动画。


游戏设计中的数值

游戏的平衡心、物品消费、移动速度,这些也是游戏设计中的一部分,它们需要更多的打磨。我不喜欢在脚本代码里修改这些数值,将它们分配到一个变量表中更有利于随时修改。正因为如此,我能够迅速对数值进行调整,让玩家代替我去测试这些数据。一旦出现问题,就能随时降低任务数量,加快玩家速度,缩小负向物体的框体、扩大正向物体的框体……


制作多人游戏的难点

制作多人游戏最难的在哪?回滚网络代码?延迟补偿?都不是,它难在吸引玩家来玩你的游戏。我可以利用多线程来测试游戏,但这终究少了真正的玩家。人们会实施怎样的破坏行为?他们如何实施暗杀计划?彼此之间是否会存在欺骗与误导?


我们的这些游戏设计与代码都没有经过实际测试,虽然我们在Newgrounds和itch.io中上传了Beta版,在获得首页支持后迎来了第一批测试玩家,庆幸的是,游戏获得了当日排行榜第四以及3.8的评分。玩家的真实反馈让我们有更好的修改方向。

SocialDeduction类游戏的启发

Social Deduction类游戏确实是一种趣味十足的游戏类型,不到5分钟的时间内充满了各种类型的交互,不同的玩家在彼此之间领略到差异化的游戏风格。


正如我朋友Barliman 所说的那样,“在该类游戏中,心理博弈是最有趣的部分。Among US是一个相当简单的游戏,但它却能让每一个玩家感觉到自己是游戏的一部分,玩家的行为决定了自己以及其他玩家的命运。”

玩家Lorie则说到:“尝试了一下,有更多的玩家的话会更有趣。”

译后记

原作者朋友Barliman 的点评说到了这一类社交推理类游戏的核心乐趣,心理博弈。而玩家Lorie的评论则点明了该类游戏的重点,玩家的差异性。

社交推理类游戏本质就是玩家与玩家之间的交互乐趣,它不像传统的电子游戏一样,有太多操作上的要求,游戏涉及的操作往往也被简化到极致,但它有不像传统的推理型桌游一样,既定的游戏流程,简单的交互环节,它发挥了电子游戏的交互魅力。Disc Us基于这一点出发,添加了更多的交互要素,比如充满障碍物的房间等,但又不至于像《冬日计划》那样,把游戏设计复杂化,依旧保留了Among Us简洁明了的特性。

玩家的变数,就是游戏的乐趣所在。游戏需要的,只是提供给玩家们一个发挥可能性的平台。而Among Us的爆发,让开发者们看到了这类多人游戏的潜力。

另一方面,Among Us的设计并不复杂,对某些开发者来说,照搬游戏设计或许不过两三天的事。Disc Us只是向开发者们展现了游戏设计一面,把流行的东西变成自己的东西。


最新评论
暂无评论
参与评论

商务合作 查看更多

编辑推荐 查看更多