比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > LTC > Info

Sui開發者必看:如何構建Capy原型?_APY

Author:

Time:1900/1/1 0:00:00

原文:《在Sui上構建Capy原型》

作者:Alan

在這個去中心化的游戲中,玩家購買、交易、繁殖和裝飾可愛的南美半水生嚙齒動物Capybaras。Sui開發者可以將這里概述的許多原則和代碼實例用于他們自己的項目。

作為Sui區塊鏈上的可編程對象,Capys展示了資產所有權、可轉讓性和動態對象領域等原則。它們與配件一起出現在玩家的錢包里,包括帽子、自行車和圍巾。現在要預覽Capys,請到Capy.art。使用Sui Move開發Sui Capys需要定義基本模塊,創建類型,最重要的是,建立一個注冊表來記錄和驗證Capys。該原型的一個獨特的功能是能夠繁殖兩個現有Capys,根據繁殖對的特征生成一個全新的Capys。要重申的是,這是一個開發者預覽,以展示Sui的獨特方面,供開發者在建立自己的項目時參考。Capys是不售賣的。

免責聲明

這個DApp目前被認為是早期的Alpha,所以它的樣式邊緣可能有點粗糙。

該dApp運行在Sui的開發網,沒有主網的成熟度和穩定性。

在使用Capys時,有一個已知的Sui錢包交易歷史的錯誤,我們將在下周發送一個錢包修復程序來解決這個問題。

我們正計劃在不久的將來將Capy.art更新為錢包適配器標準。

Sui Capys是一個專門用來激勵我們開發者社區的演示。這不是一個空投。請負責任地使用水龍頭,不要向我們的Devnet龍頭發送垃圾郵件。

Sui上原生DEX DeepBook將在幾周后推出:5月9日消息,Sui原生DEX DeepBook正在完成最終測試,預計將在幾周后推出,目前邀請社區建設者集成和測試DeepBook,應用構建者現在可以將他們的應用程序與DeepBook集成,以在訂單簿經過全面測試并開始交易時做好準備。[2023/5/9 14:51:13]

 

Capy應用程序(Github)由三個模塊組成:capy、capy_items和capy_market。這些模塊定義了Capys、配件和交易機制。在開發過程中,我們首先定義了一些具體的原則,以使原型變得令人愉快和有性能。

以下原則有助于確定架構和實現:

Capys應該可以自由轉移,并且可以在任何鏈上應用中使用。

類型應該包含最小的數據量以保持性能。

事件可以用來發射靜態數據,由索引器來獲取。

原型應該是可擴展的,所以以后可以添加新的屬性。

希望在Sui上構建游戲和應用程序的開發者應該從定義諸如這些核心概念開始,這將指導開發過程。

Capy模塊定義了Sui Capys的核心功能:它定義了一個Capy類型,以及授予發布者一個CapyManagerCap,為承載者開放管理功能。它定義了CapyRegistry,集中的原型狀態,以及它的演變方式。

Capy是應用程序的主要類型,是一個具有定義的屬性集的自有對象。32個基因和原型特征所需的額外實用信息。Capy有兩種能力,key和store。前者使其成為可擁有的資產,后者允許自由轉移和包裝。

Suia宣布已上線Sui永久測試網:4月6日消息,Sui生態POAP類項目Suia宣布已上線Sui永久測試網。

此前消息,Sui宣布推出永久測試網(Permanent Testnet),將作為Sui的長期運行、去中心化以及無需許可的測試網,主網啟動后該測試網仍將繼續運行。[2023/4/6 13:48:24]

gen屬性標志著Capy的世代。第一代Capy的基因為gen 0;較新的品種有其父母的基因加1為 gen1,所以有了gen1、gen2等等。

src屬性使資源管理器能夠顯示圖像。Capys本身并不存儲它們的完整圖像,因為它是動態的,在添加新項目時可以改變。

genes屬性存儲了基因序列,這是一個32字節的向量,用于計算屬性和在育種期間為新生兒選擇基因。

item_count是一個實用的屬性,跟蹤附著在每個Capy上的對象的數量。

attributes屬性存儲了育種期間產生的人類可讀的屬性。例如,{ “name": "pattern", "value": "panda" }。

這組字段是Sui Capys功能的最低要求,包括育種或添加/刪除 Items。

CapyRegistry 是育種所需的共享對象,它存儲了曾經出生的Capys的總數,并包含一個偽隨機種子,在下面的基因科學部分進行描述,用于育種期間的基因選擇。它包含了在育種階段分配給新生兒的所有屬性定義。

Mysten Labs收購SuiNS資產,以簡化和增強Sui用戶體驗:3月21日消息,Sui開發團隊Mysten Labs收購Sui生態域名服務Sui Name Service(SuiNS)部分資產,此次收購將使Mysten Labs繼續開發和增強身份服務基礎架構和服務,作為Sui區塊鏈的核心基礎架構組成部分。Mysten Labs表示,正在與SuiNS合作為Sui社區帶來更安全、更簡單的體驗。[2023/3/21 13:16:52]

新的屬性可以被添加到原型中,如下文管理功能部分所述:

CapyManagerCap是模塊發布時發送給模塊發布者(發布事務的發送者)的一種功能。它授權所有模塊的管理行為,包括capy_items和capy_market。

Capys是一個獨立的(非通用)應用程序,因此其主要邏輯可以在模塊初始化中啟動。init函數做如下兩件事:

創建一個CapyManagerCap并將其發送給模塊發布者。

創建并共享一個CapyRegistry。

為了使應用程序變得可玩并具有一定的意義,管理員必須執行一系列的動作:

add_gene函數在CapyRegistry中注冊了一個新的GeneDefinition。在育種過程中,注冊表中的所有現有屬性都被分配給新的Capy。如果一個新的GeneDefinition(Attribute)被添加到原型中,在這次添加之前出生的Capy不會得到它,但他們的孩子會。每個基因定義都有一個名稱和一組選擇器,用來選擇每個屬性的值。

Sui CTO:Aptos在刻意打壓Sui以及相關開發者:金色財經報道,Move編程語言之父,Sui Network CTO Sam Blackshear發推特,喊話Aptos Network,表示得知Aptos有意施壓Pontem Network,取消兩個Move語言開發者OGs以及Move編譯器的作者在movecon.live上的演講,并將Sui基金會從本次活動組織者名單中剔除。[2023/3/1 12:35:35]

batch function允許批量創建帶有預定義基因的Capys。它用于初始化,并在后期階段為新用戶填充更多的Capys市場交易。

創造不可預測性和幫助原型進化的主要邏輯是capy::breed函數。任何擁有兩只卡比的玩家都可以執行這個功能。這個函數的邏輯如下:

根據CapyRegistry.capy_hash為新的Capy選擇父基因。

從CapyRegistry中獲取當前GeneDefinitions的列表并設置屬性。

發出一個帶有新Capy數據的事件。

返回一個新的Capy(使用breed_and_keep發送至發送者)。

在我們進入應用中最有趣的部分之前,我們必須注意,這個解決方案并不能提供絕對的不可預測性,因此不應該用于高風險的應用。但它確實通過將用戶輸入變成一個偽隨機修改器來創造某種程度的隨機性。

Bitcoin Suisse在瑞士蘇黎世火車總站投放比特幣相關廣告:金色財經報道,瑞士加密資產經紀商Bitcoin Suisse最近在瑞士蘇黎世火車總站投放了與比特幣相關的圣誕節廣告。廣告圖中有一顆西蘭花、一雙鞋以及一枚比特幣,廣告文案為“Neujahrsvors?tze”,意思是“新年的決心”,該廣告在很大程度上對非母語人士來說是難以理解的,對此,Bitcoin Suisse營銷和傳播主管Marc Baumann解釋稱:“你可以健康飲食,可以鍛煉身體,但是對于投資于你的未來方面,比特幣無可匹敵。”[2020/12/3 22:56:39]

這個原型的一個真正有趣和獨特的功能是能夠繁殖兩個現有的卡比來產生第三個。新的Capy會繼承其父母的特征。繁殖功能需要兩個親代Capys,并計算新生兒的基因。為了使這個動作公平和隨機,我們需要有一個選擇算法和一個種子。CapyRegistry提供了種子(存儲為capy_hash),并在每次繁殖后更新。該算法如下:

使用散列函數(sha3_256)三次加鹽生成三個32字節的向量(標記為A、B和C),這些向量來自capy_hash。

使用第一個向量(A)進行親本基因選擇。如果第N個字節的值超過126,則選擇第一個父母的基因。否則,選擇第二個親本的基因。如上圖所示,第一個基因將是P2,第二個P1,第三個P2,第四個P1再次出現(直到N=32)。

第二個向量(B)定義了一個突變的機會。如果位置N的值超過250,使用第三個向量(C)中的相同位置來選擇突變的值。在這個例子中,第三個基因將發生突變,其值將是42。

這個非常簡單的模塊定義了可以添加到每個Capy的可穿戴物品,以及我們如何實現前端顯示。項目只能由Capy管理員添加,因為它需要有CapyManagerCap的授權。

在Capys中添加和刪除附件時,使用了動態對象字段,這是一種更有效、更方便的替代Sui中父子對象的方法。動態字段允許任意的名稱,并且可以即時添加和刪除。下面的代碼將一個項目添加到一個Capy中。

為了收購和出售Capys和CapyItems,我們創建了Capy市場。這個模塊利用了動態對象字段,并鎖定了支付價格后可以獲得的物品。在這個市場架構中,每一個項目類型存在一個市場對象,(CapyMarket sells Capys while a different object, CapyMarket, sells Capy accessories)),列表作為動態對象字段附加到市場,而列出的對象附加到列表。

+--> Listing --> TCapyMarket +--> Listing --> T +--> Listing --> T

Marketplace and the List Function

每個Marketplace實例只為一種類型服務。在這個應用中,一個Marketplace實例為Capy類型存在,另一個為CapyItem類型存在。

List函數使用了動態字段。它使列出的項目成為清單的一個字段,然后使Listing成為CapyMarket的一個Listing字段。

創建Capy原型,以展示Sui的一些關鍵功能,并在他們自己的項目中激勵開發者。Capy利用Sui的面向對象的特性,允許玩家可以交易和購買的便攜式配件,并根據父母的屬性生成新的Capy。我們設計的原型是可以無限擴展的,因此它將使用戶和開發者都感到高興。

我們希望這里的例子和代碼能對Sui的開發者有所幫助。幾個突出的實現包括Capy市場、附件和育種。Capy市場可以作為任何交易或存儲機制的模型。配件展示了對動態字段的良好使用。育種提供了一種獨特的手段,可以自動生成具有無限應用的新對象

 

SophonLabs

個人專欄

閱讀更多

金色財經

金色早8點

Odaily星球日報

Arcane Labs

澎湃新聞

深潮TechFlow

歐科云鏈

鏈得得

MarsBit

BTCStudy

Tags:CAPAPYCAPYSUIFortem CapitalHAPY價格CAPY幣sui幣前景如何

LTC
Pantera Capital 致投資者信:2022 年回顧及未來展望_NBS

我們相信這是在區塊鏈領域創辦公司的絕佳時機。與之前的周期相比,人才受教育程度更高,對該行業更有熱情。2022 年上半年從整個 VC 行業籌集了 1210億美元,正在等待部署.

1900/1/1 0:00:00
寫在 Terra-Luna 歸零一年后:信任重建 中心化交易所將繼續存在_CHA

來源:Coindesk  編譯:比推BitpushNews Mary Liu本月標志著 Terra-Luna 事件發生一周年,也是 FTX 崩潰六個月.

1900/1/1 0:00:00
Bankless:加密貨幣空投的下一階段是什么_BANK

每個人都喜歡空投(Airdrop),畢竟誰不喜歡免費的贈品呢?但從項目的角度來看,Token分配的正確與否,可以決定一個社區的成敗。空投是一種原生的 Web3 營銷策略.

1900/1/1 0:00:00
金色圖覽 | NFT行業周報(1.08 - 1.14)_ETF

【1.08 - 1.14】周報概要:1、上周NFT總交易額:160,762,515(美元)2、上周NFT總交易筆數:663,1743、上周NFT總用戶數::221.

1900/1/1 0:00:00
Token Unlocks報告:2023加密項目解鎖會有何影響?_USDT

來自 | TokenUnlocks 編譯 | PANews 近日,加密分析公司TokenUnlocks發布《2022年度報告》.

1900/1/1 0:00:00
DCG事件隱藏哪些問題_GENE

詳細說一下DCG的問題。首先毫無疑問的是,Genesis破產已經沒有了任何懸念,關鍵問題有2個:1)DCG到底欠Genesis多少錢,Genesis破產DCG需要承擔什么責任?2)DCG還有哪些.

1900/1/1 0:00:00
ads