3

我是区块链的新手,我正在尝试使用区块链,所以我使用 metaplex 和糖果机来上传和铸造虚拟 nft,它工作正常。我正在使用的开源存储库如下:

https://github.com/metaplex-foundation/metaplex https://github.com/exiled-apes/candy-machine-mint

然后出于学习的目的,我想将铸币和二级销售分成多个钱包,所以我更改了 JSON 并将三个测试钱包添加到创建者的数组中。

{
  "name": "#0",
  "symbol": "%$%",
  "description": "description goes here",
  "seller_fee_basis_points": 500,
  "image": "image.png",
  "external_url": "",
  "edition": 0,
  "attributes": [
    {
      "trait_type": "Background",
      "value": "Street"
    }
  ],
  "properties": {
    "files": [
      {
        "uri": "image.png",
        "type": "image/png"
      }
    ],
    "category": "image",
    "creators": [
      {
        "address": "<public address 1>",
        "share": 34
      },
      {
        "address": "<public address 1>",
        "share": 33
      },
      {
        "address": "<public address 1>",
        "share": 33
      }
    ]
  }
}

但问题是分裂发生在二级销售而不是铸币上。在将钱包设置为国库资源时,将获得所有金额。我也想在铸币时拆分交易金额。

4

2 回答 2

2

有趣的是,我在metaplex 文档中找到了这句话:

SPL 元数据程序支持存储多达五个共同创建者,这些共同创建者共享由 Seller_fee_basis_points 定义的项目的潜在未来销售利润。每个创建者都需要作为铸币过程的一部分添加,并且需要使用 sign_metadata 端点批准以他的名义使用的元数据。未经验证的艺术品不能与 Metaplex 一起出售。

在第一次销售期间,创作者分享 100% 的收益,而在后续销售中,他们按由 Seller_fee_basis_points 确定的百分比分享收益。在第二次销售中是否考虑元数据由元数据帐户上的 primary_sale_happened 布尔值确定。

我对此的解释是,预期的行为应该是使用每个创作者的份额定义的比率在创作者之间分配初始销售。听起来你正在经历一些不同的事情。

请记住,此文档适用于父项目。Candy-machine-mint 似乎是一个叉子,他们可能已经改变了其中的一些行为。

于 2021-11-26T23:14:27.280 回答
1

您感兴趣的合约代码的源代码可以在这里找到:https ://github.com/metaplex-foundation/metaplex-program-library/blob/master/nft-candy-machine/program/src/库文件

在第 247 行,将 sol 的转移调用到糖果机的单个金库地址。要将其更改为多个地址,必须更新和重新部署该合约。

我在 solana 社区 atm 中看到的另一个替代方案是第二份合同,它将平均分配资金。不幸的是,该合约的创建者一直在收费,尚未开源。如果您有兴趣,可以在 metaplex discord 上找到它们。

于 2022-01-14T04:29:22.250 回答