10天,做一款Among Us-Like多人遊戲
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只是向開發者們展現了遊戲設計一面,把流行的東西變成自己的東西。
相關文章
- the differents among SQL Oracle mysqlOracleMySql
- 10天快速複製一款能火30天的小遊戲 這套路行得通嗎?遊戲
- win10 xbox不能多人遊戲怎麼回事_win10系統中xbox無法多人遊戲解決教程Win10遊戲
- Dependencies Among Local and Remote Database Procedures (252)REMDatabase
- Dependencies Among Other Remote Schema Objects (255)REMObject
- 《Among us》主創覆盤:遊戲突然爆火的背後,我們做對了什麼遊戲
- 7年做一款文字冒險遊戲,開發團隊經歷了這三大“天坑”!遊戲
- [GDC 2022] 《光·遇》陳星漢:創造一款多人遊戲需要思考的事情遊戲
- 連續13天沒做題
- AI時代,6小時做一款遊戲!AI遊戲
- WinForm 做的天氣查詢工具ORM
- 做一款3A遊戲,到底要花多少錢?遊戲
- iphone 5s cases best buy among the livingiPhone
- 騰訊旗下又添一家3A工作室,正開發一款有IP的大型多人遊戲遊戲
- 做程式設計師快30天了程式設計師
- 買一送一做促銷,這款多人遊戲上線一週吸引了65萬玩家遊戲
- sublime 做一款翻譯變數名外掛變數
- 10天衝刺第三天
- Blazor入門100天 : 自做一個支援長按事件的按鈕元件Blazor事件元件
- 一款吊炸天的AI圖片增強工具!AI
- 從《Among Us》到《Eville》,進化的社交推理遊戲遊戲
- 最近幾天做oracle stream遇到很多問題Oracle
- 在哥倫比亞,做一款日式RPG遊戲遊戲
- 純前端如何利用幀同步做一款聯機遊戲?前端遊戲
- 10天衝刺第九天
- 10天衝刺第二天
- 折騰了幾天,一款至簡的 hexo 主題Hexo
- 《Among Us》養活了海內外幾條街的AppAPP
- 【天行健】精益工廠佈局怎麼做?
- 在喬治亞,做一款奇幻風格的電子遊戲遊戲
- fir.im Weekly - 做一款 App 需要考慮什麼APP
- 重新設計一款Android App,我會怎麼做?AndroidAPP
- 團隊10天衝刺第三天
- 我為什麼要在天氣應用氾濫的今天仍還要做一款天氣 AppAPP
- 怎樣用骰子題材,做一款另類的城建遊戲?遊戲
- 《Splitgate》開發者:怎樣做一款有新意的競技射擊遊戲?遊戲
- 團隊10天衝刺第一天
- 團隊10天衝刺第二天