If the mechanism is zero-sum, where does my edge come from?
Two places. Entering early: the rank bonus moves expected value from late ranks to the first 20, so ranks 1 to 3 sit around +136% against their tax. And snipers: everything the snipe window pays goes into a pot it cannot win, which lifts every eligible ticket above its own tax. Late, bonus-less entries are the ones paying for both.
Why not farm the early ranks with twenty small wallets?
Because rank multiplies your own stake, nothing else. A ×3 on a dust buy is still dust: a latecomer staking $5,000 out-odds a rank-1 wallet staking $1,500. Add the 0.01 ETH ticket minimum and gas per wallet, and splitting a bankroll into twenty entries buys you fees, not odds.
My displayed odds dropped after I bought. Was I diluted?
Yes, and it is the normal mechanics, not a trick. Odds settle at close, across the whole field: every buyer after you adds weight to the denominator. That is why the interface shows two numbers, your odds now and your odds at close. What is locked forever is your rank multiplier relative to the field average.
I bought through an aggregator and have no ticket. Why?
Tickets are registered by the official router, which passes your address through to the hook. An aggregator or another frontend routes the swap differently: the 5% still enters the pot, but no ticket opens for you. This is a hard constraint of Uniswap v4 hooks, not a choice; the sender the hook sees is the router, not you. Always trade through the official interface.
Why exclude snipers entirely instead of just taxing them harder?
Because the obvious fix backfires. If weight follows tax paid, a wallet taxed at a higher rate collects more weight per dollar: on real trade data, the punished sniper ended up holding the best odds in the field. Exclusion is the only version that does not reward the thing it punishes. Their tax stays in the pot and raises everyone else's expected value.
Can the team, a validator or anyone else game the draw?
The draw seed is verifiable: Chainlink VRF on Ethereum mainnet, requested when the round closes. The team cannot steer it: the randomness is generated with a proof off-chain, then verified on-chain. Weights are the on-chain record of taxes paid; the payout is pull-only, claimed by the winner. The team can buy tickets like anyone, with exactly the odds its tax buys, in public.
What if the round never reaches the pot target?
The round closes on whichever comes first, the pot target announced when the round opens or 24 hours, and the draw runs on whatever the pot holds at that moment. A smaller pot means a smaller payout; the mechanics do not change, and the pot is always paid out in full.
V2 and V3 are inactive code on-chain. Is that a rug vector?
The modules ship deployed and verified from day one, inert by design, with activation tied to public volume milestones rather than a switch flipped in the dark. Inactive means callable by no one, not hidden: read the source, check the milestones. Nothing is presented as working before it does.
What happens if the winner never claims?
Nothing moves without the winning address: the hook pays by pull, and claim() is open for 90 days after the draw. After that the pot rolls into the current round, where it is drawn again. It never goes to the team, and there is no key that could send it anywhere else.