GULLY CHAINDocs

Arcade

On this page

Live

Live on testnet. The GullyArcade contract is deployed and Frog Hop season 1 is open. Play it in Gully Street at app.gullychain.xyz/arcade.

Gully Arcade is a set of free-to-play games whose leaderboards live on Gully Chain. Scores are submitted on chain, seasons have prize pots that anyone can sponsor, and winners claim their prizes themselves.

Contract Address
GullyArcade v1.0 0xe573789b235314661DEdDA08a18Ca261c069c872

#How it works

  • No paid entry, ever. Playing and submitting a score costs only gas, which is sponsored when the player uses a smart account. submitScore is not payable and there is no stake, ticket or entry fee anywhere. The arcade is a free contest, not a game of chance with a buy-in.
  • Scores are attested. A score needs an EIP-712 signature from the season's attestation signer, a small server that replays the run from its seed and input log with the same engine the game runs in the browser. Only the player's best score counts, and each run can be submitted once.
  • Prizes come from sponsors. Anyone can add ETH (fundSeason) or an allow-listed ERC-20 (fundSeasonERC20) to a season's pot while the season is open.
  • Settlement is public. After the season ends, anyone calls settleSeason. The pot is split over the top players by a split fixed when the season was created, and each winner pulls their prize with claim. Anything not paid out (unfilled ranks, rounding) goes back to sponsors pro rata.
  • The owner can never move funds. There is no withdraw, sweep, fee or upgrade path. The owner can create seasons, pause score submission and funding, allow prize tokens, and cancel a season only before it ends (for example if a signer key leaks), in which case the whole pot is refundable to sponsors. Final results cannot be overturned.

#Frog Hop, season 1

Game ID 1
Season ID 1
Runs 7 days from 2026-10-25
Prize split top 5: 40% / 25% / 15% / 10% / 10%
Pot ETH, plus any allow-listed token a sponsor adds

Prizes are testnet tokens with no value. Seasons of one game never overlap and last at most 90 days.

#For builders

The contract is open and any game can be added as a new game ID with its own seasons and attestation signer. Useful views: leaderboard(seasonId) (top N, best first), season(seasonId), pot(seasonId, token), bestScore(seasonId, player) and latestSeasonOf(gameId). Events: SeasonCreated, SeasonFunded, ScoreSubmitted, LeaderboardUpdated, SeasonSettled, PrizeAwarded, PrizeClaimed, RefundClaimed, SeasonCancelled.

Season start and end are timestamps, not block numbers, because block.number on Gully Chain is the parent chain's block number (see Network reference). To propose a game for the arcade, write to [email protected].