HATCH

the rules

all of it, on one page.

HATCH is two contracts on Robinhood Chain. Nothing below is a policy — each line is something the code does, or something there is no code for.

1 · claim an egg

There are 1,024 eggs, numbered #1 to #1024, and never more — 1,024 is a constant, not a setting. Pick any unclaimed one and burn $HATCH for it. You get a real ERC-721. The burn is the same whichever egg you choose; it starts at 1000 $HATCH and rises by 10 for every egg ever claimed. It goes to the dead address, not to anybody.

Every egg is already decided: its colour, body, crown, eyes, mouth, markings and shell are a hash of its number. You can look at any egg's whole life before you claim it. Nobody chose them, and nobody can change them.

2 · hold it

From the block you claim it, it ages. The picture — drawn by the contract, not a server — moves through eight stages:
Egg
day 0
Cracking
12 hours
Hatchling
day 1
Fledgling
day 3
Juvenile
day 7
Adult
day 14
Elder
day 30
Ancient
day 60

3 · every move halves it

The age belongs to the holding, not to the creature. Any transfer — a sale, a gift, a move to your own second wallet — cuts the age in half, in the same transaction. A day-60 ancient that changes hands arrives a day-30 elder. So an old one cannot be bought outright: whoever buys it pays for half its age and has to grow the rest back. And yet an old one still sells for more than a young one, because half of a lot is still a lot.

4 · feed it

Once per UTC day, anybody can feed any creature — theirs or a stranger's — by burning $HATCH. A feeding adds one day to its age. It costs 100 $HATCH times one plus the stage, so an ancient eats eight times what an egg does. Feeding every day doubles the pace. Nothing buys more than that.

5 · sell it

List it at a price, straight against the contract. Nothing is escrowed — it stays in your wallet, still ageing, until somebody pays or you unlist. When it sells, 95% goes to you and 5% is burned, in one transaction, and the buyer receives it at half its age.

what the contract cannot do

  • hold ETH — nothing in it is payable
  • hold your $HATCH or your creature — tokens move straight from you to the dead address or the seller
  • mint outside the burn, or mint egg #1025
  • change an age, except by the three rules above
  • take a royalty, pause, upgrade, or redraw anything

The owner key can do exactly one thing: name the token, once. After that it is inert, forever — there is no function that gives it anything back.