Ethereum mainnet · Uniswap v4 · Ondo tokenized stocks

Stockman

A broker with a grappling cufflink, a city full of tokenized stocks, and a pot that pays out every ten minutes. Every trade of $STOCKMAN on Uniswap v4 pays a fee; the vault turns those fees into five real tokenized stocks. Each round puts a basket of every stock at stake, cut into coin-sized pieces: every coin you grab is one piece of that stock, paid as tokens. What the screen shows is what the claim pays.

Play now How it works

You need STOCKMAN to enter rounds.

Round pot
≈ —ETH
Next settlement
--:--
Players in round
0
Paid out all-time
—ETH
--:--
until settlement
Live round #— · —
Round pot
≈ —ETH
Coins taken
0
Baskets at stake this round
Rounds are aligned to the clock: lobby, ten minutes of play, settlement. Threshold to enter: … STOCKMAN. Last settled round: —

Play

Wall Street Web runs full screen on its own page. Practice is free for anyone; coins count for wallets that hold the threshold and enter the lobby. With a wallet connected you pick a name that floats above your broker's head.

Live: 0 in the city Rooms hold 64 players each
Open the game

Wall Street Web

WASD to run, hold the mouse button to swing, E to zip, Space to jump, C to dive. Grab the glowing stock coins on rooftops and above the avenues. Other players are live; their names float above them.

Play in full screen

How it works

One token, one game, one clock. No staking, no points program. Holders play; the vault pays in the stocks you catch.

01

Trade

$STOCKMAN trades on Uniswap v4 against ETH. Every buy and sell pays a 3% fee in ETH through the pool hook, and all of it lands in the vault. A keeper converts the fees into the five stock tokens in batches, so the vault holds an inventory of real stocks. Its counter and its inventory are public, block by block.

02

Swing

Every ten minutes a round opens. Wallets holding the threshold enter the lobby and run the city. Five stocks spawn as coins. Every coin you grab is worth one piece of its stock's basket, times your balance factor: 1× at the threshold, up to 10× for larger balances.

03

Settle

Each round puts a basket of every stock at stake: the round's share of the fees collected in the window before it, priced in tokens at the last real conversion, never below a small floor, never more than the free inventory. Each basket is cut into coin-sized pieces, taken in the order the coins are grabbed until the basket is empty; one wallet takes at most half of a basket. What the screen shows is what the claim pays. What nobody took stays in the vault for the next rounds.

04

Claim

Your winnings sit in the vault as token amounts under a signed balance. Claim is one transaction that transfers the tokens to your wallet: NVDAon for the NVIDIA basket, TSLAon for the Tesla basket, and so on. No swap, no quote, no minimum.

What you can verify

Before each round the server publishes a commitment to the seed that decides where coins appear; the seed is revealed with the results. Every round publishes a result file with the block range, the fee window, the conversion rates and the inventory it used, every coin and who took it, and the payout per basket in tokens. The results page recomputes coin positions, baskets, payouts and the file hash in your browser. Once a day the hash of all results is anchored on chain.

What the contract enforces, and what it does not

The vault pays only against the server signer's signature and never more than half of a stock's inventory per 24 hours; nothing else leaves it, and the owner can only rotate the signer and the operator. Winnings unclaimed for 30 days expire from the books while the stock stays in the vault for future rounds. It cannot judge whether the server counted coins fairly; the published results and the daily anchor make the server's story fixed and checkable.

Stocks

Five Ondo tokenized stocks on Ethereum, each checked against the Ondo beacon on chain. Every round is split evenly between them: the number on each card is the tokens of that stock at stake in the current round, bought from the round's share of the fees at the last real conversion rate. Bars show how many coins of each were collected so far.

Token

A plain ERC-20 with the fee hook on the Uniswap v4 pool. Fixed supply, no mint, no owner, no fee switch.

$STOCKMAN
ChainEthereum mainnet · id 1
VenueUniswap v4 · STOCKMAN / ETH
Supplyfixed
Fee3% buy · 3% sell · in ETH
Round length10 minutes
Entry threshold…
Payout assets5 Ondo stocks
Launch tokensdev buy burned, LP token burned
Contracts
Token
announced at launch
Vault (holds the fees and the stock inventory, pays claims, anchors results)
announced at launch
Hook (takes the fee on every swap, sends it to the vault)
announced at launch
The hook is bound to one pool and one vault forever. The vault's owner can only rotate the signer and the operator; nothing leaves the vault except claims and conversions, and nobody can mint, pause trading or change the fee. Full details on the Docs page.

Questions

Do I need a wallet to play?

Not for practice: the city is open to anyone. To have your coins count, sign in with a wallet that holds the entry threshold at the start of the round and still holds at least 60% of that at the end.

When can I claim?

Any time. One claim pays everything settled so far, across rounds; the round you are playing joins the moment it settles, a few seconds after it ends. Nothing expires for 30 days.

What exactly do I get paid in?

In the stocks you collected. The vault already holds the stock tokens; each round puts a basket of every stock at stake, and your share of a basket is a token amount, fixed at settlement. Grab NVDAon coins, get paid in NVDAon. Claim transfers the tokens to your wallet in one transaction.

How is a basket split?

Each stock's basket is cut into a fixed number of coin-sized pieces. Every coin you grab is worth one piece, times your balance factor (1× at the threshold, rising linearly to at most 10× for larger holdings), until that basket is empty; the last piece can be partial. One wallet takes at most half of a basket. Credits are fixed the moment the coin is taken, in the order the server saw the pickups, so what the screen shows is what the claim pays. Whatever nobody took stays in the vault for the next rounds.

What stops cheating?

The server simulates every player itself; the browser only sends inputs. Coin positions come from a committed seed, and every result file is published with the seed, the blocks and every pickup so anyone can recompute it. Once a day the results are anchored on chain.

What if the pot is tiny?

Every round's basket is lifted to a small floor as long as the vault has the stock in free inventory, so quiet hours still pay something. A tiny basket means tiny pieces, but every coin still pays its piece. Pieces nobody took, and the credits of wallets voided at the end of the round, stay in the vault. Nothing is burned. Claims are one transaction for as many stocks as you like, so you can wait until it is worth the gas.

Why these five stocks?

They are Ondo tokenized stocks with a verified Ondo beacon and a liquid USDC pool on Ethereum, which is what the keeper needs to turn fees into stock in batches. The order is fixed forever: NVDAon, TSLAon, SPYon, AAPLon, SPCXon.

Is there a token utility beyond the game?

Holding the threshold is the ticket into rounds, and with a larger balance each coin is worth more, up to 10×. The token does nothing else. Trading it fills the pot that players compete for.