作者: jojonas1997
本文通過對遊戲產業基礎設施的說明,指出區塊鏈與遊戲技術方向的不同,並對全鏈遊戲與普通鏈遊、傳統遊戲的異同點進行了細緻的分析、。在第二部分,本文對全鏈遊戲的一些關鍵技術進行了介紹,並給出一些全鏈遊戲的案例。最後,本文給出了對全鏈遊戲的未來展望。
自Axie Infinity 火爆以來,鏈遊賽道湧現出眾多模仿者;隨著市場逐漸冷靜下來,新一代的鏈遊更多著眼於遊戲本身質量與可玩性的提升,並著力優化現有的遊戲內經濟模型設計。這些鏈遊均同屬於一類,即將游戲內資產通過代幣與NFT 的形式記錄上鍊;通過資產上鍊,實現孳息、自由交易、收藏、鏈上可組合、融資、社區、治理等多種玩法。這些新的概念與範式,與傳統遊戲之間具有較大的區別。
客觀來說,這一類鏈遊具有自身的優勢,也有著很明顯的缺點,但毫無疑問是玩家對鏈遊最直接的認知來源。另一類並不被大眾所關注的領域,則是on-chain game(後文稱之為“全鏈遊戲”)。與普通鏈遊所不同的是,全鏈遊戲的所有遊戲邏輯均以智能合約的形式部署於鏈上,正因為如此,受限於現有的區塊鏈技術,全鏈遊戲無法實現複雜的遊戲內容、精緻的美術,一般會具有十分簡潔的玩法。
那麼全鏈遊戲存在的必要是什麼?為什麼有相當一部分用戶看好全鏈遊戲?全鏈遊戲與普通鏈遊,甚至傳統遊戲之間有什麼區別?全鏈遊戲未來發展的方向在哪裡?
本文將以這些問題為核心,逐步梳理全鏈遊戲的相關知識,以建立對全鏈遊戲的基本認知;並作出對全鏈遊戲未來發展的一些展望和期待。
遊戲的基礎設施
全鏈遊戲,簡而言之,就是將游戲的所有核心邏輯,包括狀態存儲、計算與執行等,全部部署於區塊鏈上。直觀來說,現有的區塊鏈技術一定是無法滿足大部分遊戲的部署需求的;但如果想要弄清楚為什麼,或者說擁有更明確的對比,我們需要了解,做一個遊戲,究竟需要哪些基礎設施?
以下是NAAVIK 對遊戲基礎設施的總結圖:
正如我們所熟知的,遊戲開發首先需要一套引擎,例如unity,或者unreal 引擎。遊戲引擎並非必須,但如果從頭自己開發一部遊戲作品,是中小型開發者所無法承擔成本的一種選擇(對於大廠來說,出於競爭、定制化需求以及效率提升的緣故,他們有動機開發自己的引擎,例如Rockstar 開發了自己的引擎RAGE)。與任何其他行業一樣,遊戲行業也需要專業化以及分工合作來提升效率— — 數據顯示,超過90% 的遊戲工作室都是unity 的客戶。
另一個必不可少的基礎設施,是雲計算服務。諸如AWS、Google Cloud、Microsoft Azure 等,可以實現遊戲開發、構建、測試、發布、部署全流程全鏈條的託管,對遊戲開發效率的提升是數量級式的;雲計算同時在資源與帶寬共享、即時和動態後端支持等多方面實現更好的效果。
遊戲對計算的要求極高,大部分遊戲均有客戶端與服務器長連接、網絡低延遲、頻繁的數據寫入(並發讀寫)、玩家交互、承載彈性等各類計算能力需求。並發讀寫、低延時、極高的tps 要求,這些都決定了現階段甚至未來的區塊鏈技術,本身很難承擔遊戲計算的職責。
假使不考慮計算,僅考慮存儲,當前一款普通的遊戲,遊戲本身幾個G 到上百G 的容量,加上運存要求,也並非當前區塊鏈所能承受的範圍。 ETH 自2015 年,全部交易歷史在標準模式下大約是1TB,這僅僅相當於十幾部大型遊戲的容量。儘管遊戲內容並非一定要全部存儲在鏈上,但如果想要實現完全鏈上的遊戲(包括計算執行與狀態存儲),顯然並非單純是區塊鏈技術發展的問題,而是遊戲與區塊鏈二者在發展趨勢上永恆的矛盾。
遊戲行業發展至今,從最初的紅白機、像素遊戲,到今日的VR、3A 大作,玩家不僅僅需要精妙設計的玩法,對沉浸感、擬真度的需求也日益提升,這只會進一步提高遊戲對硬件的需求。換個角度,當前家用電腦的性能升級,最合適的上限抬高者與檢驗者其實就是遊戲;而區塊鏈作為去中心化的基礎設施,其性能幾乎不太可能達到同時期中心化硬件的性能巔峰。這就是二者的矛盾所在。
既然趨勢不可避免,完全的鏈上游戲,要去實現複雜的遊戲內容、精緻的美術等,就幾乎是不可能的;正如當前全鏈遊戲所表現出的那樣,極其簡潔的核心玩法,加上像素級的美術表現,這其實很像上世紀、遊戲行業剛剛發展起來的那個時期。每年上線的新遊戲不計其數,其中不乏佼佼者,既然玩家已經有瞭如此多的選擇,為什麼還要玩全鏈遊戲呢?
在說明這個問題之前,筆者希望將全鏈遊戲與普通鏈遊,以及傳統遊戲之間做一個對比,以便讀者更方便地理解它們之間的差異。
普通鏈遊、傳統遊戲之間的對比
如前所述,鏈遊市場經歷了最初一波的火熱與沈寂後,很多傳統遊戲產業的開發者加入,新一代的鏈遊在遊戲質量與可玩性上將有極大提升,且經濟模型設計也將有優化。為了便於區分,筆者將它們分別稱為“初代鏈遊” 與“二代鏈遊”。
由於市場已經對當前的鏈遊建立起初步的印象和認知,在對比全鏈遊戲之前,先將普通鏈遊與傳統遊戲之間做出對比:
1、遊戲的內容深度(玩法、數值、劇情等)
初代鏈遊的質量遠低於傳統遊戲,本質上是作為DeFi 換皮產品出現的,基本不存在專門的劇情設計,數值與玩法設計也較淺。初代鏈遊無論屬於什麼類型,其玩法內核都與傳統遊戲中“種田類” 遊戲相似,投入資源、產出收益,不同的是後者一般為休閒向,而前者則是真金白銀的投入,因此玩家收回投入、賺取利益的意願強烈。
二代鏈遊則更為符合本文對“普通鏈遊” 的定義,即不再只是粗糙的換皮產品,而是將區塊鏈作為遊戲資產確權的一種技術工具,以讓遊戲擁有更豐富的屬性。二代鏈遊在內容深度上基本與傳統遊戲看齊,例如illuvium,其玩法豐富度、遊戲內的寵物種類等(數值細節暫未釋放),即使撇除區塊鏈相關內容,放在傳統遊戲中也不遜色。
2、美術表現
如前所述,初代鏈遊大多作為DeFi 換皮產品出現,缺乏劇情、場景等設計,因此很多是以網頁的形式表現的。質量較高的,例如Axie Infinity、Theta Arena,開發了手游,但美術中規中矩。
而二代鏈遊,大多是傳統遊戲資深經驗的開發人員組成的團隊,獲得一定數量融資,其在美術上的表現也更為專業、優秀。 Illuvium、Ember Sword 等產品,均擁有不輸於傳統遊戲的美術品質。
3、經濟模型
這是鏈遊區別於傳統遊戲較大的一點。
傳統遊戲,由於遊戲內資產均為中心化服務器發布,存在極高的不透明度與可控性,並且大多難以在遊戲內自由交易,所以遊戲內的經濟設計,對產品成敗的影響並不如其他因素高。而對於鏈遊,透明且自由交易的代幣與NFT,讓其不可避免地帶上金融屬性,遊戲的經濟循環成為決定性因素。
初代鏈遊的火爆,極大地發揮了這種金融屬性的作用;但一方面,金融屬性吸引來的更多是投機而非真是玩家,玩家對遊戲沒有任何的忠誠度與感情;另一方面,簡陋的經濟模型讓很多遊戲注定短命、成為了撈快錢的產品。
對於二代鏈遊而言,一方面,很多遊戲在金融屬性的利用上做出了權衡,要么限制部分token 的自由交易,要么放棄代幣設計,只選擇NFT 的收藏職能作為金融元素的一點嵌入(例如Blankos)。另一方面,大部分產品都在盡量優化經濟模型設計,以與復雜的遊戲內容和經濟穩定的目標相結合,代幣工程本身也作為細分學科逐漸在發展。
4、運營營銷
傳統遊戲的發行,大多是在開發進入末期,產品基本準備完善的前提下開始的。遊戲的營銷,更多依賴於項目方自己,要么買量、要么常規推廣(例如通過遊戲主播),少有項目能夠帶動玩家裂變傳播;遊戲的運營,更多也是項目方的獨角戲,即使玩家提出意見,先不論已是事後,最終的決定權也在於項目方。
而對於鏈遊而言,由於token 的出現,運營營銷的手段產生了不少變化。自由交易的token,其價格會受到社區共識的影響;玩家對遊戲的意見會影響token 的價格,甚至token 價格反過來也會影響到玩家對遊戲的意見。這樣的背景下,社區成為運營與營銷的核心,項目方在社區中維繫玩家關係、解決玩家反饋、發起推廣活動,玩家也可以更直接地接觸到項目,項目方與玩家逐漸形成社區共識。
另一方面,由於核心在於社區共識,“運營前置” 成為了鏈遊通用的手段。一個項目往往剛開始開發,社區就會慢慢建立起來,項目方通過開發進度分享、社區聊天、社區活動等維繫與玩家之間的關係,以在長期形成共識。
最後,能夠傳輸金融價值的token,賦予了項目運作新的可能性。不同於傳統遊戲中,進行運營與營銷所必須支付的“硬” 成本,鏈遊的模式要豐富的多。很多項目往往會用空投預期激勵玩家幫助推廣,甚至用token 發工資,這些都類似於“期權”。並且從期權的角度理解,玩家成為了項目的一員,幫助共同建設項目。
5、融資
傳統遊戲的開發,大部分來源於自有資金。這是由於,遊戲是一個高投入高風險的行業,影響一款遊戲成功的因素過於復雜,很難用風險投資的邏輯抓住遊戲行業的確定性。少部分小體量遊戲,更容易融到資金,因為體量不大、開發週期短。對於遊戲大廠而言,一款盈利的遊戲往往可以帶來巨額的回報,並為後續產品的開發持續資金。融資往往並不針對項目,而是針對公司,後者的確定性相對更高。
而鏈遊的融資模式則產生了顛覆性變化。由於token 除去作為對遊戲資產的映射,其本身也以類股權的形式代表對項目的權益,很多項目會用token 進行融資。在市場環境向好時,很多遊戲僅僅通過demo 與營銷,就獲得了足夠支撐團隊數年的資金。這一方面加大了團隊作惡的風險,另一方面,又能夠為有想法的團隊提供更廣闊的可能性。
6、資產所有權
資產所有權,是最常被提及的,鏈遊與傳統遊戲之間的區別。
純粹從理論上來說,鏈遊中的遊戲資產,的確是可以被確立所有權利的。基於區塊鏈技術帶來的公開透明、可追溯不可篡改、token 價值傳輸,玩家通過私鑰可以對錢包內資產進行自由處置。這在傳統遊戲中是無法實現的,傳統遊戲內的“資產” 僅僅存在於項目的服務器中。
然而,這種“所有權” 存在實際意義嗎?至少當前並不存在。因為遊戲背後的開發、運營團體,仍舊決定著遊戲的生死。假設遊戲難以創造收入,或者僅僅因為合同糾紛而需要關閉服務器,儘管代表遊戲資產的token 仍舊在鏈上,但“資產” 本身的價值已不復存在了。
7、可組合性與IP
傳統遊戲,同一IP 下的遊戲,數據並不互通,即使這些遊戲為同一公司開發。以網易公司運營的陰陽師系列為例,當前已有陰陽師、決戰平安京、百聞牌等遊戲在運營,未來網易仍舊會繼續發布IP 內新產品,包括偶像養成、開放世界等多個產品。但陰陽師和平安京、百聞牌中的式神(遊戲內的收集角色)並不互通,玩家在其中一個遊戲獲得的式神無法用於另一個遊戲。
儘管IP 所有者禁止數據互通更多是出於商業考量(無法帶來更多利益),但即使允許互通,也存在很多細節問題亟待解決。除去IP 內互通,跨產品的合作也往往需要復雜的業務流程。例如網易曾在百聞牌中加入了日漫鬼滅之刃中的角色炭治郎與彌豆子進行聯動,這背後是需要大量合作洽談的;而如果只約定了百聞牌的授權,未來如果其他遊戲需要授權,還需要重複同樣的工作。
對於鏈遊而言,token 的確權與便利的可組合性為這些過程帶來了更高的效率提升。 IP 所有者有激勵通過已有NFT 實現新產品的冷啟動,並且通過創新設計避免利益受損;IP 授權只需通過NFT 租賃等手段實現,簡單而高效。
8、操作體驗
主要是玩家進入遊戲的過程。由於顯而易見的原因,鏈遊玩家需要有錢包,需要了解基本的操作,除非產品本身做到足夠的設計,讓玩家“無感” 遊玩整個過程。但這些產品體驗上的改進,並不能掩蓋鏈遊對操作要求更高的事實。
另一個差異點在於,由於鏈遊的資產以token 形式存儲於鏈上,token 的mint、transfer 等操作都需要消耗gas,從普通玩家的角度理解,相當於為資產確權、交易的手續費用。
9、玩家體驗
回到最純粹的話題:即玩家遊玩傳統遊戲和鏈遊,體驗上的差別大嗎?
傳統遊戲的設計者,喜歡談論“心流” 這個名詞,即優秀的遊戲所能帶給玩家的極致投入的狀態。玩家玩一款遊戲是因為想玩,為了玩遊戲,玩家投入了時間、精力和金錢,只為了獲得情緒獎勵。
對於鏈遊而言,心流的實現顯然更加困難,因為玩家的目標不再純粹。即使部分鏈游從設計角度切割了金融屬性,但顯然無法切割“所有權” 屬性,玩家仍舊可以進行點對點交易,金融屬性無可避免。對於一款優秀的遊戲而言更是如此,因為資產價值取決於遊戲本身。
另一個角度,當玩家得知自己在遊戲裡的獲得有機會被永久保存下來,並且擁有自由控制的權利,這無疑也會影響到其遊玩的心境。
如果玩家能夠克服這些區別,想必對於優秀作品而言,無論以什麼形式承載,提供給玩家的樂趣與體驗都是足夠相似的。
全鏈遊戲、普通鏈遊之間的對比
做出普通鏈遊與傳統遊戲之間的對比後,再進行全鏈遊戲與普通鏈遊的對比,前文所述的很多點又會發生一些微妙的變化。
1、遊戲的內容深度(玩法、數值、劇情等)
全鏈遊戲一般只具有世界觀,而不做詳細劇情設計。全鏈遊戲具有各自獨特的核心玩法,相比於初代鏈遊,全鏈遊戲的玩法將極其多樣,並且多為基於博弈的策略類玩法;相比於二代鏈遊,全鏈遊戲的玩法遠不如前者復雜,並且不會做過多養成堆砌的設計。
基於博弈的核心玩法,對全鏈遊戲的數值設計提出了極高的要求。這將與傳統遊戲或二代鏈遊中,某些類型的遊戲類似,例如MOBA。但全鏈遊戲的平衡性調整將更為困難,依賴於整個全鏈遊戲技術框架的建立。
2、美術表現
全鏈遊戲的美術仍處於像素級別,並且預計將一直成為其短板,除非技術框架做出突破性革新。預計相當一部分全鏈遊戲可能會採用類似初代鏈遊的網頁表現形式。
3、經濟模型
不同於普通鏈遊,經濟模型對全鏈遊戲的影響將看遊戲本身的選擇。嚴格來說,經濟模型應該歸為“玩法” 的子類,當玩法本身涉及到經濟時,經濟模型將變得極其重要;更多時候,“經濟模型” 只是成為玩法設計的一個代名詞。
全鏈遊戲的玩法設計與經濟模型設計本質上是同源的,均有一部分基於博弈論。如果放開對“全鏈遊戲” 中“遊戲” 二字的定義,早期很多流行的DeFi 創新協議甚至也可以歸為全鏈遊戲,例如convex 本質上是一個以“賄賂“為核心玩法,以”獲取更高利益” 為核心目標追求的遊戲。
4、運營營銷
全鏈遊戲由於其特性,小團隊與較低成本也可以進行開發。一方面,小團隊可能不會投入太多預算進行營銷;另一方面,全鏈遊戲的受眾群體極其垂直,會主動搜尋產品且擁有小圈子傳播的基礎。
由於全鏈遊戲以玩法本身為核心,因此其運營與鏈遊的運營存在有區別,更多偏向於技術維護。
5、融資
大多數全鏈遊戲並無發幣需求,這使得針對單個全鏈遊戲項目進行代幣融資的情況較為少見。但全鏈遊戲是天然與DAO 的組織治理形式相適配的,MatchBox DAO 是最典型的例子(matchboxDAO 是StarkNet 上致力於孵化全鏈遊戲而生的DAO 社區)。
6、資產所有權
相比於普通鏈遊,影響資產價值最大的因子— — 開發運營實體的不確定性,幾乎不再發揮作用。對於大部分全鏈遊戲而言,一旦開發完成、部署上鍊,後續的維護是否由原團隊繼續進行,似乎不會產生太大的影響。代碼本身是開源的,社區完全可以接替開發團隊,甚至開發本身都可以由社區進行。
正因為模糊了除去遊戲本身以外的所有因素,全鏈遊戲所發行的資產,其所有權相對來說更具實際意義,只要有人玩遊戲,全鏈遊戲就有得以存續的理由。
7、可組合性與IP
全鏈遊戲的可組合性,相對於普通鏈遊,最大的特點就是無許可。遊戲間的引用並不需要提前的商定,只要開放代碼接口,就能夠使用已有的資產,並為其賦予在另一個遊戲中的新定義。 (基於此,全鏈遊戲平台例如Cartridge.gg可能會發揮更重要的作用)
8、操作體驗與玩家體驗
全鏈遊戲的操作體驗不如普通鏈遊,因為玩家的每個步驟都需要消耗gas 上鍊,需要計算、執行以及存儲狀態。這些操作往往會打斷玩家的注意力,僅僅在少數遊戲類型上,例如回合製、策略類,可以將這種影響降至最低。
對比全鏈遊戲、普通鏈遊與傳統遊戲,簡要細節如下表:
可以發現,相比於普通遊戲,全鏈遊戲的優勢,即在於其某種程度上實現了“真正” 的去中心化;基於這一點,遊戲和社區治理結合、資產所有權等,都擁有了更高的可能性。全鏈遊戲對區塊鏈性能邊界、項目實現等的探索,也有可能帶來一些意想不到的技術突破。另一方面,全鏈遊戲對玩法的探索,可能不僅僅會惠及遊戲本身,還會影響到DeFi 協議以及更多區塊鏈項目的設計。
全鏈遊戲的技術
除去區塊鏈技術與傳統的遊戲開發技術,全鏈遊戲領域仍需要更多新技術的探索,比如游戲場景生成、機制模擬、交互設計等。以下是當前一些重要技術的介紹:
1、隨機數生成技術
隨機數生成技術是遊戲開發中常用的一種技術,其基本原理是通過一定的算法和種子生成一個偽隨機數序列。在遊戲中,隨機數可以用來生成遊戲中的隨機事件、隨機地形、隨機道具等,增加遊戲的可玩性和趣味性。
隨機數生成技術可以分為真隨機數和偽隨機數兩種類型。真隨機數是由物理過程生成的隨機數,如放射性元素的衰變、大氣噪聲等,具有真正的隨機性。偽隨機數則是通過一定的算法和種子生成的數字序列,看起來是隨機的,但實際上是可以預測和重現的。
在遊戲開發中,通常採用偽隨機數生成技術。一般的偽隨機數生成算法包括線性同餘法、梅森旋轉算法等。這些算法的基本思路是通過一個初始的種子值(或稱為隨機數種子),按照一定的算法生成一個序列,可以根據序列中的某些元素作為遊戲中的隨機數使用。
全鏈遊戲通常使用基於區塊鏈的隨機數生成技術,如基於區塊鏈的隨機數生成器(Blockchain-based Random Number Generator,簡稱BRNG),它使用區塊鏈中的區塊哈希值作為隨機數種子,從而生成可驗證的隨機數。在遊戲中,隨機數可用於實現各種隨機事件,如卡牌遊戲中的牌庫、角色扮演遊戲中的掉落物品等。
2**、過程生成(ProcGen)**
過程生成是很早就被應用於遊戲開發的一種技術,最早可以追溯到上個世紀50 年代的電影和動畫領域。例如1974 年的遊戲《Moria》使用過程生成技術生成了無盡的地下城,1984 年的經典遊戲《Elite》利用過程生成技術生成了無限的星系和行星等。
過程生成允許開發者通過使用可在區塊鏈上運行的富有表現力但成本低廉的算法,以編程方式創建豐富的世界(風景、地牢、城堡、雲……)。其通常試圖模擬自然世界的形成過程,在其輸出的偽隨機性中嵌入多樣性和真實性。
考慮到區塊鏈的性能與成本限制,過程生成預計可以成為全鏈遊戲內容豐富度的來源。在以太坊上存儲一個32 字節的字需要花費超過20000 個gas,即使是在鏈上存儲1000 x1000 的2D 瓦片圖也很難做到,更不用提遊戲中動輒數十GB 大小的資源素材了。
在0xPARC這篇對ProcGen 的示例中,算法將先生成世界的一個方塊,只有當玩家第一次與特定坐標交互時才寫入存儲。每次單獨調用程序生成算法可能相當便宜— — 初始化一個實際上無限的世界是“免費的”,生成一個方塊大約需要70000 gas。但通過運行程序生成,並在有人第一次踩到方塊時緩存方塊的屬性,可以在世界的所有玩家之間分攤將地圖存儲在鏈上的成本。
算法為每個即將生成的方塊運行偽隨機函數。開發者可以為遊戲對象分配不同的屬性值— — 例如,如果生物的散列ID 以0 結尾,則將其著色為藍色;否則,將其著色為紅色。之後則是創建噪聲函數,將純粹的隨機性轉化為具有可識別結構的輸出結果。常用的噪聲函數包括Perlin Noise、Simplex Noise 等。
3**、零知識證明(Zero Knowledge Proof)**
零知識證明是一種密碼學技術,用於證明某個命題的真實性,而無需透露該命題的具體內容。這種技術被廣泛應用於保護用戶隱私、保證數據完整性等領域。
在全鏈遊戲中,零知識證明可以用於驗證遊戲中某些行為或事件的發生。例如,玩家完成某個任務或挑戰後,需要向遊戲系統證明這一行為的真實性,以獲得相應的獎勵。傳統上,這需要通過向遊戲服務器發送相關數據來實現,但這種方法可能會暴露玩家的隱私信息,並且不夠安全。使用零知識證明技術,玩家可以在不洩露隱私信息的情況下向遊戲系統證明自己已完成某個任務或挑戰,從而獲得相應的獎勵。
除此之外,零知識證明在不完全信息博弈的規則實現上將發揮重要作用。不完全信息博弈是德撲、紅警等眾多經典遊戲設計的核心要素,指由於信息不對稱,參與者需要根據自己掌握的信息以及對其他參與者行為的判斷來進行最優決策。
由於全鏈遊戲將所有數據在鏈上公開,玩家完全可以通過對區塊數據的查詢來實現“完全信息”,一旦進入完全信息博弈,則會喪失不確定性帶來的複雜博弈策略,進而失去遊戲樂趣。而利用零知識證明,玩家可以向遊戲(規則方)證明自己滿足了遊戲規則和條件,而無需透露自己的信息給其他人。
例如,在Dark Forest 中,玩家不會向核心智能合約提交他們的行星坐標,而是提交對行星位置的承諾(通過行星坐標進行哈希運算),以及對有效的零知識證明進行哈希運算。這可以使行星位置保密。當玩家想要移動時,他們提交他們要移動的行星的哈希值和他們要移動到的哈希值,以及零知識證明,以證明這是一個“有效” 的移動。檢查Dark Forest 合約並不會發現其他玩家的實際位置,找到其他玩家的唯一方法就是利用算力暴力搜索。
4**、實體組件系統(Entity Component System)**
實體組件系統ECS 是一種遊戲引擎設計模式,將游戲對象(Entity)分解成組件(Component)和系統(System)兩個部分,從而實現遊戲對象的高度可重用性和可定制性。 ECS 通過解耦遊戲對象的行為和數據,使得遊戲引擎的設計更加模塊化和靈活,能夠更好地適應不同類型和規模的遊戲。
在ECS 中,遊戲對象(Entity)是一個抽象的概念,可以被看作是一個空殼,不包含任何遊戲邏輯和行為。遊戲對象由多個組件(Component)組成,每個組件只包含一些數據和狀態信息,如位置、顏色、大小等。組件本身並不包含任何邏輯,只是一些數據的集合。系統(System)是一些邏輯處理模塊,它根據組件的數據和狀態信息對遊戲對象進行處理,從而實現遊戲的邏輯。
在全鏈遊戲中,ECS 可以發揮非常重要的作用。全鏈遊戲通常由多個子系統組成,每個子系統都需要處理大量的遊戲對象。使用ECS 可以使得遊戲對象的行為和數據分離,從而更好地實現不同子系統之間的數據共享和通信,提高遊戲性能和可維護性。比如,遊戲中的碰撞檢測和物理引擎可以通過ECS 進行優化,將碰撞檢測和物理計算分離成系統,讓每個系統專注於處理自己的任務,從而提高整個遊戲的運行效率。
此外,ECS 還可以提高遊戲的可重用性和可定制性。由於遊戲對象的行為和數據分離,因此遊戲開發者可以輕鬆地替換或添加組件,從而定制自己的遊戲邏輯。同時,ECS 也可以提高遊戲的可維護性,使得遊戲引擎的設計更加模塊化和靈活,可以更好地適應不同類型和規模的遊戲。
全鏈遊戲引擎基本都採用了ECS,例如Dojo,MUD。
全鏈遊戲案例介紹
全鏈遊戲目前仍處於極為早期的階段,本部分案例介紹,將通過對幾個典型項目的玩法簡介,為讀者提供對全鏈遊戲的直觀印象。
Dark Forest
2020 年8 月14 日,v 神發推分享Dark Forest ,這也是這款遊戲第一次走進大眾的視野。在不久前的8 月7 日, Dark Forest在以太坊的Ropsten 測試網絡上發布遊戲的第一個測試版v0.3。目前遊戲仍在測試之中,已轉移至gnosis chain(xDAI)。基於gas 更為便宜的xDAI 區塊鏈,所有遊戲邏輯均直接運行於區塊鏈上,並在遊戲中使用了zkSNARK 技術,以解決“戰爭迷霧” 的問題,為玩家創造一個不完全信息博弈的環境。
Dark Forest是一款MMO+RTS 太空征服遊戲,遊戲名取自劉慈欣《三體》中所提出的“黑暗森林理論”,簡單理解就是,一旦某個宇宙文明被發現,就必然會遭受其他文明的打擊。
宇宙就像一片黑暗森林,每個文明都是帶槍的獵人,他們最初並不知道彼此的存在,但一旦發現對方,出於自保,最理性的做法就是消滅對方。
在Dark Forest中,玩家將會隨即出生在隨機生成的星球,通過征服其他星球來獲取更多能量與視野。玩家所在的宇宙會一直生成和擴大,需要用算力計算來撥開戰爭迷霧;因此,在破除所有戰爭迷霧前,玩家們相互不知道對手的底牌。玩家有可能遭受其他玩家的攻擊,但如果他沒有探索出攻擊一方的領地,就無法知道攻擊來源於誰,敵人實力究竟如何等。
遊戲中玩家攻擊其他玩家的星球的方式為發送能量,到達能量將與被攻擊星球的防守能量相減,若大於防守能量則可攻占該星球。星球會按時間流逝生產能量或銀礦,同時可以儲存飛船和神器。星球可以通過“broadcast” 廣播功能向宇宙發送廣播,這將使得該星球的信息對所有玩家可見。
Dark Forest通過zkSNARK 實現了完全去中心化的不完全信息博弈,而這種類似於撲克等經典博弈的玩法吸引了一批忠實玩家,玩家自發組成的生態也是此類去中心化鏈遊的一大亮點。由於眾多玩家自發為Dark Forest開發插件,遊戲逐漸形成了自由插件市場。另外,玩家甚至可以通過dune 等鏈上數據分析工具建立自己的儀錶盤,去分析對手的交易哈希,並從中發現有利於遊戲決策的信息。例如,在v0.6 第一輪遊戲中,一些玩家通過The Graph 和Infura,寫了他們內部使用的數據分析平台,只需要輸入玩家的地址,即可分析對方所有星球的信息,比如幾級的行星占比更高,直接從鏈上推演敵方的實力,進行策略優化。
Topology
Topology 是由華人開發者@guiltygyoza 參與創立的全鏈遊戲組織,目前在開發的主要產品為Issac。 Issac 是建立在StarkNet 上的一款全鏈遊戲,其設計靈感來源於劉慈欣的小說《三體》與《流浪地球》。
遊戲中,所有玩家組成一個居住在Ev 星球上的文明。 Ev 是一顆瀕臨滅絕的行星,位於三體世界(一個擁有三個太陽的恆星系),三顆太陽分別命名為:Boyuk、Orta、Balaca。 Ev 行星很可能與太陽相撞,屆時文明也將隨之毀滅。
所有玩家必須合作建設工廠管道和電網,將自然資源轉化為各種設備,並最終轉化為核鑽機和推進發動機(NDPE)。 NDPE 將安裝在行星地面上並進行鑽孔,利用核裂變產生的能量向上推動質量,為行星提供反向推力,改變其軌道。
玩家需要根據行星自轉和其相對於太陽的位置,戰略性定位他們的NDPE 和發射時間,以改變軌道或沿著安全的逃逸路線驅動行星逃離三體星系。
(@guiltygyoza 在個人博客中寫作有不少對於全鏈遊戲實驗性的思考)
Briq
Briq 是一個特殊的區塊構建協議,遊戲中使用的每個briqs 都是存儲在StarkNet 上的遵循ERC-1155 標準的NFT。任何人都可以使用briqs 構建一個結構集合,並以NFT 形式存儲它們,用戶將收集方塊來製作結構,但也要拆卸現有結構以回收方塊並用它們建造新結構。也可以將NFT 相互結合以製造更複雜的結構。
方塊和建築是無限模塊化的。
Briq 極大發揮了NFT 可組合、互操作,以及作為收藏品的優勢。玩家一方面可以組合briq 來創建NFT 進行收藏或出售,也可以任意地再次組合或者拆分原NFT 為全新的NFT;另一方面,briq NFT 可以在任何遊戲中使用,可以是某個全鏈遊戲中的道具,也可以作為玩家頭像使用。
GoL2
GoL2 是建立在StarkNet 上的一個模擬“生命遊戲” 的全鏈遊戲協議。 “生命遊戲” 也被叫做“康威生命遊戲”(Conway's Game of Life),或者康威生命棋,是英國數學家約翰·何頓·康威在1970 年發明的元胞自動機。
生命遊戲並不涉及玩家間的博弈競爭,更多像是對現實的一種抽像模擬。遊戲在一個類似於圍棋棋盤一樣的,可以無限延伸的二維方格網中進行。設想每個方格中都可放置一個生命細胞,生命細胞只有兩種狀態:“生” 或“死”。用黑色的方格表示該細胞為“生”, 空格表示該細胞為“死” 。遊戲開始時, 每個細胞可以隨機地(或給定地)被設定為“生” 或“死” 之一的某個狀態, 然後,再根據某種規則(生存定律)計算下一代每個細胞的狀態: 例如規定如下的“生存定律”: 1.每個細胞的狀態由該細胞及周圍八個細胞上一次的狀態所決定; 2. 如果一個細胞周圍有3 個細胞為生,則該細胞為生,即該細胞若原先為死,則轉為生,若原先為生,則保持不變; 3. 如果一個細胞周圍有2 個細胞為生,則該細胞的生死狀態保持不變; 4. 在其它情況下,該細胞為死,即該細胞若原先為生,則轉為死,若原先為死,則保持不變;
遊戲如何進行取決於玩家的初始狀態設定,無需進一步輸入。
從遊戲的視角來看GoL2,似乎它沒有任何意義,但是由於它沒有硬編碼設計,加上結果不可預測,因此在理論上它可以做任何事情。它可以和AIGC 技術結合併集成到其他全鏈遊戲中,遊戲中的所有內容都可以進行無窮無盡的演化,比如我們可以在星際遊戲中體驗到無窮無盡且不斷變化的宇宙行星、外星生物、礦產資源、自然植被,這會給全鏈遊戲的體驗帶來革命性的突破。
Lattice
Lattice 是一個全鏈遊戲開發團隊,開發了一個全鏈遊戲開發框架MUD。
簡單來說,可以將MUD 理解為一個底層的開發者框架(Framework),將有可能支持更複雜的鏈上應用。基於MUD 引擎開發的OPCraft 曾在Devcon6 上演示並引起較高話題度。 OPCraft 的遊戲形式基本複制了著名的MineCraft,玩家對虛擬世界的修改或建造信息,都被存儲到了鏈上。
0xPARC
0xPARC 是由著名全鏈遊戲項目黑暗森林發起人Gubsheep 建立的研究型組織,目前主要聚焦全鏈遊戲的前沿進展。
在0xPARC 的博客中,介紹了眾多全鏈遊戲的前沿進展。
全鏈遊戲未來展望
全鏈遊戲是區塊鏈技術應用的重要領域之一。它利用區塊鏈的不可篡改、可追踪和去中心化特性,提供了一種全新的遊戲體驗。與傳統遊戲不同,全鏈遊戲不僅提供了遊戲物品的所有權,記錄交易和活動記錄,還將所有邏輯與計算移植到區塊鏈上,在為遊戲提供更加公平、透明的環境的同時,激發玩家參與遊戲、參與創造,將極大刺激創新。
在《Game 2.0 in schematics》這篇文章中,作者描述了自己所構想的全鏈遊戲的未來,筆者認為很值得分享。作者認為,遊戲是基於規則所誕生的遊玩空間,規則由開發人員支持,遊玩空間則由玩家拓建。在最初的遊戲中,規則完全由開發者控制,玩家只能通過市場力量施加間接影響;全鏈遊戲中,規則背後的邏輯開源,玩家可以直接獲得相關信息,並參與對規則改變的治理進程。開發者和玩家之間的界限將日益模糊,通過激勵和包容每個玩家的個性化和細微差別的貢獻,內容和邏輯將具有更多的特異性和復雜性,從而產生湧現的生產力。
短期來說,全鏈遊戲的發展仍面臨諸多困難,例如將計算與存儲全部移植於鏈上的技術難度、社區是否有足夠能力與責任去接手游戲、除去垂直玩家能否吸引更多流量等,這些都需要更長時間的發展。而如果站在一個超長期的角度,全鏈遊戲無疑會擁有更旺盛的生命力。
未來的全鏈遊戲,將誕生出眾多創新的核心玩法,並有可能為DeFi 乃至傳統遊戲提供設計靈感;由於開發、運營實體與治理者之間可分離,全鏈遊戲的資產可以實現真正意義上的所有權;有機會脫離開發運營實體的全鏈遊戲,其生命週期或許會和DAO 治理結合地更為緊密;而終有一天,全鏈遊戲的開發引擎與套件足夠成熟時,普通玩家或許也能有機會利用它們實現自己心中獨特的想法。
參考資料
https://naavik.co/deep-dives/forte-blockchain-infrastructure
https://mp.weixin.qq.com/s/bzHMXrtTLsvciiUEEMoqzQ
https://volt.capital/blog/the-future-of-on-chain-gaming
https://www.guiltygyoza.xyz/2022/08/game2-in-schematics
https://0xparc.org/blog/procgen
https://newsletter.banklesshq.com/p/the-promises-of-blockchain-gaming
https://blog.zkga.me/announcing-darkforest
https://blog.zkga.me/introducing-dark-forest-lobbies
https://k.mirror.xyz/oAFPZSQohqF3qlTBbk4Mati9FWm9F6YlkaNVUq_cJuI
https://medium.com/id-theory/pureplay-on-chain-games-74169a38484a