THE FORMULA

The scale is published before a season starts and holds for that whole season. Nothing already earned is ever taken back or rescored.

Between seasons the scale can change, announced before the new one opens. Turnout is the reason: the weighting below only tells days apart while turnout stays under the scale, so a project that outgrows its numbers needs new ones or the scoring quietly stops meaning anything. Past seasons keep whatever they were played under.

What will not happen: a number moving under a season already running, or an old season rescored after the fact. People optimize against whatever is announced, and quietly rebalancing after they have built a year of history is how a project loses the people who cared most. This page is the contract.

1 · SCORE: RARITY WEIGHT

Points earned for minting on day d:

points(d) = max(1, floor(scale / totalMints(d)))

Season 1 scale = 1000

The scale is the one number that can differ from season to season, and the table below is what it produces at 1000. Above half the scale every day pays the same single point, so if a season's turnout starts crowding that ceiling the next season gets a bigger number. That is the whole reason the scale is not permanent.

MINTERS THAT DAYPOINTS EACH (SCALE 1000)
11000
10100
10010
4002
20001 (showing up is never worth zero)

Your score is the sum across every day you minted. Being awake at 4:12am on a day nine people caught is worth more than a hundred easy evenings.

Ties break by score, then days minted, then who showed up earlier in the project's history, then wallet address. Two equal scores land in the same order every time the table is rebuilt. Ranking never depends on how much you paid or how many wallets you hold.

Points from different seasons are never added together, because a season with a bigger scale hands out bigger numbers for the same achievement. Every season has its own board, and a board is final the moment its season closes.

2 · 30-DAY DENSITY

density = days you minted in the last 30 / days that actually opened in the last 30

The 30 most recent UTC days, today included. A day the scheduler failed and no window opened is excluded from the denominator. You cannot lose density to our infrastructure. A day that opened and got zero mints still counts in the denominator for everyone. If nothing opened at all in those 30 days, density is shown as — rather than zero.

Density is used here instead of streaks, on purpose. The time is random. A broken streak usually just means the window landed at 4am.

3 · LONGEST STREAK: A BADGE, NEVER A MULTIPLIER

Your longest consecutive run of opened days minted, ever. It is permanent: breaking a streak costs you nothing you already earned, and there is no multiplier cliff waiting at day 60. Days that never opened do not break a run.

4 · HOW THE RANDOM TIME IS KEPT HONEST

Before day one, the owner locked commitment = keccak256(seed) into the contract. Each day's open minute is uint256(keccak256(seed, dayIndex)) % 1440, and each open carries keccak256(seed, dayIndex) on-chain as its beacon. At the end of the run the seed is published on-chain, and anyone can recompute all open times and check them against the WindowOpened events.

This is retrospective verification, not trustlessness. The backend necessarily knows the schedule in advance, because the reveal has to happen at open time. If the day's time were computable early, every bot would know it hours ahead, which is worse. What the commitment does prove: the full schedule was locked before day one, and no single day could be adjusted to favor anyone.

5 · THE MECHANICS, FOR THE RECORD

One window per UTC calendar day. Exactly 180 seconds, enforced by the contract itself. One mint per wallet per window. No supply cap, no allowlist, no roadmap, no promised utility. The edition size of a day is the number of people who were awake, watching, and fast enough. The low days are the valuable ones.

Payment must be exact. Underpaying reverts, and so does overpaying: the contract refuses the money instead of keeping it. The mint page always sends exactly the price it read from the contract. The price is a fixed amount of ETH, retuned occasionally to track roughly one dollar, and it can only change between windows. Whatever the price is when a window opens is the price for the whole 180 seconds.

Some days will not happen. If the scheduler is down when a day's moment arrives, that day never opens, and it is not made up later. There is no backfill window. A day that never opened does not exist for any purpose here: it is not in a density denominator and it does not break a streak.

Windows can cross midnight. A window that opens at 23:59 runs its full 180 seconds into the next day. Those mints belong to the day the window opened, and they do not use up your mint for the day that is starting.

6 · CHECK ALL OF IT YOURSELF

None of the above requires trusting this page. Every number on the leaderboard is recomputed from WindowOpened and Minted events on the contract, with no off-chain state, so anyone can rebuild it from a fresh node and get the same numbers. Scores and streaks are fixed forever once a day closes. Density is the one figure that moves on its own, because its window is the last 30 days from whenever you ask.

Contract: —

← leaderboard