思考 | 弱鏈上遊戲和強鏈上遊戲的優缺點

特別感謝 guiltgyoza、Ryan Zurrer 和 Swagtimus 對本文的反饋。同時,感謝 Sylve 和 MatchboxDAO 的社區提供的靈感和周到的討論。

遊戲行業正在慢慢地被區塊鏈技術所喚醒。後者將極大地改變遊戲格局,最終使遊戲玩家受益。

現階段,區塊鏈上的每個節點都必須驗證用戶發送給網絡的每個計算的有效性。區塊鏈可擴展性的主要瓶頸之一是如何在不增加驗證成本的情況下增加計算帶寬,這最終是區塊鏈的去中心化保證。驗證成本越高,網絡上運行一個節點所需的資源就越多。

區塊鏈向用戶收取的交易費用與節點必須驗證的計算負擔成正比。因此,在這個單一的堆棧上的計算成本是是相當高的。開發人員被迫圍繞這種限制編寫他們的代碼,這樣一來就無法表達鏈上應用程序的真正潛力。

自從 Optimistic Rollups(ORU)和 ZK Rollups(ZRU)的出現,這種模式已經改變。

這類擴容方案將計算由高端機器(證明者)在鏈下運行,同時在結算鏈上發布欺詐證明(在 ORU 上)或有效性證明(在 ZRU 上),這樣可以證明計算的完整性,或者換句話說,計算已經按照系統規則執行。

網絡的節點可以驗證所附的證明,其速度和成本比驗證計算本身要快幾個數量級,因此它們可以用相當便宜的成本實現複雜的計算,如遊戲動態。

例如,由 Cairo 驅動的 Starknet 虛擬機釋放了這種真正的潛力,因為它們的原生編程語言不受礦工可提取價值的約束。

由於這些證明的存在,區塊鏈網絡有可能成倍地提高計算的複雜性和吞吐量,同時保持驗證成本的線性甚至更低。

這是區塊鏈擴容的一個基本轉變。

在單體區塊鏈上,完全在鏈上運行遊戲在經濟上是不可行的,而且在可預見的未來仍將如此。這就是為什麼過去幾年發布的大多數區塊鏈遊戲都是混合形式的,這些遊戲只在鏈上有其堆棧的幾個組件,而在鏈下的專有服務器上運行其遊戲邏輯的核心部分。我們將把這個系列的區塊鏈遊戲稱為弱鏈上遊戲(weakly on-chain games)

像 Axie Infinity、Crabada 和 The Sandbox 這樣的遊戲就屬於這個類別。

通過鏈下擴展,用戶將能以低廉的成本獲得無限的計算。因此,遊戲的邏輯可以最終作為智能合約部署在鏈上。我們將把這個系列的遊戲稱為強鏈上遊戲(strongly on-chain games)

Dope Wars,Briq,Loots,The Realms,The Ninth,and Influence 等等,都屬於這個類別。

在這篇文章中,我們想探討一下每個宏觀類別的優勢和劣勢。

弱鏈上遊戲

思考 | 弱鏈上遊戲和強鏈上遊戲的優缺點

優點

  • 更加直接的規模化
  • 更容易被公眾受眾所接受
  • 良好的用戶體驗
  • 低延時
  • 快速修復錯誤的過程
  • 容易禁止作弊者

缺點

  • 自上而下的開發
  • 封閉的源代碼
  • 對相關遊戲發行商的信任
  • 可組合性和互操作性的保證較弱
  • 私有化
  • 非持久性

弱鏈上遊戲更容易擴展,因為它們在鏈下保留了大部分的堆棧。鏈上的遊戲部分通常是遊戲中由 NFT 代表的資產,以及遊戲中的代幣,這些資產可以在開放和無許可的市場上自由交易和轉讓。因此,遊戲活動發生在鏈下,然後經濟結算在鏈上完成。

弱鏈上遊戲的缺點可以追溯到中心化的根本問題,遊戲發行商扮演着中心權威的角色,並將可能意味着長期的尋租(rent-seeking)。一個遊戲發行商可以單方面開始審查,改變規則,或者消失。另外,這類遊戲的互操作性和可組合性是不可能的,因為遊戲邏輯不是在鏈上的。

從好的方面看,弱鏈上遊戲的用戶體驗與傳統遊戲相當相似,鑒於遊戲的客戶端和服務器連接類型,遊戲的延遲不是問題,任何更新都可以順利地推出。由於遊戲訪問是有門檻的,遊戲發行商可以禁止那些違反服務條款的玩家玩遊戲。

強鏈上遊戲

思考 | 弱鏈上遊戲和強鏈上遊戲的優缺點

優點

  • 開源的
  • 自下而上的開發
  • 潛在的可組合性和可互操作性
  • 客戶端抽象化
  • 信任最小化
  • 無許可的
  • 持久性

缺點

  • 用戶體驗
  • 默認情況下信息不隱蔽
  • 玩家可能會被暴露在反向追蹤和其他形式的礦工可提取價值中
  • 延遲性
  • 漏洞修復可能需要社交協調
  • 盜版

通過強大的鏈上遊戲,開發者可以利用任何公共的鏈上組件:

  • 一個物理引擎
  • 一個獲取隨機性的鏈上 VRF(虛擬路由轉發)原件
  • 代表技能樹的 NTF,可以移植到遊戲的任何模型上
  • 一個任務合約,任何人都可以在遊戲中部署和導入他們的任務

這些只是強鏈上遊戲所能促進的例子。

每一個遊戲組件都是潛在的可組合和可互操作的,並且可以無限地複製。

這就為無盡的、強大的自下而上的合作奠定了基礎。MatchboxDAO 就是這種舉措的一個活生生的例子。

強鏈上遊戲所解鎖的另一個偉大功能是客戶端抽象。用戶不會被迫使用一個特定的平台來玩他們的遊戲。他們所需要的一切是對一個節點的訪問。他們也不需要等待遊戲發行商在他們的平台上發布他們喜歡的遊戲。修改者將不會面臨任何可移植性問題。

現在讓我們來看看強鏈上遊戲的一些缺點和未來所面臨的挑戰。

我們強烈推薦鐵子們閱讀“區塊鏈遊戲的四個挑戰”,這是 Sylve 寫的一篇好文章。

UI/UX(用戶界面/用戶體驗)

在強鏈上遊戲中,遊戲合約的每一個狀態變化都需要在鏈上註冊。因此,用戶需要為他們願意在遊戲中執行的每個行動簽署一個交易。這種方案對於像即時戰略遊戲(RTS)這樣的高速遊戲是不可行的。

相對於以太坊的賬戶模型,賬戶抽象(AA)是一個相當引人注目的改進,像 Starknet 和 Optimism 這樣的 Rollups 正在實施。有了賬戶抽象,每個外部擁有的賬戶都是一個智能合約,它允許部署強大、安全和高度可定製的智能錢包。這將有可能在高層次上創建與我們與 Medici(我們的礦農)部署的相當類似的東西。

請注意,模塊邏輯甚至可以在熱錢包邏輯中實現

請注意,模塊邏輯甚至可以在熱錢包邏輯中實現

玩家將為任何新遊戲生成一個帶有本地密鑰對的新賬戶。這個被削弱的熱錢包將被限制在:I)將任何遊戲中的資產或代幣送回主錢包;II)從代理合約中調用一組有限的允許功能中的任何功能,這將映射出目標遊戲合約的功能。每當用戶點擊一個指定的遊戲動作時,熱錢包將調用模塊上的相應功能,然後代表用戶修改目標遊戲合約的底層狀態。

這種通過 Secure Enclave 的模塊化架構將使用戶不必為每一個遊戲中的動作簽署交易,同時保留主錢包的強大安全性。臨時密鑰對將被限制在調用一組有限的無害功能上。

反向追蹤(back running)和 gaMEV

當玩家向公共 mempool 發送交易時,如果交易是以可讀的形式提交的,他們可能會暴露自己並被反追蹤。mempool 的任何觀察者都能事先知道下一個行動流是什麼,並採取相應的行動。

例如,在一個格鬥遊戲中,玩家 1 在 mempool 上提交了一個與翻身踢腿(High-Kick)動作相關的事務。同時,玩家 2 正在監控 mempool,以尋找來自玩家 1 的任何交易。一旦交易被提交,玩家 2 可以預見對手的下一步行動,並能夠通過提交完美的反擊動作來反擊它。

玩家 1 向公共 mempool 提交翻身踢腿動作,玩家 2 正在監控 mempool 的信息

玩家 1 向公共 mempool 提交翻身踢腿動作,玩家 2 正在監控 mempool 的信息
玩家 2 用他們的高位阻擋(High-Parry)阻擋了玩家 1 的翻身踢腿

玩家 2 用他們的高位阻擋(High-Parry)阻擋了玩家 1 的翻身踢腿

通過加密貨幣玩家的行動或通過私人 mempool 發送交易,可以防止反向追蹤。

除了系統性的反向追蹤漏洞,每一個強鏈上遊戲都可能出現長尾 MEV 的形式,或 gaMEV(由 Briq 的 Sylve 所創造的詞彙)。仲裁、搶跑(frontrunning)和其他複雜形式的 gaMEV 機會將是突出的。我們不可能以一種概括的形式來定義它們,因為它們嚴格地取決於遊戲的架構、動態和元遊戲。

在每一種情況下,我們都相信在接下來的幾年裡,長尾的 gaMEV 提取(extraction)將是一個相當突出的活動。

信息隱藏

大多數競技遊戲都依賴於某種程度的不完美或不完全信息。

不幸的是,從本質上講,公有鏈以清晰和可讀的方式存儲所有信息,世界上任何能接觸到節點的人都可以訪問。這將允許任何觀察者只需讀取存儲在智能合約上的信息,就可以剝削或利用其他玩家。

我們可以考慮一個實時戰略遊戲,玩家通過生產每個單位類型具有不同屬性的戰爭部隊來對抗對方。每個用戶受限於他們的視線,對地圖的視野都不完整。由於部隊的人口統計對戰鬥的結果至關重要,在戰爭的迷霧中看到對手正在生產的東西是一種競爭優勢。一個能讀懂智能合約存儲的成熟用戶可以根據對手的行為相應地調整他們的策略。

當本應保密的信息在遊戲合約上公開時,能夠閱讀存儲字段的人和不能閱讀的人之間存在着信息的不對稱。由於區塊鏈遊戲往往帶有貨幣獎勵,這種利用過程就會加劇。

異步的回合制遊戲可能會實施承諾 – 披露計劃(commit-reveal schemes)。玩家可以以哈希的形式發布他們的行動,而不透露他們的基本行動。一旦每個參與者發布了他們的哈希值,他們就可以揭示他們的行動。智能合約將驗證每個披露的行動是否與所附的哈希值相對應。

另一個解決方案是利用零知識證明。正如本文開頭所介紹的,零知識證明是相當強大的密碼學原語。它可以讓外部各方(如執行遊戲規則的智能合約)驗證狀態轉換的有效性,同時通過隱藏所採取的步驟及其基礎輸入來保持計算的私密性。

一個完全在鏈上的網絡遊戲黑暗森林(Dark Forest)率先使用 zkSNARKs 來保持遊戲中信息的隱私性。在黑暗森林中,玩家在一個無限的宇宙中發現和征服星球。然而,他們不需要提交他們所征服的星球的坐標,否則,他們就會被利用。相反,玩家提交的是坐標的哈希值和一個本地生成的零知識證明附件。同樣地,每當他們想從行星 A 移動到行星 B 時,他們需要提供兩個行星坐標的哈希值和相應的零知識證明。只有玩家知道這些坐標和狀態轉換,因為它們被儲存在本地。每個外部用戶只能看到哈希值和零知識證明。

計劃來自黑暗森林的博客

計劃來自黑暗森林的博客

零知識證明最大的缺點是,它們的生成是相當密集的計算。例如,現在生成一個 zkSNARK,在一個現代設備上可能需要幾秒到幾十秒。雖然,它甚至可以委託一個遠程方代表你生成零知識證明。

在每一種情況下,對於實時遊戲來說,在接下來的幾年裡生成零知識證明將需要縮小到幾秒鐘以內,希望我們能達到這個目標。

延遲問題

考慮到成千上萬的用戶通過調用公共 RPC 端點,每秒產生數十萬個智能合約的讀取。這可能會迅速升級為網絡過載的事件,從而降低遊戲中的延時。在理想的情況下,每個用戶都應該能夠在他們的瀏覽器/設備上運行他們的本地節點。

此外,鏈上遊戲的安全假設可能比鏈上金融相關的活動要弱,因為偽造攻擊的經濟損失要小几個數量級。因此,從安全的角度來看,運行一個本地的輕型節點可以說是足夠好的。

以太坊的無狀態客戶端加 Verkle 樹,Mina 的遞歸 zkSNARKs,以及波卡的 Substrate Connect 都是走向這條道路的方法。

然而,RPC 擁堵問題只是延遲問題中的一個。由於網絡的點對點性質,玩家可能因為網絡拓撲結構而遭受高延遲。

我們讀到的一個解決延遲問題的方法是 Xaya 團隊的開放遊戲通道。作為狀態通道,玩家可以打開一個直接的鏈下通信通道,在那裡他們將進行他們的動作,同時不時地更新鏈上的狀態(如果合約狀態需要根據遊戲規則被覆蓋)。

這將允許實時互動,直到參與各方之間地理距離的最小延遲限制。

玩家在鏈下的直接通信渠道中進行互動,只有在需要時才在鏈上結算

玩家在鏈下的直接通信渠道中進行互動,只有在需要時才在鏈上結算

然而,在兩方之間開設鏈下通道可能會引入兩個主要的缺點:

  • 在沒有中心化機構存在的情況下建立事件的秩序
  • 防止拒絕服務

考慮一個第一人稱射擊(FPS)遊戲的兩個玩家之間的遊戲通道,兩個對手之間有一些延遲。在某個時刻,他們來到對方面前,同時扣動扳機。從玩家 A 的角度來看,他先開槍。但玩家 B 卻看到了相反的情況。我們如何確定誰先開槍?上述情況又回到了分佈式系統中的根本時間問題。除此之外,當打開一個直接通道時,玩家會將他們的 IP 暴露給對方,從而使他們有可能受到拒絕服務攻擊。

目前還不清楚這些缺點將如何以可擴展和信任最小化的方式得到解決。

在比特幣的閃電網絡上,第三方可以運行 Watchtowers,以檢測和防止不誠實的交易方在出現漏洞時脫機或無法回應時竊取用戶的資金。

我們以類比的方式,讓受信任的第三方作為遊戲渠道內的計時機構,可以成為解決堅決糾紛的滿意方案。實施一個帶有鏈上削價機制的 n-of-m 方案甚至是可能的。在每一種情況下,都可能出現一個提供這種服務的有信譽的各方市場。

即使上述方案會在遊戲中引入一個中心化的組件,這些第三方可能造成的最大傷害是通過提供不正確的信息來影響遊戲回合的結果,但絕不會竊取用戶的資金。而且,如果被發現有不誠實的行為,他們可能會失去他們的聲譽,他們的客戶,甚至是他們的質押代幣。

結論

上述清單隻是鏈上遊戲所面臨的全部挑戰中的一個子集。我們還沒有觸及還原交易、數據存儲和其他一些問題。構建者將不得不把他們的遊戲與區塊鏈架構的技術挑戰和負外部性結合起來。

儘管如此,鏈上的可組合性和互操作性是令人難以置信的強大手段。一個全新的人類協調、元遊戲和機會將在未來幾年內出現。

在 Dialectic,我們在過去兩年中對區塊鏈遊戲相當熱衷。我們一直在投資了不起的初創公司,如 Sky Mavis、Ember Sword 和 Guilds of Guardians。雖然單個區塊鏈的限制迫使建設者通過為他們的遊戲開發一個混合堆棧來進行妥協。

現在,區塊鏈的擴展正在慢慢成為現實,而強鏈上遊戲似乎將是一個自然的轉變,特別是在高度可擴展的環境中。

我們已經投資了像 Topology 這樣的互操作性協議(這個網站的所有內容都是從 StarkNet 上的鏈上合約中提取的)和其他一些協議來追求這個願景。

我們可能會繼續走這條路。我們對鏈上遊戲領域在未來幾年的發展方向感到興奮。

本文鏈接:https://www.8btc.com/article/6743620

轉載請註明文章出處

(0)
上一篇 2022-04-15 18:15
下一篇 2022-04-15 18:15

相关推荐