同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

潯陽發表於2021-06-25
GameRes在此前推送的文章《多人撞上直播,當代遊戲的熱銷祕訣?》中曾談到一款名為《Scavengers》的遊戲,它是一款結合了PvEvP玩法與生存要素的多人合作射擊遊戲,每局遊戲中可同時容納60名玩家以及上百個AI生物。

前段時間,遊戲進行了一項名為“Winter Sports”內部測試,在新開發的ScavLab遊戲模式中,1700名真實玩家被聚集到同一場景,地圖中同時還存在著近8000名虛擬玩家,他們如山崩海嘯般席捲地圖上的各個角落,有幸參與此次測試的PCgamer的編輯記錄了這一盛況:

1700名玩家用凡胎肉身從雪山上滑行而下,又藉著彈跳機關飛回原點,雪白山坡上的人群宛若一條奔騰不息的黑色河流。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

它象徵著一種新型的多人遊戲或者是虛擬世界形態。

該遊戲的開發團隊Midwinter Entertainment成立於2016年,團隊人數不足50人。這麼一支團隊如何做出一款3A級別乃至具備革新意義的多人遊戲?

《Scavengers》背後的“黑科技”——英礴IMS

Midwinter Entertainment的聯合創始人Josh Holmes的來頭並不小,他曾是《光環》系列開發商343 Industries的負責人及創意總監,團隊中也有不少人曾供職於343 Industries。

在Midwinter Entertainment創立初期,他們就在構思一款大型PvEvP沙盒遊戲的可能性,並將“依託現有技術來推動遊戲開發”視為指導理念,由此可以專注於遊戲玩法的打磨而非自行研發一套核心技術。

與英礴(Improbable)的合作,促成了《Scavengers》的真正落地。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

Josh Holmes坦言,“第一次接觸 SpatialOS 網路層引擎時,我們看到了它的潛能併為之振奮。SpatialOS 能將遊戲會話的規模和保真度擴充套件到超單個伺服器可以達到的水平,這遠非一個小團隊能做到的。”

SpatialOS是英礴所研發的一個基於雲端的遊戲開發環境,一個後端網路解決方案,同時它也是英礴多人遊戲服務(簡稱“IMS”)的構成之一,官方對其的描述是“一個開放的、不斷擴充的技術&服務生態系統”,這一系統涵蓋了從開發到上線的全部環節,旨在為不同的工作室提供適配的解決方案。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

目前階段,這一系統主要分成兩個部分:開發側的SpatialOS與運營側的zeuz。

不妨先拿文章開頭所說的遊戲實驗來說明SpatialOS是什麼。

《Scavengers》的“Winter Sports”測試包含了數個特性,千人以上的真實玩家,即時遊戲,3D模型,物理碰撞。

網路遊戲發展至今,支援千人同屏、實時互動的3D網路遊戲並不多見,除了硬體渲染上的壓力,伺服器技術也是難點之一。

玩家在本地輸入的指令需要上傳至伺服器,處理後傳送給指令發出者以及相關的玩家,最終客戶端根據返回的資料將結果顯示在螢幕上。在這一過程中,交由伺服器處理的資料種類,傳送的頻率等,都會增加伺服器的執行壓力,而同屏的玩家數量將會使這一問題更加複雜。

為了實現《Scavengers》“千人同屏”的效果,必須對網路層進行革新,在此情況下SpatialOS呼之欲出。

SpatialOS採用的可擴充套件性架構突破了傳統單伺服器的限制,它相當於將不同的DS(Dedicated Server,專用伺服器)串聯起來,在所有DS上還有一個網路層來負責所有遊戲狀態的管理。在玩家眼中,它看起來就是一個無縫的單一遊戲世界。除此之外,SpatialOS還自帶網路層同步實現方案,便於跨服活動以及物理碰撞處理的實現。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

這絕對是多人網路遊戲史上的一項壯舉,一些MMORPG雖然也能達到千人對戰的效果,但前提是將遊戲效果拉到最低,而且它並不能保證玩家不卡、伺服器不崩;《EVE Online》雖然保持著6557名併發玩家的記錄,但卻是基於“時間膨脹”機制實現的,玩家與玩家之間的互動頻率、數量並沒有實際上顯示的那麼多。

而容納更多的玩家,解決大規模、高密度的互動性問題,只是《Scavengers》運用SpatialOS的一方面,在另一方面,它讓Midwinter Entertainment得以打造一個龐大、複雜的動態世界。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

Josh Holmes帶領343 Industries團隊在開發《光環5》戰區模式時,就受限於伺服器承載量上限的阻礙,他們不得不限制玩家、AI數量,簡化AI邏輯來保證遊戲體驗。而在《Scavengers》中,場記憶體在的AI生物多達上百個。

SpatialOS採用“AI負載拆分”的方法實現了這一遊戲需求。據官方介紹,AI邏輯屬於CPU計算密集型、但對延遲不太敏感的業務,像這些與核心系統耦合度不高的模組都能拆分出來放在另一臺伺服器上。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

此次《Scavengers》所進行的“Winter Sports”實驗中,測試伺服器能夠同時承載AI數量上限也是實驗指標之一,就結果而言,Midwinter Entertainment最終實現了“1700名玩家+8000個AI”的龐大規模。

一個龐大、“持久”的動態世界是《Scavengers》的另一個遊戲特色,在遊戲中,玩家與AI行走在雪地上都會留下痕跡,這些痕跡是永續性的,除非它們被新落下的雪所覆蓋,它讓玩家根據腳印追蹤“獵物”成為了可能。甚者,AI能夠對遊戲中發生的動態事件作出反應,比如根據環境變化重新設計前進路徑。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

這些功能的實現同樣基於SpatialOS這一平臺,它將遊戲狀態“實時”儲存在一個高吞吐量的資料庫中,該資料庫接收有關遊戲更改的更新,以確保遊戲的每個細節都能持續存在。《Scavengers》中玩家行為對環境產生的影響甚至在他們登出遊戲後依舊存在。

“ 兩名網路工程師足矣 ”

這樣複雜的遊戲世界、這般龐大的玩家規模,想必背後有著一支經驗豐厚、數量可觀的網路技術團隊。然而Midwinter Entertainment卻說“兩個(工程師)就夠了”。

2019年Josh Holmes接受媒體採訪時曾如此表示,雖然到了2021年團隊規模翻了近一倍,但依舊沒超過50人,這意味著遊戲後臺管理、資料庫整合、伺服器託管等大部分網路業務都是由SpatialOS一手操辦的。

“花越少的時間搭建技術,就可以把更多的時間投入在為玩家創造更具價值和影響力的事情上——比如更豐富的遊戲玩法和更酷的遊戲體驗。”Josh Holmes如是說道。

在實際的開發過程中,SpatialOS提供的幫助不僅在於包辦了大量的網路後端工作,它對於主流商用引擎的適配也能幫開發者省去不少麻煩。

《Scavengers》使用的是虛幻引擎,而SpatialOS為其開發了專門的GDK,做到了無縫對接,開發者無需改變他們熟悉的工作流程,就可以直接使用SpatialOS內建的整合開發套件。除了虛幻引擎,Unity甚至是自研引擎同樣適用這套方案,“靈活性”可以說得上是SpatialOS最大的特色。

SpatialOS中還配備了內建日誌、測量和檢查工具,幫助開發者分析及排除故障,無論開發何種型別的遊戲, SpatialOS都能夠幫助開發者進行更快的遊戲迭代,並簡化遊戲創意的實現過程,哪怕開發者在中途突然想要改變遊戲的核心玩法,他們也無需變更底層架構。

這一技術的實現或將改變目前的遊戲開發格局乃至遊戲開發流程,大型網路遊戲對於中小團隊來說不再是不可想象的,大公司的多人遊戲專案也能擺脫“立項定生死”的困局。

誠如Josh Holmes所說的,“如果沒有SpatialOS的話,我們必須要在開發流程一開始就做出某些決策,例如玩家數量、AI密度等,並且要讓這些決策落地,因為到了後期這些都將無法更改。”

Midwinter Entertainment的創意多人玩法與小團隊開發理念在英礴的支援下得以實現,二者之間的合作關係也在2019年迎來了新頂點——2019年9月,英礴宣佈收購Midwinter,Midwinter正式成為英礴旗下的自研遊戲工作室。除了Midwinter,英礴還在加拿大埃德蒙頓和英國倫敦設立了兩個自研遊戲工作室。

這些內部工作室積累起來的實戰經驗,也能為英礴IMS的服務物件提供更多的支援。

英礴 IMS:一站式解決方案

如果說SpatialOS 幫助 Midwinter解決了網路後端的開發問題,那麼zeuz則是為他們解決了運營維護的問題。

zeuz是一種裸機+混合雲的伺服器託管方案,其最大的特色是“靈活”。

玩家人數少時提供相對便宜的裸機伺服器,玩家數量暴漲時則使用雲伺服器,這種極具彈性的託管框架大幅減少了託管成本。《Scavengers》在規模測試階段,就受益於英礴提供的運維解決方案,成功渡過了壓力測試。到了搶先體驗版本(early access)上線後,zeuz的混合託管策略則幫遊戲抗住了持續湧入的大規模玩家。

不僅是《Scavengers》,《流放者柯南》、《逃離科塔夫》、《糖豆人終極淘汰賽》、《SCUM》等諸多熱門遊戲背後均有zeuz的支援,其中《Heroes & Generals》更是將託管、運營成本壓縮到了預估的50%,遊戲MAU增加了200%。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

SpatialOS加上zeuz,英礴成功搭建起了一套全方位的多人遊戲服務,可以為不同規模的遊戲工作室提供相應的解決方案,它的效率更高、成本更優、風險更低。迄今,英礴已與全球40多家遊戲工作室建立合作關係,通過英礴IMS幫助開發者解決開發乃至運維上的障礙。

在國內,同樣有大廠為其背書,2018年網易斥資5000萬戰略收購英礴少數股權,2020年英礴聯手騰訊,藉助騰訊雲讓SpatialOS成功在國內落地,同時推出了“礴雲計劃”,成功吸引了悠米互娛等知名開發商入駐。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?
開放世界MMO遊戲《代號:奧德賽》

這對於一些有出海需求但經驗不足的開發商來說同樣有所幫助,海外渠道對接、出海合作開發、規模化測試等業務也囊括在英礴IMS服務之內,它的伺服器佈局覆蓋了全球主要遊戲區域,同時提供7x24小時監管和支援服務,延遲控制、DDOS保護、線上熱更、容災等全方位的服務進一步解決開發商的後顧之憂。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

多人遊戲的新形態

對於希望降低技術風險、財務風險的遊戲開發商來說,英礴IMS的靈活性無疑能幫助他們簡化開發流程、削減運營成本,避免重複造輪子,在全球化運營的潮流中增加遊戲勝算。

不過,英礴IMS更大的意義在於它提供了一個想象空間。

從某種程度上來說,多人遊戲的發展反映了網路技術的發展。從回合制遊戲到實時互動遊戲,是幀同步演算法帶來的變化;《火箭聯盟》的多人物理模擬玩法,是物理同步方案的優化;《絕地求生》、《堡壘之夜》等百人競技玩法的實現,是DS的深度優化。

而當英礴IMS突破了傳統單伺服器的限制、將多個DS串聯起來後,多人遊戲又會發生什麼樣的變化?

《Scavengers》只是英礴IMS運用的案例之一,Midwinter的想法是打造一個多元化的遊戲世界,讓PvP與PvE能夠摩擦出更猛烈的火花,讓玩家與玩家之間、玩家與遊戲世界之間能夠發生更多的意外。

它貫徹了英礴的“保真”理念。對於英礴聯合創始人Herman Narula來說,所謂“保真”並不是指遊戲畫面的高階,而是指遊戲的質量,比如遊戲的複雜性、遊戲的幀率,多人射擊遊戲就是這種“保真”理念的體現,它試圖讓網路射擊遊戲也能具備與單機遊戲一樣的高質量體驗,讓多人遊戲在保證“保真度”的前提下不斷擴大規模、創新玩法。

而英礴的終極目標是創造一個永續性的、沉浸的虛擬世界,這聽起來與當下的元宇宙(Metaverse)有些類似,不過Herman Narula早在2017年便有如此想法。

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?
來源:2017年《連線》雜誌採訪英礴聯合創始人

這個世界依託於龐大的計算力,大量的使用者,大量的AI,以及彼此互動時產生的各種複雜狀況,那些突發的、永續性的事件在這裡都是被允許的。

現在,《Scavengers》的“Winter Sports”邁出了堅實的一步,它讓數千人同時聚集在一個虛擬世界中,而不是分散在一張巨大的地圖上或分散在一個遊戲的“平行世界”中。

這些多人遊戲未來構想的建造者,是否也會有正在閱讀這篇文章的你的一份子?

掃描下方二維碼,關注英礴官方公眾號

同時容納近萬名“玩家”,這款多人遊戲是如何實現的?

來源:潯陽
原文:https://mp.weixin.qq.com/s/0T2OjkGXN7wrgTf8g576xg

相關文章