Solidity
將 NFT 批量分發到具有不同配額的錢包中
問題:我正在與兩個程序員合作推出一個 4444 NFT 頭像集合。我的主要關注點是公平分配。將有超過 1000 個具有不同數量的索賠的錢包,有些會有 1 個,有些會有 3 個索賠……
我正在尋找一些方向來在我們的契約中解決這個問題。在 UI 上做這件事更容易,但它不會阻止人們從契約中鑄造。我會很感激任何幫助。
我們嘗試了什麼:
- 循環、大數組、從合約中讀取 json 文件、ChainLink VRF(用於不同的分發策略);但其中大多數在區塊鏈中不起作用,而且對於我們免費提供的東西來說,Chainlink 太貴了。
- 我們嘗試創建 4444 個 ERC20 代幣並首先分發這些代幣,然後在使用者與我們的 ERC721 合約互動時銷毀它們。這很好用,但很多人需要認領這些 ERC20 代幣,而且我們也有認領配額問題。這需要另一個 Web 應用程序。
- 我們發現了一個為乙太坊黑客開發的應用程序,Iroiro,它就像一個魅力,可以將 ERC20 代幣分發到我們需要的錢包地址。但是當我們訪問該站點時,它會顯示“測試版,使用風險自負”。這不是我們可以合作的。我試圖聯繫開發商,但沒有收到他的回复。
問題:在我們的契約中是否有其他實用的方法來解決這個問題?(我不是程序員,這些都是我能想到的。)
如果沒有,是否有一個合法的 ERC20 認領平台(如 Iroiro),該平台廣為人知並廣泛用於為每個錢包地址認領代幣?我看到很多像 Copper 這樣的拍賣平台,但不像 Iroiro。
謝謝!
您可以為此使用 merkle 空投。這是一個入門工具包,其中還包括指向其他服務的連結,這些服務可能會幫助您做到這一點。
請具體說明您要解決的問題。公平隨機化?機器人保護?天然氣戰爭?
我寫了https://github.com/AreaWorld/ethereum-contracts,它解決了許多這些問題並獲得了許可。
我還主持了一個公共社區服務時間,在 Twitch 上現場回答公眾的問題,並瀏覽這份契約和其他 NFT/Web3 主題 // https://twitter.com/fulldecent/status/1475851800322453504