author:wusimpl (@wusimpl) / Twitter
date:2023/11/29
dmint:即 decentralized mint,去中心化 mint,用户直接在本地验证然后直接向 bitcoin chain 发送铸造交易
container:简单理解就是一个 NFT 集合(Collection)
部署 dmint container 的大致流程:
其中只有红色部分是我们用户需要关心的,铸造流程类似于 atommap,需要 NFT 的元数据(item-*.json)和 bitwork 工作量证明才能进行 mint。
atomicals dmint 功能将在区块高度为819181的时候被激活,大概时间是 12月1日凌晨4点。目前尚不知 atomical 协议官方是否会部署 dmint 项目,也不知道会不会有其他项目方已经在准备 dmint 项目了,但我们要做的就是万事具备,等待东风。
这是最可能出纰漏的一个部分,万众瞩目的 dmint 功能大概率会引起公共 atomicals 节点瘫痪,拥有自己的节点可确保 mint 过程顺利进行。
实现了 atomicals 协议的全部功能,包括 dmint,所以该安装该脚本是必备的。当然也会有市场部署前端的 dmint 工具,但很明显不要期待它们的并发性能。已经安装过脚本的朋友需要将脚本更新到最新的版本:atomicals/atomicals-js: Atomicals CLI and Javascript Library (github.com)
可以预见届时 bitcoin chain 的 gas price 会被拉得很高,确保你脚本中配置的钱包有足够余额。
这是 dmint container item 必要的验证文件,需要由项目方提供,并在 mint 命令中指定你需要 mint 的 item 的 json 文件。
确保你配置好了一切,正式开始 mint your dmint container item。
许多刚入门的朋友经常犯一个错误,命令没有在有效的目录中进行,导致无法找到执行命令的程序,请确保你的命令行当前工作目录在 atomicals-js 脚本下。
yarn cli mint-item "#container-name" "item-name" "path/to/item-name.json" --satsbyte 20
你需要分别修改上述命令的五个部分
#container-name:这是 container 的名称,请注意所有 container 都必须以#开头
item-name:这是你需要 mint 的 NFT 的名称,类似 atommmap 中指定的数字
path/to/item-name.json:这是 item-name 对应的 json元数据,参见准备工作中的说明。
satsbyte:这是指定上链的 gas price价格。请注意这和我们平时用的 sats/vB 有所不同,一般来说需要将 (sats/vB) / 1.7 才是 satsbyte 的值。
例如可能的命令是这样的:
yarn cli mint-item "#DMINT" "item-123" "/home/abc/item-123.json" --satsbyte 23
这表明我在 mint 一个叫 DMINT 的集合中的编号为 item-123 NFT,它的元数据存储在
/home/abc/item-123.json 路径,并且设置的 gas price 是 23 sats/byte,换算成sats/vB 大概是 39 sats/vB。
关于查重,官方脚本也提供了查询 item 是否已 mint 的命令
$ yarn cli get-container-item "#container-name" "test-item-4"
我会将mint和查重集成到我的js工具脚本中(推特置顶),有兴趣的可以关注一下。
如果你需要帮助,请善用推特搜索和Google,90%的问题已经被解答过了。例如:
还可以参考几个经常发布 btc生态 内容的 twitter influencers: