The gasless rail Arc was missing for games, built by a solo dev
Every Arc game move used to need a transaction. I built Foskaay GGI (Foskaay Gasless Games Infrastructure) so an entire on-chain game runs free inside a session and settles twice: connect and close. A full 2-player Ludo with 200+ moves comes to about 0.01 USDC all-in, instead of the 1 to 3 USDC the same game would cost move by move. Live demo, open source, SDK on npm.
Quick answers (read these first)
(1) What is Foskaay GGI?
(2) Is this on Arc Mainnet?
(3) Is Foskaay GGI open source?
(4) Is there a demo ready?
(5) How do I integrate Foskaay GGI into a new or existing game?
@foskaay/ggi-sdk and
@foskaay/ggi-contracts-sdk),
so you install them into your project like any package. The
docs quick start
gets you from zero to a gasless game, and the
designing guide
shows how to shape your smart contract to get the most out of the gasless features.
(6) Are you available to help integrate my game?
01 The problem: Arc games cost a fortune per move
Arc is cheap, fast and stablecoin-powered. USDC is the gas token, so costs are predictable in dollars, which is exactly what game deals, day-one economies and micro-charges need. The thing that stopped me from building on it was not the chain itself. It was the rail.
When I tried to put a proper game on Arc, I found there was no gasless rail like MagicBlock ER. On Arc, every action had to be a transaction. A regular 2-player Ludo is roughly 100 moves per player, so 200+ moves plus dice per game, and every one of those was a sponsor transaction that somebody pays for. I priced the obvious path at about 1 to 3 USDC per single game. No game developer can subsidize that per player, per session. DeFi contracts are set once and left alone; games change constantly, new modes, balance tuning, events. Expensive per-action play simply does not work for games.
02 What I built: the missing rail, for everyone
I am a smart contract developer who works in Solidity (EVM) and Rust (SVM, the Solana world), and I have shipped enough real games to know the blocker was never the game logic. It was the cost of the plumbing around it. So instead of waiting for the rail to appear, I built Foskaay GGI on Arc.
- One session, two Arc transactions. You connect a session (the fee is paid in USDC once) and settle it when play finishes. That is it. Everything between is free for the player and for you.
- Moves are not transactions. Each move runs through your own pure contract logic via eth_call, is hash-chained and signed with session keys, and commits to the chain only at settle. A 200-move game costs the same as a 5-move game.
- Players never touch gas. No wallet popup per move, no signatures, no friction. When the session settles, the player's wallet and points simply exist, on-chain.
- Your contract stays the source of truth. The rail only owns the room. The game keeps its own economy, leaderboards, items and upgrades, behind upgradeable UUPS proxies so games can iterate without stranded accounts.
03 Measured, not promised
The full measured table, unbatched and batched, is on the pricing page. Batching pushes even harder: one session can cover many matches, so the per-game cost keeps falling. Fees are charged on testnet too, so what I quote is real Arc economics, not an estimate.
04 Provably fair, fully on-chain
- Dice. The seed is committed on-chain at connect and revealed at settle. Every roll is derived from it through your own pure rules, and anyone can re-run it in the Explorer.
- Crown and points. Winners, placements and points are written straight into the state and landed on-chain at settle. No replay, no he-said-she-said.
- The frontend only displays. Nothing is invented in the browser, nothing trusted from a server database. The chain and the signed, verifiable session are the only truth.
05 What is live right now
On-chain Ludo demo
Play it now on mainnet or testnet, no wallet needed per move
Connect once, play the whole match free, see the crown and points land on-chain at settlement.
Play the demo โ DocsDocs and quick start
Zero to a gasless game in four steps
Architecture, the designing guide, the persistence model and the fee pages. Built for a game dev.
Read the docs โ npmSDK on npm
@foskaay/ggi-sdk, published and versioned
connect, settle, pure rules, session keys, randomness and client-side session verification, one install.
See it live on npm โ OpenOpen source
Contracts, relay, SDK, demo, all public
Deployed addresses, upgradeable proxies and the midchain logic, readable and auditable by anyone.
Browse the code โ PricingHonest pricing
Real measured numbers, no marketing gas
Per-session fee in USDC and the measured gas table, unbatched and batched, so you see exactly what you pay.
See the numbers โ HelpHire me to integrate
Take your game from idea to gasless
New game or existing contract, I optimize it for Foskaay GGI and ship it with you. Solo dev, limited slots.
Book a slot โ06 See it work: demo video and screenshots
A short screen recording of the full flow will be embedded here once it is uploaded (YouTube or Vimeo, per the Arc forum rules) and linked on X. Until then, the live demo is the fastest proof: open it and play.
Screenshots to add: (1) the board mid-game with moves running free, (2) the on-chain result after settle with the committed game, points and the two transaction hashes, (3) the cost line showing a 200+ move match at about 0.01 USDC.
07 Why Arc needs this now
Arc is known as a finance chain, and beneath great games that is exactly the right foundation. USDC gives stable, predictable matching and payout for game deals and in-game economies, the chain is cheap and fast enough for real play, and the network is building fast. The one thing holding game developers back was the cost of running a game action by action. That door is what Foskaay GGI opens. Games on Arc can now be played cheap, be provably fair, and let developers stop burning subsidy on gas.
08 What I am building next
- More on-chain demo games beyond Ludo, shipped as public references.
- Richer SDK surface and more design patterns for multiplayer and matchmaking games.
- More tooling so a developer can move from idea to gasless game in a single session.
Copy this post for the Arc forum (or anywhere)
TITLE: Foskaay GGI, the gasless rail Arc was missing for games (live demo, open source, built by a solo dev) QUICK ANSWERS: (1) What is Foskaay GGI? Foskaay Gasless Games Infrastructure. A game opens an on-chain session on Arc, everything inside the session (moves, dice, timers, points) runs free, and it settles once. Players never pay gas and never see a wallet popup. Your game contract stays the source of truth. (2) Is this on Arc mainnet? Yes, plus testnet, so you build and test for free and switch to mainnet when ready. (3) Open source? Yes: github.com/solomonfoskaay/foskaay-ggi (4) Demo? Yes, a live on-chain Ludo at foskaayggi.globalfolkgames.fun/demos/board/ludo/ with more demos coming. (5) How to integrate? The SDKs are published on npm (@foskaay/ggi-sdk, @foskaay/ggi-contracts-sdk) and install like any package. Docs quick start at foskaayggi.globalfolkgames.fun/docs/#quickstart, plus a designing guide for gasless-shaped contracts. (6) Can you help integrate my game? Yes, via the hire page: foskaayggi.globalfolkgames.fun/hire/ (solo dev, limited slots, so book early). WHY I BUILT IT: Arc is cheap, fast and stablecoin-powered. USDC is the gas token, so every cost is predictable in dollars, ideal for game deals and micro economies, not just finance. But when I tried to put a real game on Arc I found no gasless rail (like MagicBlock ER) existed. Every action had to be a transaction. A normal 2-player Ludo is roughly 100 moves per player, over 200 moves plus dice per game, and every one of those was a payable transaction, about 1 to 3 USDC per single game. No game developer can subsidize that per player. DeFi contracts are deployed once and left alone; games change constantly, new modes, balance tuning, events. Per-action gas does not work for games. WHAT FOSKAAY GGI DOES: Delegate your game and player contracts into a session, play the whole match free inside, settle once. Exactly two Arc transactions per game: connect (fee paid once in USDC) and close. A 200-move game costs the same as a 5-move game. Moves run through your own pure contract logic via eth_call, are hash-chained and signed with session keys, and commit to the chain at settle. The midchain is not a sidechain, not a validator, not a separate RPC: it is a signed off-chain hash chain anchored on Arc at connect and settle, so anyone can replay and verify every move against the on-chain result. Contracts stay upgradeable (UUPS) so games can iterate without stranding accounts. MEASURED, NOT PROMISED: I played a full 2-player Ludo with over 200 moves and it cost about 0.01 USDC all-in (connect plus settle, both paid by me). Move by move on Arc the same game would be 200+ transactions and 1 to 3 USDC. That is roughly 80 to 100x cheaper. I have run 80+ games in testing for about 1 USDC all-in, and the measured table (foskaayggi.globalfolkgames.fun/pricing/) shows batching takes it much further. Fees are charged on testnet too, so these are real Arc economics. Provably fair: seed committed at connect, revealed at settle, every roll derived from it, winners and points landed on-chain at settle, frontend only displays. LINKS: Demo: foskaayggi.globalfolkgames.fun/demos/board/ludo/ Docs: foskaayggi.globalfolkgames.fun/docs/#quickstart SDK: npmjs.com/package/@foskaay/ggi-sdk Open source: github.com/solomonfoskaay/foskaay-ggi Pricing: foskaayggi.globalfolkgames.fun/pricing/ Explorer: foskaayggi.globalfolkgames.fun/explorer/ Hire me: foskaayggi.globalfolkgames.fun/hire/ Built by a solo smart contract developer working in Solidity (EVM) and Rust (SVM). Try the demo, read the code, and if you want the rail inside your own game, book a slot early, as I take a limited number of custom integrations at a time.