$GG taxes trading, hands a random holder the pot as a USDG voucher every ~5 minutes, and lets them spend that voucher on real-world goods through Bitrefill. This page explains each moving part.
Every buy and every sell of $GG pays a flat 2.49% tax, taken in-token and swapped to USDG. ~2% pools inside the gacha contract as round collateral; ~0.49% is skimmed to a treasury wallet at the ownerʼs discretion. Every treasury withdraw is a public onchain event, and the skim is bounded so it can never touch voucher balances.
A round is a ~5-minute cycle. Four steps:
Weight is balance multiplied by holding time, so a fresh buy does not get the same odds as a long-held bag of the same size. Selling resets the clock on the tokens sold. Weighting is off-chain in the keeper. The published seed makes each round reproducible against public Transfer events.
Excluded from the draw: liquidity pools, the gacha contract itself, and burn addresses.
Redeem to wallet. Call redeem(amount) from your wallet (or the site button) to pull USDG straight to your address. Zero trust required.
Spend at Bitrefill. The /spend page redirects you into Bitrefill's checkout with the amount prefilled. You pick your card (Amazon, Uber, Steam, groceries, or ~2,000 others in ~180 countries), Bitrefill delivers the code. USDG never leaves your control until you sign the transfer.
Reclaim after 90 days. Anyone can call reclaim(winner) after 90 days of no fresh credits to that address. The voucher rolls back into the pot. A single new credit resets the timer.
Keeper. Trusted for fair RNG and settlement. Compromise ⇒ attacker can pick winners, but pot value stays inside the contract and vouchers already credited are untouchable. Keeper key rotation is a single owner tx.
Owner. Has emergency withdraw and treasury skim. Skim is bounded by availablePot(), so vouchers are safe against a malicious owner. Emergency withdraw is a social-trust escape hatch. Public balance snapshots make any voucher-drain visible.
Bitrefill. Not a smart contract dependency. The site links to their normal checkout; if Bitrefill goes down or your region is unsupported, redeem to USDG and use them elsewhere.