本文按当前 uPEG Hook/ImageParams 合约参数和生成逻辑整理,包含特征生成规则、TT/CT/全套定义,以及完整的属性组合概率列表。

数据更新时间:2026-05-20

作者 https://x.com/cutepanda

相关合约

UPEG:             0x44b28991B167582F18BA0259e0173176ca125505
Hook/ImageParams: 0xe54082DfBf044B6a8F584bdDdb90a22d5613C440

当前参数

collectionSize:        6208
colorsCount:           36
backgroundColorsCount: 6
accessoriesCount:      15
bodyCount:             1
eyesCount:             1
hairCount:             15
hornCount:             15
legsFrontCount:        15
legsBackCount:         15
tailCount:             15
groundCount:           0
wingsCount:            15

生成逻辑

每只候选从 pool seed 开始,用下面的 PRNG 连续取随机数:

next = keccak256(abi.encode(uint256(seed), uint256(nonce)))
nonce 从 1 开始递增

核心随机函数:

fl(p)       = next % 100 < p          // p% 概率门
Sr(count)   = next % count + 1        // 生成 1..count
Gs(count)   = next % count            // 生成 0..count-1

生成顺序:

1. backGroundColor = 0..5,必出
2. horn:20% 出;若出,horn = 1..15,hornColor = 0..35
3. accessories:30% 出;若出,accessories = 1..15,accessoriesColor = 0..35
4. hair:80% 出;若出,hair = 1..15,hairColor = 0..35
5. wings:30% 出;若出,wings = 1..15;wings 没有颜色字段
6. tail:80% 出;若出,tail = 1..15,tailColor = 0..35
7. legsFront = 1..15,必出
8. legsBack = 1..15,必出
9. eyes = 1,必出;eyesColor = 0..35
10. body = 1,必出;bodyColor = 0..35
11. groundCount 当前为 0,所以 ground 不出,groundColor 固定为 0

单项概率

特征 是否出现 出现概率 取值范围 单个具体取值概率 颜色概率
backGroundColor 必出 100% 0..5 每个 16.6667% 无独立颜色
horn 可选 20% 1..15 每个 1.3333% 若 horn 出,hornColor 每个 1/36;无条件每个 0.5556%
accessories 可选 30% 1..15 每个 2.0000% 若 accessories 出,accessoriesColor 每个 1/36;无条件每个 0.8333%
hair 可选 80% 1..15 每个 5.3333% 若 hair 出,hairColor 每个 1/36;无条件每个 2.2222%
wings 可选 30% 1..15 每个 2.0000% 无颜色字段
tail 可选 80% 1..15 每个 5.3333% 若 tail 出,tailColor 每个 1/36;无条件每个 2.2222%
legsFront 必出 100% 1..15 每个 6.6667% 无颜色字段
legsBack 必出 100% 1..15 每个 6.6667% 无颜色字段
eyes 必出 100% 1 100% eyesColor 每个 1/36 = 2.7778%
body 必出 100% 1 100% bodyColor 每个 1/36 = 2.7778%
ground 当前不出 0% 0% groundColor 固定为 0

说明:上表的“单个具体取值概率”是无条件概率。例如 horn = 7 的概率是 20% * 1/15 = 1.3333%

属性定义

这里的属性组合只看三类属性:TT / CT / 全套

TT