Dojo:我們為什麼要做可驗證化鏈上游戲?

1. 大型MMORPG遊戲可以運行在鏈上嗎?

我們都渴望一個沒有腐敗、惡意和輕蔑的自主世界;一個持久、永恆、自主的世界。

我們怎樣才能實現這一點?就像在區塊鏈不可能三角中,這些努力總是需要某種程度的妥協。

自主世界(AWs)面臨同樣的不可能三角問題。 AWs需要能夠擴展到數百萬並發玩家,這是一個難以解決的問題。

Rollups透過將三難問題部分轉化為二難問題來解決它,這得益於繼承了結算層的安全性——只要有第一層(L1)原生資產和無需許可的退出機制。

使用樂觀rollup,你需要在可擴展性和安全性之間做出選擇,這就是為什麼一些rollup方法透過使用替代資料可用性(alt DA)或plasma DA來實現可擴展性時會在安全性上妥協。然而,使用ZK Rollup,你可以在最小信任假設下證明狀態的完整性,旨在解決所有三個挑戰:可擴展性、安全性和去中心化。 ZK是最終解決方案。

2. 什麼是可驗證化遊戲(Provable Games)?

鏈上遊戲承諾給我們自由表達和對我們訊息的主權。它們之所以具有這些屬性,是因為它們運行在經過共識驗證的區塊鏈上。使用zk證明的可驗證化遊戲(Provable Games),允許在沒有大型共識方案的情況下驗證遊戲狀態和計算。用Cairo、Noir等語言編寫或運行RISC-Zero的這些遊戲,可以在類似瀏覽器的獨立zkVM上獨立運行,可驗證的輸出確保了真實的執行。這擴大了我們在鏈上遊戲產業的可能性。

一個代表性的例子是像大金剛(Donkey Kong,類似馬裡奧兄弟的遊戲)這樣的遊戲。目前,要想在排行榜上認證你的高分,你必須在認證的機器上玩遊戲以防止作弊,同時記錄你的遊戲過程。然而,如果大金剛是一個可驗證化遊戲,玩家就可以在隔離環境中競爭。取得高分只需向遊戲提交一個證明進行驗證。這種方法讓玩家在家中的舒適環境中確立自己作為大金剛之王的地位,而無需錄製遊戲過程!

在獨立的zkVM中運行完整遊戲目前還面臨挑戰。為了解決這個問題,Dojo生態系統正在努力簡化過程,以減少複雜性。像Tonk這樣的團隊在可驗證化遊戲領域取得了進展,他們的一個顯著成就是在zkVM上運行了《毀滅戰士》(Doom)。隨著證明成本的降低和新的證明者,如Stwo的出現,設計可驗證化遊戲和應用的潛力不斷擴大。

我們不必在一個孤立的zkVM中運行我們的可驗證化遊戲。相反,我們可以在具有最少參與者的mini-StarkNet網路上運行我們的遊戲,仍然能夠保證安全性。

值得注意的是,這種方法並不是非此即彼的。例如,你可以在一個EVM上運行一個鏈上游戲,然後在其上層疊加一個基於Cairo的遊戲,增強核心遊戲的同時擴展其功能。

3. 為什麼要做可驗證化遊戲?

想像一下,如果《RuneScape》(一個MMORPG開放世界遊戲)的世界突然關閉了,永久地抹去了每個人的遊戲資料。那會有一些非常憤怒的玩家。這種情況遲早會發生,當開發者決定關閉伺服器的時候。我們能做得更好嗎?我們能創造一個像《RuneScape》那樣豐富、多元且強烈的世界,而不讓這種情況發生嗎?

這個挑戰正是整個鏈上遊戲場景目前正在努力解決的問題:創造一個永久存在、永恆不變和自主的世界。許多團隊正在探索各種方法,這正是所需的創新和實驗的類型。

許多創新正被投入到鏈上遊戲中,但我們的焦點在於使用Cairo和Starknet VM探索可驗證化遊戲技術樹。這篇文章旨在將一些可驗證化遊戲概念翻譯成一個實際的例子,靈感來自傳奇遊戲《RuneScape》。

Dojo:我們為什麼要做可驗證化鏈上游戲?

(在傳奇的Skystrife chad Kooshoba在以太坊伊斯坦布爾大會上的演講後受到啟發而寫下這篇文章)

4. 可驗證化的“哥布林”

讓我們建構一個有哥布林(goblins)存在的世界,並以RuneScape為例,我們將專注於遊戲的初始區域,盧姆布里奇及其周邊環境來探索:

  • 盧姆布里奇城堡
  • 茂密的森林
  • 哥布林
  • 庫存物品

對於可驗證化的哥布林,我們需要:

  • 模擬哥布林和生物的動態移動,為遊戲世界帶來生命。
  • 當玩家撿起物品時,即時更新庫存。
  • 全球追蹤並保存玩家的進度,以保持一致的遊戲體驗。
  • 設計機制防止利用,確保遊戲的完整性。
  • 支援數百萬並發玩家的可擴充性。

4.1 Web2 遊戲的擴充方式

傳統遊戲開發依賴中央伺服器來進行核心功能,如進度管理、NPC行為、玩家狀態管理、物品控制和規則執行。為了擴展,會增加更多伺服器,並將遊戲狀態分割(分片),允許不同玩家群體的遊戲區域有不同的實例。雖然這是一個有效的擴展解決方案,但這種中心化意味著開發者擁有最終控制權,包括關閉伺服器的能力。這就是為什麼鏈上遊戲產業被創造出來- 以便能夠擁有一個無需信任的RuneScape…

Dojo:我們為什麼要做可驗證化鏈上游戲?

4.2 傳統區塊鏈方式

在嘗試使用傳統區塊鏈方法複製中央伺服器的功能時,雖然理論上是可行的,但由於幾個限制,實際上變得不切實際並且幾乎不可能擴展到數千個並髮用戶以上:

交易的驗證

交易或玩家行為必須由網路中的多個節點驗證和處理。雖然這種方法透過複製處理過程並使用共識來使系統更難被破壞從而確保安全性,但它也在交易處理速度上引入了一個重大瓶頸——即TPS。當然,這可以透過使用單一的中心序列器(就像幾乎所有的第二層技術那樣)來規避,但這需要更多的信任假設。

每秒交易數

區塊鏈VM上的TPS限制影響遊戲處理玩家行動的能力。隨著玩家數量及其行為超過區塊鏈的TPS容量,會形成積壓,導致費用激增和玩家體驗惡化。這實際上限制了單一區塊鏈序列器能夠管理的並發玩家數量。為了克服這些限制,以太坊專注於以rollup為中心的路線圖,將執行移至rollup層。

在rollup上運行遊戲世界可以顯著提高可擴展性,但如果沒有zk證明,我們仍然依賴大型共識機製或廣泛可能不穩定的信任假設,這引入了風險。因此,儘管zk被認為是擴展的終極解決方案,但它尚未完全實現。

Dojo:我們為什麼要做可驗證化鏈上游戲?

(相較於OP層,ZK層的信任假設。ZK假設在低參與度下仍然保持強大,允許存在mini zk rollups) 4.3 一種可驗證化的方式- 使用遞歸證明和多層架構

任何區塊鏈的目標是讓用戶對他們的行為有絕對的信任。這項原則在業界常被遺忘;如果我們的目標不是創造無需信任的系統,那我們努力的意義何在?我們不妨依賴中心伺服器,它們在其功能方面表現卓越。

在我們的RuneScape世界中,我們將專注於使用STARKs開創的遞歸擴展。 Tarrence就這個主題寫了一篇深入的文章,強調了遞歸證明在維持第二層、第三層的最小信任假設的重要性。

在我們的世界中,我們可以利用遞歸證明來擴展和分片世界,同時確保任何人擊敗的哥布林確實是哥布林。

一個簡單的圖示:

Dojo:我們為什麼要做可驗證化鏈上游戲?

4.4 架構分析

L1 以太坊

我們在這裡確定最終狀態,所以任何人如果選擇的話,都能重構L2。這是每一個真正的rollup所做的。

L2 Starknet

我們在這裡確定L3的狀態,所以任何人如果選擇的話,都能重構L3。這是我們維持整個世界狀態的地方。

L3 Realms World 或其他L3

這是一個支援玩家全域狀態的高效能執行層。我們在這裡保存Lumbridge分片的最終狀態。這允許在需要時快速創建新的分片,恢復玩家的餘額。

短暫的Lumbridge分片

「短暫」意味著臨時的,強調高效和安全管理每個玩家遊戲狀態的重要性——這對所有玩家來說是最重要的關注點。透過採用鏈分片,將每個分片限制在最多30個玩家——這是一個理論上的數字,可能更高,但作為一個可管理的範例——我們反映了傳統伺服器的結構,但有一個關鍵的增強:使用zk證明來確保狀態變更的完整性。這允許我們水平擴展到成千上萬的碎片,而不犧牲玩家的任何表現。

將這種方法應用於RuneScape

就像傳統遊戲伺服器中的水平擴展概念一樣,我們在這裡採用了類似的策略。透過將遊戲世界分成許多較小的碎片,我們使系統能夠有效地擴展並容納數百萬並髮用戶。

傳統遊戲伺服器與這種方法之間的關鍵區別是,玩家對自己的遊戲狀態有完全的控制,確保了更大的自主權和安全性。每一點狀態都可以重構!

4.5 一個例子

當玩家到達Lumbridge時,他們被分配到一個有容量的短暫鏈,允許他們與多達29名其他玩家互動,同時透過快速和低成本的交易確保高性能。現在我們深入探討:

森林,有諸如木材之類的資源

有了這個短暫鏈,可以追蹤玩家移動到森林的情況,執行一定程度的移動物理學,我們利用這個分片提供的廉價運算能力來實現這一點。然後他們可以繼續砍木頭,將其添加到他們的餘額並推進他們的玩家進度。

哥布林和其他低階怪物

哥布林可以透過序列器上的內建遊戲時鐘有效地模擬。當遊戲時鐘滴答作響時,序列器推進狀態和它們的位置,直到有用戶來並將它們殺死。如果我們選擇,我們可以在這上面使用相當多的分片頻寬,因為我們限制了玩家數量,我們可以最大化NPC的移動。

各種散落或由怪物掉落的物品

物品可以被撿起並存放在玩家的餘額中。當玩家結束他們的會話時,這些物品將保存到全域狀態中。這些值不是短暫的,而是保存到L3中,以供下一次會話中使用。

結束遊戲

在遊戲會話結束時,玩家的狀態會透過迴轉到L3來保留在一個全域狀態中,為他們的下一個區域或會話設定舞台。然後在StarkNet L2上進行驗證,隨後在L1上進行驗證,有效地建立了一個可證明公平的RuneScape。

5. Q&A

我們正在建立的整個堆疊是開源的- 加入dojo discord或直接為核心做出貢獻。

問題1:那麼在這些層之間的橋接怎麼辦?這對玩家來說不會是一場惡夢嗎?

是的,目前橋接確實有問題。然而,已經有一個清晰的解決方案正在Starknet生態系統中使用,並將很快在其他第二層上可用。這些被稱為儲存證明。是的,我正在嵌入我的推文。第二部分將討論此事。

問題2:為什麼選擇遞歸證明和短暫鏈而不是其他方法?

澄清一下,這是Dojo、Cartridge和Realms生態系統採用的方法,以擴展我們想像中的世界。而這不是唯一的方法,探索各種方法是有益的。我認識的一些最聰明的人也在解決這個領域中最具挑戰性的問題,他們的工作絕對值得一看。

  • Lattice – OP Plasma與Redstone結合,實現非常便宜的交易。
  • Playmint – 獨特的樂觀引擎,用於快速遊戲玩法。
  • PoP – 專門的EVM分片。
  • Argus – 客製化的EVM遊戲分片。
  • Curio – 修改過的EVM伺服器方法。

創建一個能夠支援數百萬並發玩家的自由開放的RuneScape絕非易事。然而,鏈上遊戲產業的集體智慧和創造力是強大的力量。因此,預期在未來12-24個月內出現像這樣的遊戲是合理的。是時候回到RuneScape了,或者更恰當地說,是時候歡迎RealmScape的黎明了。

Total
0
Shares
Related Posts