0%

新人如何在EVM兼容链上面打铭文——CAT

写给萌新的第一个铭文教程!

1:什么是铭文?

铭文inscription,你可以把他当成一种代币。最开始在BTC上流行,因为BTC不是图灵完备的。所以他们使用了最简单的办法,就是在转账时铭刻信息,这个信息就是铭文。大家开始统一起来,如何指定协议,如何部署,如何mint(免费获取代币),如何交易。目前ordi已经是BRC20的龙头。

2:EVM上面的铭文

鉴于BTC网络的火热,EVM兼容链也开始炒作铭文,通常采用自传的方式(from=to),铭刻16进制数据。

ETH上面有eths铭文;

BSC上面有BNBs铭文;

MATIC上有POLS、NI、ANTS等铭文。

3:新协议NI下的空气铭文CAT

CAT是猫咪,对应的是DOGE,他是一种纯MEME铭文。

这代表着他只有部署者,而没有官方;

只有社区,而没有主力;

只有MEME,而没有价值。

4:如何打铭文

此教程将演示,常规方法下的转账铭刻。

4.1 安装任意插件钱包

我们以小狐狸MetaMask为例,打开切换网络到Polygon Mainnet主网。

发送MATIC,目的自己账号(自传)。

金额,0。

16进制数据:

1
0x646174613a2c7b2261223a224e657874496e736372697074696f6e222c2270223a226f7072632d3230222c226f70223a226d696e74222c227469636b223a22434154222c22616d74223a22313030303030303030227d

字符串文本数据:

1
data:,{"a":"NextInscription","p":"oprc-20","op":"mint","tick":"CAT","amt":"100000000"}

image-20231206140718990

4.2 如何开启16进制数据

有些人的小狐狸是没有的,因为默认是不开启的。

我们需要更改一下设置,高级,打开16进制数据的设置。

image-20231206141004418

4.3 查看铭文

因为不会写索引,就把别人的面板抄了一下,将就着用。

https://dune.com/queries/3256015

image-20231206141400330

最新的所有面板(在rows旁边输入钱包查询):

https://dune.com/xsbtc/cat

image-20231206210717204

4.4 OKX工具打铭文

工具为OKX钱包官方的,好处是比手转要快。

(你需要安装OKX的插件钱包)

https://www.okx.com/cn/web3/hot/inscription

image-20231206142041500

看图填写,值得注意的是,如果使用文本模式,是不需要写data:,因为他已经帮你写好了。

每次交易都需要授权,比手动转要快一些,手机上按指纹授权好像更快。

image-20231206142232985

4.5 EVM.ink 网站打

一键抵达打CAT

image-20231206145518701

你可以可以去evm.ink查看索引。

(evm.ink的转移铭文不受社区保护)。

image-20231206144834602

4.6 脚本打铭文 Python版

做人做到底,送佛送到西。

怎么能没有脚本呢?至于脚本的安装环境,自己百度即可。

4.6.1下载项目

https://github.com/chriscczhou/polsMint

自己看说明安装运行即可,需要提前安装Python的环境,百度教程一大把。

image-20231206182924294

没有安装git的人可以使用传统三步下载。

安装了git的人直接克隆一份:

1
git clone https://github.com/chriscczhou/polsMint.git

image-20231206183129752

完成后进入项目目录,这个时候推荐使用轻量级的VSCODE打开编辑。

当然,你要使用重量级编辑器当我没说。

4.6.2安装依赖

安装依赖。

1
2
pip install web3==6.11.3
pip install python-dotenv==1.0.0

image-20231206183437187

4.6.3修改配置

修改配置文件!!!

修改配置文件!!!

修改配置文件!!!

image-20231206183553208

在.env文件中填入地址和私钥。

然后把文件PolsMint修改一下,其中的data数据替换为自己需要的。

这里提供CAT的16进制数据测试:

1
0x646174613a2c7b2261223a224e657874496e736372697074696f6e222c2270223a226f7072632d3230222c226f70223a226d696e74222c227469636b223a22434154222c22616d74223a22313030303030303030227d

image-20231206183846808

该脚本的循环次数无上限,只能手动停止(或者GAS耗完)。

如果的小伙伴可以根据自己的实际情况改动他。

4.6.4运行程序

我们尝试运行他,Go!

image-20231206184209809

在VSCODE中,可以使用右键,选择Run Code运行脚本。

你可以更换节点,如果节点响应过慢的话。

image-20231206184733114

脚本的作者输出了太多没有必要的内容。

简单点,只需要成功次数和交易哈希就好了。

4.7 脚本打铭文 Java版

因为大部分的JAVA程序员都有JDK8、IDEA、Maven的环境,所以就默认你们全部安装了。

4.7.1创建Maven项目

image-20231206185500731

名字随意。

项目位置自己选择。

语言Java,构建系统选择Maven,JDK1.8就够了。

创建。

4.7.2添加依赖

依赖内容:

1
2
3
4
5
6
7
8
<dependencies>
<!-- web3J依赖 -->
<dependency>
<groupId>org.web3j</groupId>
<artifactId>core</artifactId>
<version>4.8.7</version>
</dependency>
</dependencies>

image-20231206185911793

第一次会下载到本地仓库,以后使用就直接从本地获取了。

4.7.3创建脚本类

随意创建一个类,干脆叫MintCat好了。

image-20231206190146543

必须在项目的src/main/java目录下的才有效。

4.7.4编写脚本

打铭文无非就是自传,确认铭刻数据,交易的Gas费,铭刻次数,还有节点。

我们将变动的量全部提取出来放在最上面。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import org.web3j.crypto.Credentials;
import org.web3j.protocol.Web3j;
import org.web3j.protocol.core.methods.response.EthSendTransaction;
import org.web3j.protocol.http.HttpService;
import org.web3j.tx.RawTransactionManager;
import org.web3j.utils.Convert;
import java.io.IOException;
import java.math.BigInteger;

public class MintCat {
public static void main(String[] args) {
// 填写网络节点API 默认公共节点
String api = "https://polygon-rpc.com";
// 填写链ID MATIC链是137
long chainId = 137L;
// 钱包私钥
String key = "";
// 循环次数 默认100次
int num = 100;
// 铭文数据 默认CAT
String data = "0x646174613a2c7b2261223a224e657874496e736372697074696f6e222c2270223a226f7072632d3230222c226f70223a226d696e74222c227469636b223a22434154222c22616d74223a22313030303030303030227d";
// 创建连接对象
Web3j web3 = Web3j.build(new HttpService(api));
// 创建钱包对象
Credentials credentials = Credentials.create(key);
// 获取自己的钱包地址
String address = credentials.getAddress();
// 交易金额
BigInteger amount = Convert.toWei("0", Convert.Unit.ETHER).toBigInteger();
// 循环执行交易==打铭文
for(int i = 0; i < num; i++){
try {
// 获取当前网络的建议费用
BigInteger maxPriorityFeePerGas = web3.ethGasPrice().send().getGasPrice();
BigInteger maxFeePerGas = maxPriorityFeePerGas.add(BigInteger.valueOf(1000000000L));// 加10Gwei
// 构建交易对象
EthSendTransaction ethSendTransaction = new RawTransactionManager(
web3, credentials)
.sendEIP1559Transaction(
chainId,
maxPriorityFeePerGas, // 优先级
maxFeePerGas, // 最大费用
BigInteger.valueOf(30000L),// gasLimit 手动调整
address,
data,
amount
);
String transactionHash = ethSendTransaction.getTransactionHash();
// 交易哈希
System.out.println("【"+(i+1)+"】"+transactionHash);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
}
4.7.5运行结束

我们填入一个私钥测试一下。

注意,公共节点一般都有请求限制,比如每秒20请求。

如果需要更快的速度和响应,可以去注册私人节点。

Alchemy、Infura、Ankr等API服务商都可以提供私人节点,且有一定的免费额度。

image-20231206193236325

4.7.6代码开源

注册一个github账号,然后开源。

加上说明文档,一共三个文件。

https://github.com/cat-inscription/mint

你也可以直接下载他然后运行。

image-20231206193726249

5铭文如何玩

你可以用你想到的任何方式去玩CAT,因为他就是空气,请不要赋予他任何价值。

我希望新人在任何时候都可以打上一张CAT作为铭文入门的学习案例,所以他的总量是一亿张。

5.1关于NI协议:

https://github.com/NextInscription/node

你可以部署任何的铭文,只要他的形式是这样的:

1
data:,{"a":"NextInscription","p":"类型","op":"deploy","tick":"名称","max":"总量","lim":"单次mint数量"}

把这个文本转换为16进制的数据,然后自转就可以了,这就算部署成功。

mint和转移也在该文档中有所规定。

5.2关于EVM.ink的文档

该文档开启了关于EVM链的铭文的一些定义规则。

https://inscriptions.gitbook.io/docs/

但是,从pols开始的分歧表示,社区不认可合约铸造的铭文。

合约铸造的铭文依旧会在EVM.ink上面索引,但是有合约的标签。

5.3索引和分歧

pols的索引问题导致了原本的龙头一蹶不振。

anteater的问题是,没部署,却先mint,后来更是出现了数种。

NI有望解决该问题,而CAT是符合NI协议的纯MEME空气币。

你可以用任何方式使用CAT,因为他就是空气。

5.4价值定义

1CAT=1CAT

Nyan_cat_250px_frame