The Crown
The rule
The Crown is a contract that holds ETH. From launch it is the creator-fee recipient of $GPU, so trading fees flow into it. Each UTC day is an epoch. The Crown scores every rental it settles: the island's score for the day is the USDG its rentals settled that day. At the end of the day the pot goes to the owner of the island with the highest score; ties keep the island that got there first.
- Computed onchain: nobody posts a winner.
settleRentalssettles each rental through the Meter and updates the leader in the same call. - House islands are ranked but never take the crown, so the pot only ever goes to people who brought their own GPU.
- A day with no rental on an outside island pays nothing; the pot rolls over to the next winner.
- Epochs are crowned in order by
crown(), which anyone can call after midnight UTC (the keeper does). It first pulls any fees the Pons escrow owes the Crown. - If the winner has sunk or its owner cannot receive ETH, the pot rolls over.
Why it is hard to fake
Renting your own island to win is possible and costs money: 20% of every USDG of fake volume goes to the burn reserve, and the fake renter pays gas. To beat an honest leader with 50 USDG of rentals in a day, a faker burns 10 USDG of reserve on top of the gas. Scoring by value, not by count, means a thousand tiny rentals weigh what one large rental weighs.
Contract
Crown at 0xc4B5ea33Ee9fB0935ea9f90667482e9DF5dd0b0c, owned by the operator wallet (which can withdraw, cannot renounce), bound to the Meter and Islands registry. Source verified on Sourcify. Before $GPU launches the pot is zero; it fills from launch.
cast call 0xc4B5ea33Ee9fB0935ea9f90667482e9DF5dd0b0c "pot()(uint256)" --rpc-url https://rpc.mainnet.chain.robinhood.com
cast call 0xc4B5ea33Ee9fB0935ea9f90667482e9DF5dd0b0c "leader(uint256)(uint256)" $(( $(date +%s) / 86400 )) --rpc-url https://rpc.mainnet.chain.robinhood.com