Rewards · daily lottery

Play, and the pool plays back.

90% of all game revenue flows into the reward pool. Each day a capped share is paid out: 70% to the leaderboard, 30% to 100 random active players. Rewards depend on revenue and are never guaranteed.

Reward pool (unallocated)—— allocated, awaiting claims
Today's budget cap—20% of unallocated rewards · 70% leaderboard / 30% lottery
Lottery pot (est.)—split equally across up to 100 winners
Your lottery entry—0 wallets entered today

Daily lottery rounds

The first round is committed on-chain ahead of time; results appear here after the day ends.

Who can win

Entry is free. Every wallet with at least one qualifying game event in the last 7 UTC days is entered automatically: claiming a plot, upgrading, building a shield, launching a mission, a marketplace trade, or defending against an SI attack.

Up to 100 winners per day share the lottery pot equally. Protocol wallets are excluded. Every qualifying on-chain action costs PWSI (and defenses require holding a plot), which makes farming entries with throwaway wallets expensive.

Verifiable draw

  1. 1 · Before the day starts, the operator commits keccak256(seed) to the DailyDraw contract (0x4cB9…d7C0).
  2. 2 · After the day ends, the entrant list is fixed on-chain (its hash) and a future L2 block, 10 blocks ahead, is chosen.
  3. 3 · The seed is revealed; randomness = keccak256(seed, hash of that block, round, entrants). Winners = drawIndices(randomness, n, 100), a view function anyone can call.
  4. 4 · If a reveal is withheld past the 256-block window, anyone can void the round. It can never be redrawn.
  5. Limits: Chainlink VRF is not available on Robinhood Chain. This commit-reveal scheme stops the operator from choosing winners after seeing the block, but the operator could still decline to reveal (voiding that day's lottery). The pot then stays in the pool.

Published epochs

Merkle roots on RewardPool · 0xF30b…F137

No epochs yet. The first daily epoch is published shortly after 00:00 UTC.