FOSKAAY GGI EXPLORER

Proof, not promises

Inspect a gasless game session on Arc and check the trust claim yourself. Everything here is read directly from the contracts at . There is no backend and no server in between: what you see is what the chain says.

MAINNET
Session
Midchain
Proof
Honest limits

Look up a session

Paste a session id (bytes32). The game chooses it and passes it to handoverWithAccounts().

Connect (Handover)

Connected
Game contract
Payer (the game, never the player)
Start state hash
Committed seed
Players
Random values per move
Block

Settled result

Settled
Final hash (or session root)
Revealed seed
Settled by
Block
Why a fake result cannot settle. The final hash is signed by the players and the contract checks every signature before it emits the result. Change any move and the hash changes, so the signature no longer matches and settlement reverts.

The fee

Paid at connect
Session base
Per delegated account
Per game
Declared games (batch size)
Games committed on-chain (so far)
One fee per session, charged once at connect: a session base plus a per-delegated-account part plus a per-game part. Nothing inside the session is charged. The exact numbers and the full table live on the single pricing page.

Midchain moves (gasless, off-base, verifiable)

Inside a session, every move runs through the PURE game contract for free and is signed by the session key into a hash chain. Paste a session id to load its published move log and check the chain ends at the on-chain settled final hash.

The exact digest the players sign

Settlement is authorised by signatures over midchainDigest(sessionId, finalHash). Read it here straight from the registry (a pure view call).

Core state (single contract, fee built in)

Session base fee
Per delegated account
Per game
Destination
The fee is charged at connect and required before a session can settle, so it cannot be skipped on the official core. It is a direct transfer to the destination; there is no separate vault.

Honest limits

Inside a session, moves run off the base chain: they are signed by the session key and tied together by a hash chain, so a thousand moves cost the same as one. That is the design that makes play free, so there are no per-move transactions to list. The on-chain proof of a session is the connect event (Handover), the settled result (Settled), the revealed seed and the fee. A game that wants per-move visibility can publish its signed move log, and this explorer can render it; without that, per-move detail stays off-chain by design.
Settlement is submitted by a relayer, which is trusted for timing, never for truth. The signatures decide what is true, and the contracts enforce it.