THE DOCS

How the house actually works — rail, games, money. No hand-waving.

OVERVIEW

BullStake is a simulation market: short shows (races, fights, more coming) run around the clock on Solana devnet. Each show is a betting round — everyone bets into one shared pot, a verifiable random seed decides the outcome, winners split the pot and mint $BEEF. The numbers that matter:

Round length~60s + settle
Bet size0.01 – 0.1 ◎ per ticket
Winner split95% of the pot, by stake
House rake5%, fixed on-chain
$BEEF emission1,000 per settled round
$BEEF mint authorityprogram PDA

THE RAIL

Every show is a round account on Solana. A keeper opens the betting window; at the buzzer the round steps into a MagicBlock ephemeral rollup, where VRF draws the seed (~2.5s measured live) and the result is computed — then everything is stamped back to Solana in one commit. Measured on a real round: VRF in ~2.6s, undelegation back to L1 in ~2.3s.

BETS OPEN0.01–0.1 ◎ · ~60sLOCKEDat the buzzerTHE ROLLUPVRF seed · ~2.5sRESULTstamped to SolanaCLAIMSOL + BEEF · 1 txsame seed → same show, forever
One round, start to finish. Every arrow is a transaction you can look up.

The engine is a pure function of (seed, level): same inputs, same show, on any machine, forever. That determinism is the whole proof — the studio pages accept seed deep-links so anyone can replay a settled round bit-for-bit and compare it with what the chain paid on.

THE GAMES

One provably-fair rail; each show is a different game on top of it.

🏁 MARBLE RUN ● LIVE

Eight bulls roll one brutal course — pegs, kickers, doors, pistons, the squeeze. Finish order is the settle order. Arenas rotate between rounds.

🥊 FIGHT NIGHT ● LIVE

1v1 auto-battler on the same round rail — a fight is a round whose level encodes the matchup. The keeper fixes the pair before betting opens; the seed stays the provable part.

🚜 FARM HOUSE SOON

The idle show: stake a plot of the farm, let the herd graze it, split the harvest with the plots that survive the round. New game, zero new trust assumptions.

BETTING & PAYOUTS

All bets pool per round. Odds on screen are implied live from the pool sizes — there's no bookmaker line to move against you. When the round settles, winners split 95% of the pot in proportion to their stake:

WINNERS · 95% of the pot, split by stake5%house
The rake is fixed on-chain. No fees on top, no spread, no gas games.

A claim is one transaction: your SOL share out, your $BEEF minted, receipt on-chain. Nothing custodial — the program pays you directly. Ticket accounts close after settling with rent returned to the bettor, and round accounts recycle their rent into future rounds.

$BEEF — NEW SUPPLY IS WON

A launch supply is minted when the token is created. That mint then moves to the program: set_beef refuses a mint whose authority isn't the beef_auth PDA, so from the moment the layer is wired the house cannot sign a mint even if it wanted to. Every settled round emits 1,000 BEEF, split among winning tickets by stake — after the handover, winning a show is the only way new BEEF appears.

+1,000+1,000+1,000+1,000+1,000$BEEF SUPPLYlaunch supplyrounds won →
Supply is a staircase: it starts at the launch supply and steps once per settled round. No other stairs exist.

Bulls minted at the machine are MPL Core NFTs, and holding one or more bulls earns you $BEEF from the shows your bulls appear in — the herd works while you sleep.

THE MACHINE

The jackpot machine is a 3×3 slot face with one control: the lever. Each spin runs through the same ephemeral-rollup VRF as the games — the reels land where the seed says, and lining up a bull mints it to your wallet on the spot. Spins run from a session wallet so the lever feels like an arcade, not a signature queue. Pull it on the front page or at /machine.

VERIFY IT

Every settled round hands you its seed and its L1 transaction. Feed the seed to the studio (race / fight) and the exact same show runs again in front of you. Check the transaction on the explorer. If the two ever disagree, we're lying — they won't.

SEEDsame in = same out
SETTLEone L1 commit
CLAIMSOL + BEEF, one tx