Skip to content
Robinhood Chain

collection

THE ART

Every baby is a composite of 10 pixel layers. There is no reveal step. The art and the metadata are public from mint one, and the rarity tier of every id is written on chain in a single transaction at deploy, before anybody can mint.

3,000
Supply
10
Trait layers
200
Drawable traits
4
Rarity tiers

sample

WHAT A BABY LOOKS LIKE

Twelve ids out of the 3000. Each tile fills in with the real image as soon as the generator output is on the server. Until then it stays a placeholder, because a stand-in picture would tell you nothing about what you are actually minting.

Artships at mint one

#1

Artships at mint one

#2

Artships at mint one

#3

Artships at mint one

#4

Artships at mint one

#5

Artships at mint one

#6

Artships at mint one

#7

Artships at mint one

#8

Artships at mint one

#9

Artships at mint one

#10

Artships at mint one

#11

Artships at mint one

#12

ids are 1 to 3000, sequential, in mint order

rarity

FOUR TIERS, AND WHAT EACH IS WORTH

Tier is fixed at deploy and never changes. It sets the base power of the token, and base power is that token's share of the staking pool before anybody burns anything extra into it. Higher tier is not a cosmetic label, it is a bigger slice.

1,800
base power 1
Common, 60% of supply
750
base power 2
Rare, 25% of supply
300
base power 4
Epic, 10% of supply
150
base power 8
Legendary, 5% of supply
Pool share, worked for one specific case: all 3000 staked at the same time and nobody powered up. That case is the only one where these percentages hold. Real shares move with how many babies are actually staked and with every power up, so treat this as the shape of the split, not a forecast.
Tier Count Of supply Base power Tier power One baby's share
Common 1800 60% 1 1800 1 / 5700 = 0.0175%
Rare 750 25% 2 1500 2 / 5700 = 0.0351%
Epic 300 10% 4 1200 4 / 5700 = 0.0702%
Legendary 150 5% 8 1200 8 / 5700 = 0.1404%
Total 3000 100% 5700 5700 / 5700 = 100%

The tier power column is what a whole tier is worth together. 1800 commons at power 1 come to 1800. 150 legendaries at power 8 come to 1200. Epic and legendary hold the same 1200 between them, so it is the same slice of the pool split 300 ways or split 150 ways, and that is the real difference between those two tiers.

1800 common x 11,800
750 rare x 21,500
300 epic x 41,200
150 legendary x 81,200
total power, everything staked5,700
POWER ON TOP OF TIER SPEC 2.2

Tier sets where a baby starts. Burning $TBABY against its id raises it from there, for good. The formula the vault uses is power(id) = baseWeight(id) + bonusPower(id).

Base weight 1, 2, 4 or 8 by tier
Power unit set at deploy
Bonus power floor(burned / power unit)
Cap none
On transfer stays with the id
On unstake not lost

Bonus power is attached to the token id, not to the wallet. Sell the baby and the power goes with it. Burning is one way, the $TBABY does not come back.

LOOK UP A TIER reads rarityOf(id)

Every id has its tier on chain from deploy, minted or not. Type one in and the page reads it straight from the contract over the configured RPC.

This is a read. It costs nothing, it does not need a wallet, and it does not send a transaction.

traits

TEN LAYERS

The generator composites the layers in the order below, background first, pets last. Four of the ten can come out empty, so a baby is built from between 6 and 10 drawn layers.

Source layer set, not a mint report. These counts are the input to tools/generate.py, read from nft_layers/traits.json and the layer folders in the picrew export. The counts that matter for rarity, meaning how many of the 3000 minted babies actually carry each trait, come out of the generator as out/traits_report.json. This table gets replaced with those numbers once that file exists.
Layer Traits Share of the set Draw order Can be empty
Background 78
1, bottom no
Back 11
2 yes, 35%
Body 6
3 no
Hair 25
4 no
Clothing 34
5 no
Mouth 10
6 no
Eyes 7
7 no
Glasses 11
8 yes, 35%
Hat 12
9 yes, 33%
Pets 6
10, top yes, 33%
10 layers 200 bars are each layer against Background, the largest at 78

200 is the count of drawable trait files. traits.json in the export lists 201 rows because it also carries the empty Back as a value of its own. The empty chance on the four optional layers is the number in front of the blank file name, so Back at 35 means the layer is absent 35% of the time.

provenance

HOW THE TIERS GET ON CHAIN

Tiers are not decided per mint and they are not rolled at random when you buy. All 3000 are computed off chain first, then pushed on chain in one transaction at deploy, before the mint is open. After that the contract is the only thing anyone has to trust.

GENERATE

tools/generate.py composites the 10 layers with the fixed seed TRADER-BABIES-v1. Same seed, same 3000 babies, every run. Every baby is a unique trait combination.

RANK AND CUT

Each baby is scored on statistical rarity, ranked, then cut at exactly 1800 common, 750 rare, 300 epic and 150 legendary. Ids are shuffled after the cut so the tier is not readable off the id number.

PUSH ONCE

setRarities writes all 3000 tiers, packed 2 bits each. It is one shot. From then on rarityOf(id) is the only tier that counts and anybody can read it without asking us.

Collection sheet. Every value here is a locked parameter or a constructor argument, not a plan.
NameTrader Babies
SymbolTBABY
Supply3,000, immutable
Token ids1 to 3000, sequential, in mint order
Layers10, composited background first
Traits200 drawable, from the picrew layer export
Tiers1800 common, 750 rare, 300 epic, 150 legendary
Base power1, 2, 4, 8 by tier
Revealnone, art is public from mint one
Royalty700 bps, 7%; the staking pool is paid from it
SeedTRADER-BABIES-v1
ChainRobinhood Chain, id 4663

A 7% royalty applies on secondary sales, and the staking pool is paid from it, the same ETH pool stakers claim from. Every resale of a baby pays the babies that are staked.