Hooked Miner Get Hooked

Parameters

The numbers the contracts enforce. Names match the source.

How they fit together is on Mechanism. Addresses are on Verify.

Two different floors. p0 is the price of one miner at the start of a round. m0 is min — the smallest buy that keeps the round alive, is the hooked one, counts as a last block, and can take the pot. A buy under min still takes miners and still takes on miners. You're not the hooked one. That block doesn't count. You can't take the pot. An opening 0.002 ETH buys about twenty miners, not one.

1 — Four-way cut

ConstantValueMeans
JACKPOT_BPS2,00020% the pot — the hooked one. On-chain name; this site does not call it a jackpot
DIVIDEND_BPS2,00020% on miners. On-chain name; this site does not call it a dividend
CARRY_BPS2,00020% next round
HOOKED_BPS4,00040% leaves and mines
BPS10,000The four slices sum to the buy

First buy of a round has no miners yet, so that On miners 20% goes into the pot: 40 / 40 / 20 / 0. Dust leftover joins the pot.

2 — Miner curve

ConstantValueMeans
P00.0001 ETHPrice of the first miner
DELTA0.00000002 ETHPrice rise per miner sold
ONE_MINER1018One whole miner
BLOCK_DURATION600 secondsOne block on the clock. Same ten minutes as the mine.

Price doubles every 5,000 miners. No supply cap. quoteMiners(value) is how many a given ETH amount mints at the current sold count.

Miners soldPrice of the next miner
00.0001 ETH
5,0000.0002 ETH
100,0000.0021 ETH
500,0000.0201 ETH
1,000,0000.0401 ETH
Opening buy (from zero sold)Miners
0.002 ETH—?19.96
0.02 ETH—?196
1 ETH—?6,180
10 ETH—?27,000

3 — Min

Min keeps the round alive. It does not gate minting. Any amount still buys miners and still splits. On chain the name is MQB.

ConstantValueMeans
M00.002 ETHMin at the open
M10.02 ETHMin on Flat
RAMP_BLOCKS (A)144One day of Climb
PLATEAU_END (B)432Three days from the open
DOUBLE_PERIOD (D)72Doubles every twelve hours after Flat
age < A : M0 + (M1 —?M0) — age/A A —?age < B : M1 age —?B : M1 — 2((age —?B)/D)
Age1d3d4d5d6d7d8d9d
Min (ETH)0.020.020.080.321.285.1220.582

Reads: mqbAt(age), currentMQB(), hbtcBlock().

4 — Next-round drip

ConstantValueMeans
CARRY_DRIP_BLOCKS144Last round's 20% drips into this pot over the first day

If this round dies early, the rest rolls to the next one. liveJackpot() is "if it died now," not a promise. The function is still called that; this site does not call it a jackpot.

5 — Hooked bank (L1)

ConstantValueMeans
MIN_REMIT0.05 ETHBank must reach this before a ticket fires
MAX_FEE_DRAG_DIVISOR50Fees may take at most 2% of the bank
SUBMISSION_FEE_MULTIPLIER3Inbox quote — 3
l2MaxFeePerGas3 gweiImmutable at deploy. Do not raise to chase Robinhood base fee
l2GasLimit300,000Immutable at deploy. Both sides pinned
Late bound4-day force-include + filterLate allowed. Lost is not.
You cannot withdraw hooked ether to L1~7 days the long wayCanonical optimistic exit. Not a player path.

6 — Tank spend (L2)

ConstantValueMeans
DRAIN_DIVISOR1,008A fat tank spends stock/1008 per block (~one week)
TIP_BPS500.50% of net-new spend, to the keeper
TIP_CAP0.002 ETHPer-beat tip ceiling
Impact gate500 bpsMine leg will not push the pool more than this
Spend split— mine / — LPAfter the tip. Unfilled mine input stays banked
Protocol sharepair or burnNo idle $HBTC inventory

Harvested OreHook rewards are 100% protocol: pair or burn. You do not receive $HBTC. Read fullMineCost() on the sink for the live full-mine ETH cost — a ceiling, not a filled-block promise. Ticket dest is fund().

7 — Honest timing

StepWhereTime
Take minersEthereum, buyMiners()now
On miners booksEthereum, per buythe same transaction
The 40% leavesBank ? Delayed Inboxevery 10 minutes while alive, once the bank clears the gate
Arrive and mineRobinhood Chainusually one block; late bound = 4 days + filter
The potEthereum, the hooked oneafter it settles
You cannot withdraw hooked ether to L1canonical exit~7 days the long way

No owner. No admin keys. One hook mints Bitcoin. This machine feeds it.