作者:opnpc@Downstream;編譯:MetaCat
原子對象系統是一種設計模式,允許創建新穎且可組合的對象,同時保持世界的整體平衡。世界中的每個物件都由一小組基本粒子組成,其特性或統計數據繼承自這些組成原子。與設計師指定物件的傳統遊戲世界不同,這些世界的居民可以創建具有新屬性的全新物件。
動機(Motivation)
遊戲世界中通常都會有一組規定的物品,因為設計師需要優先考慮玩家的樂趣而不是玩家的自主性。為玩家提供可靠的有趣體驗需要平衡各種系統,以確保他們能夠在正確的時間獲得正確的物品。強大或有價值的物品通常需要花費大量金錢才能獲得,或被技能樹和升級路徑所限制,以防遊戲玩法不平衡。遊戲設計師精心調整這些系統,以優化玩家體驗並保持挑戰感和獎勵感。
這在多人遊戲中尤其困難。單人遊戲可以根據玩家的個人進度和技能進行調整,悄悄地改變遊戲世界的規則,但多人遊戲無法輕易改變一個玩家的現實,而不會讓另一個玩家感到沮喪。一個玩家可以跨能力等級互動的共享空間,需要更接近正常運作的經濟系統,而這在歷史上很難實現。讓玩家能夠在沒有適當限制的情況下創造新物品,可能會導致大量物品「破壞」其他玩家的遊戲體驗,甚至破壞他們自己的遊戲體驗。
自治世界的部分吸引力在於,居民可以自由地共同設計、建造和設計全新的東西。為了實現這一點,我們不能依賴遊戲設計師,在新物件添加到世界時仔細改進機制。手動平衡系統成本高昂,隨著新物體添加到世界,測試物體之間互動的成本會倍增。相反,自治世界依賴於明確的敘事規則或數位物理法則,這些規則限定了世界中物理法則上可能發生的事情,並定義了它可以擴展的條件。良好的數位物理法則應該能夠提供各種可能的對象,而無需遊戲設計師手動平衡每個對象。
「原子物體系統」(Atomic Object System)是一種數位物理形式,它提供了一種易於理解且可自我平衡的可組合性機制。玩家可以自由發明他們想要的任何功率等級的新物體,但他們必須先透過摧毀現有物體來獲取所需的原子。透過將基本原子視為構建塊,玩家可以發明超出硬編碼製作樹限制的物體。同時,在遊戲世界中獲取這些原子所需的努力,透過施加與所創建物體的複雜性成比例的成本來保持平衡。
機制(Mechanics)
我們在開發Downstream 時構思了原子物件系統。遊戲由玩家控制的單位(units)組成,這些單位生活在六角形平鋪地圖上,每個狀態變化都是鏈上交易。單位使用建築物來製作物品,每個物品由一組特定的基本粒子組成,由不同顏色的黏性物表示。玩家首先收集黏性物,使用建築物基於該黏性物中製作新物品,然後使用這些物品來加強他們的單位,與其他人交易,並設計新的遊戲模式。
基本製作流程包括:
-
從提取器中收集黏性物質。
-
使用建築物來製作物品。
-
將物品添加到玩家的庫存中。
提取器的功能相當於黏性物的水龍頭。它們會分配基本物品:完全由純紅色、藍色或綠色黏液組成的液滴。
建築允許進行製作,將多個物品作為輸入,以便輸出由黏性物質組成的新物品。不同類型的建築與不同的製作配方和輸出物品相關聯。一些黏性物質在製作過程中作為一種吸收劑被燒毀。
物品最常見的用途是提升單位的屬性,物品中黏性原子的數量決定了屬性提升的類型和數量。紅色黏性增加力量,藍色黏性增加防禦力,綠色黏性增加生命力。例如,一件好武器會有很多紅色原子。一個好的盾牌需要很多藍色原子。只要單位擁有所需的資源,平衡的物品就可以同時擁有這三種屬性。
玩家還可以使用「建築製造機」建造新建築,進而生產新物品:
-
使用新的製作配方設計 buildingKind。
-
buildingKind 部署為智能合約。
-
buildingKind 在地圖上建構該實例。
使用他們的新建築來製作全新的物品。
物品不需要獨特的原子組成。也許你的朋友已經擁有一棟建築,可以用100 個單位的紅色黏性物質製造雷神之鎚。沒有什麼可以阻止你建造一棟新建築,輸出一種新物品,聖劍,也是用100 個單位的紅色粘性物質製成的,這些物品在戰鬥中的作用相同。
製作配方還可以將任何玩家製作的物品作為原料。這樣就可以開發廣泛的科技樹。如果你有10 把雷神之鎚和10 把聖劍,你可以創造一個新的,以buildingKind 為它們的輸入,並吐出一把超強大的錘劍。
合約(Contracts)
Downstream 使用節點圖架構,將所有實體(玩家、建築物等)表示為具有自己地址的合約,將物品表示為ERC-1155,並帶有名稱和餘額,可將其分配給這些實體地址。每個物件的基本原子組成都被編碼為元數據,允許製作合約檢查所需的組成材料。
當創建新的建築buildingKind 及其隨附的製作配方和輸出項目時,建築製造商會產生三個文件:
-
NewBuilding.yaml:清單,包含建築物和物品的參數。
-
NewBuilding.js:建築UI,在遊戲中點擊建築實例時調用,控制顯示的html 和按鈕。
-
NewBuilding.sol:鏈上邏輯,實現BuildingKind 介面的Solidity 合約,可以代表建築物調度操作。
基本工廠(Basic Factory)和雞尾酒小屋(Cocktail Hut)可能是Downstream中最容易閱讀的例子。
應用(Applications)
目前,虛擬世界可組合性系統最廣泛的應用是遊戲中的製作機制。自主世界在遊戲化程度方面各不相同,我們可以想像一個沒有固定遊戲目標的世界,在那裡,居民仍然可以從允許創造新類型物體的系統中受益。然而,值得注意的是,許多具有製作機制的遊戲已經區分了遊戲和生活世界之間的差異。
提供類似功能的遊戲類型的顯著例子包括:
-
類似Minecraft 和Terraria 的生存沙盒遊戲
-
以農場為主題的生活模擬遊戲,例如《動物之森》和《星露谷》
-
類似Factorio 和RimWorld 的工廠或殖民地管理模擬遊戲
-
魔獸世界與EVE Online 等MMORPG
許多其他遊戲都將製作作為特定子系統的一部分,例如《異塵餘生》或《龍騰世紀》中的武器製作,以及《薩爾達傳說:曠野之息》或《東方嚮往》中的烹飪機制。
備選方案(Alternatives)
這種設計模式有許多替代方案,主要區別在於它們對數位物理法則的處理方式。世界的設計者必須考慮他們需要什麼複雜程度的數位物理法則。更深層、底層或「細粒度」的數位物理法則更像世界,犧牲可用性和即時性,以優先考慮可在其上建構的內容的多樣性和複雜性。較淺層次、進階或「粗粒度」的數位物理更像遊戲,犧牲多樣性和複雜性,以優先考慮可在其上建立的內容的可用性和即時性。
一方面,世界可以擁有更多底層或細粒度的數位物理法則,傾向模擬和湧現。例如, Tenet 的Zuse “世界計算機”賦予物體局部性,從而可以引入傳播因果關係的系統。這種系統更複雜且更難訪問,但可以實現更豐富的模擬和更深入的工程機會。
另一方面,一個世界可以擁有更高級或更粗粒度的數位物理,更傾向於真實感和沈浸感。例如,《Moving Castle》的《This Cursed Machine》就具有輸入和輸出的組件的概念,這些組件可以構建成“可組合電路”,並用作更大世界的構建塊。這種系統更具主觀性,靈活性可能較低,但可以實現更豐富的世界構建,並更專注於遊戲玩法。
擴展和未來的工作
擴展系統的一種方法是增加原子類型。 Downstream 中的原子物件系統目前有三種原子類型,但我們計劃至少再增加兩三種。 John Carmack 談到,在Doom 和Minecraft 等遊戲中,模組的持續流行源於足夠的「圖靈完備設計自由度」。我們還不知道需要多少原子才能達到「圖靈完備設計空間」。我們很容易想到整個元素週期表有更多類型,但我們懷疑這種複雜性的系統在實踐中會很笨重。
另一種可能性是原子不僅僅影響戰鬥數據。這在理論上已經是可能的,因為玩家可以使用自訂邏輯創建建築物和組件,以不同的方式利用原子值。建築物可能需要玩家攜帶帶有100 多個紅色原子的物品才能看到其製作配方。但如果不添加可以真正與原子系統掛鉤的額外玩家動作和特徵,這似乎沒有什麼吸引力。一旦我們有了控制移動速度或RPG 式技能獲取的數位物理法則,也許會有更多令人興奮的互動值得考慮。