PROTOCOL SPEC · V0.4

RELATIVE RETURN.
REAL STAKES.

01

ONE COIN EACH

The creator chooses one asset, match length, payout mode and stake. The lobby stays open until a second wallet joins with another supported asset and the same USDG stake. Nobody chooses a token for the other player.

The four match lengths are 1 minute, 5 minutes, 10 minutes and 1 hour. The clock starts when player two joins. Both wallet addresses, both assets, the stake and the expiry remain public for the full match.

02

PAYOUT

The final relative gap moves the same percentage of one stake.

The final relative gap is multiplied by three.

The final relative gap is multiplied by five.

ALL IN

Any final lead wins the full pot. An exact tie refunds both stakes.

Only relative performance matters. If A falls 8% and B falls 10%, A wins by two percentage points.

spread = return(A) − return(B)
gross(A) = stake × [1 + clamp(multiplier × spread, −1, 1)]
gross(B) = 2 × stake − gross(A)

Gross payouts always add up to the two deposits. There is no borrowing, funding rate or early liquidation.

03

ONE ESCROW PER MATCH

LobbyFactory deploys a new LobbyEscrow with CREATE2. Player one's USDG moves directly into that escrow. Player two sends the same amount to the same address when joining. Factory balance remains zero.

The escrow stores the players, assets, stake, duration, payout mode, start prices and deadline. It has no owner, proxy, upgrade, rescue or admin withdrawal. Once live, a match cannot be cancelled or edited.

04

20% OF PROFIT

OUTRUN charges 20% of positive profit at settlement. The original stake is never charged. A losing payout is never charged.

profit = max(gross payout − original stake, 0)
protocol fee = profit × 20%
user receives = gross payout − protocol fee

Example: two players stake 10 USDG in ALL IN. The winner's gross payout is 20 USDG. Profit is 10 USDG, fee is 2 USDG, and the winner receives 18 USDG.

Before the project token launches, fees go to the published treasury. After launch, new lobbies can point to the published buyback vault. A vault address will not be listed until the project token and approved execution route exist.

05

PRICE OBSERVATIONS

Browser prices are display data. Contract settlement uses approved adapters. The registry currently enables 226 assets: 194 Robinhood Stock Tokens, 30 Pons tokens, WETH and USDG.

The exact adapter for each side is pinned inside its escrow. A later registry update cannot change a live match. Each proof is bound to the adapter address, chain ID 4663, asset address, value, observation time and expiry. The escrow accepts observations only within 20 seconds of the required start or end timestamp.

The current SignedPriceAdapter has an immutable signer. Stock observations use Robinhood Stock Token quotes. Pons observations use Pons market data. ETH uses a median of Coinbase, Kraken and CoinGecko with at least two available sources. USDG is the one-dollar collateral denomination.

This release has a transparent but permissioned price boundary: the server signer can attest observations for enabled assets. Moving stock markets to reviewed onchain feeds and adding manipulation-resistant DEX observations for arbitrary tokens reduces that trust.

06

LIFECYCLE

CREATE

Factory creates a dedicated escrow and locks player one's stake.

JOIN

Player two chooses another asset, locks the matching stake and starts the timer.

SETTLE

After expiry, the keeper submits both end-price proofs. Anyone can submit the same valid proofs.

PAYOUT

Escrow calculates the result and sends both payouts plus the protocol fee in one transaction.

An unmatched creator can cancel and recover the full stake. If settlement prices remain unavailable for one hour after expiry, anyone can void the match and return both principal amounts. A blockchain cannot execute on time without a transaction; the keeper supplies that transaction but has no custody or special settlement power.

07

CONTROL BOUNDARIES

The factory rejects unsupported assets, invalid durations, stakes below 10 USDG, self-matches and fee-on-transfer collateral. Payouts are capped by the two-player pot, so leverage cannot create protocol debt or liquidate more than the stake.

A factory pause blocks only new create and join actions. It cannot block settlement, cancellation or timeout refunds. Factory and registry ownership use a two-step transfer. Owner can pause creation, change the treasury for future lobbies and change registry entries for future joins. It cannot withdraw a live escrow or replace an adapter already pinned there.

The current owner is the published launch wallet. Ownership must move to a fresh multisig before unrestricted public use. Contract source verification and an independent audit are pending.

08

ROBINHOOD CHAIN CONTRACTS

Network: Robinhood Chain mainnet · chain ID 4663. All addresses below are live.

LobbyEscrowNEW ADDRESS FOR EVERY MATCH
BuybackVaultNOT DEPLOYED · REQUIRES PROJECT TOKEN

OUTRUN does not use a Uniswap factory or hook. Those contracts belong to liquidity protocols; OUTRUN is a two-player collateral and settlement protocol.

09

LAUNCH STATUS

LIVE

Factory, registry, adapter, price service, read-only RPC proxy and settlement keeper.

TESTED

All 16 payout and duration combinations, cancellation, timeout refund, adapter pinning, signature tampering and pot conservation.

PENDING

Two-wallet mainnet match with real USDG, source verification, independent audit and multisig ownership.

LIMIT

Start with the minimum stake. The current release uses a permissioned price signer.