SolanaJack is a player-versus-player casino: you play against real people for a real pot, never against the house. The stakes go into a smart-contract escrow, the result decides who takes them, and the house never plays and never holds your money.
There are three games: blackjack, where the better hand wins; PvP Live Roulette, one shared wheel where your chance is exactly your share of the pot; and the trading duel, where each player trades an identical $1,000 virtual bankroll at live oracle prices and the bigger gain wins. All three use the same escrow, the same kind of timers and the same flat 1% edge.
How the games work
Three games, one rule behind all of them: you play another player, never the house. We hold nothing, we take no side, and we cannot see a hidden hand. The contract settles every game by itself and keeps a flat 1%: the only thing the house ever takes.
Blackjack
Two players, one deck each, no dealer. You play your hand in private; your opponent sees only how many cards you took. The contract scores both and pays the winner.
0,02 – 10 SOL
or 1 – 1 000 USDT
1%
house edge, flat
~1 hour
to play your hand
1
Bet and get your hand
Pick a stake in SOL or USDT and lock it in the contract. Your two cards appear about a second later, drawn from verifiable randomness and a secret only your browser holds.
2
Play it privately
Hit or stand in your browser. Each card comes from a block that has not happened yet, so nobody, not us, not you, can know it in advance.
3
Your table opens
When you stand, your game appears in the lobby. Your cards stay sealed behind a commitment you made before you saw them.
4
It settles itself
Someone matches your stake and plays in the open. The contract reveals your hand, scores both and pays the winner. You do not need to be there.
The small print
J, Q and K are 10. An Ace is 11, or 1 if 11 would bust you. Closest to 21 wins; over 21 is a bust.
Equal scores, or both bust, is a push: both stakes returned, minus the fee.
Do not stand in time and your hand auto-stands on the cards you hold. Nothing locks up.
A card drawn but never recorded on-chain within ~3 minutes counts as a bust, so walking away from a bad card never pays.
Nobody joins within 24 hours? Reclaim your whole stake.
If your sealed hand is never revealed within 24 hours of your opponent finishing, you forfeit and they take the pot.
PvP Live Roulette
One wheel, everyone at once, no dealer and no house side. The pot is only the players' own bets, and your chance to win is exactly your share of it. Stake a fifth of the pot and you own a fifth of the wheel.
0,02 – 10 SOL
per wallet
20
wallets per round
3 min
countdown, once
1
Put a bet on the wheel
Stake anything from 0,02 to 10 SOL. Bet as many times as you like; your bets merge into one slice.
2
The countdown starts at two
The moment a second wallet joins, three minutes run. Last-second bets are allowed on purpose.
3
The wheel is armed, then spun
Only after betting closes does the contract ask for a random value, so the result cannot exist while anyone can still bet.
4
One lamport decides it
The draw picks a single lamport out of the pot and pays whoever staked it, in the spin's own transaction.
The small print
The bigger your bet, the bigger your chance, and the bigger your loss when the wheel passes you. One round, one winner.
Alone at the table for an hour? Take your whole stake back, no fee.
Spinning is permissionless. Our keeper does it within seconds; if it is down, any player can spin instead.
If the randomness never arrives, the round is cancelled and every bet is refunded.
A round's pot also pays the randomness oracle a small fixed fee, so the winner receives the pot minus that and the 1%.
Trading duel
The same idea as the table, played on price instead of cards. Both players get an identical $1,000 of virtual money and trade real market prices. Whoever grows it more takes the pot.
0,02 – 10 SOL
or 1 – 1 000 USDT
$1,000
virtual bankroll each
5 min – 72 h
trading window
1
Stake and pick a window
Lock your stake and choose how long each player gets to trade, from 5 minutes to 72 hours. Your opponent matches both.
2
Start when you are ready
You have 24 hours after the match to place your first trade. That trade starts your own window. The two run independently, so you never wait on anyone.
3
Trade a $1,000 bankroll
Long or short on SOL, BTC and ETH. No leverage, no spread, no trading fees.
4
Windows close, contract pays
Open positions are valued at that minute's closing price. Once both sides are done, the higher equity takes the pot.
The small print
A trade carries no price. It is filled at the first quote published after it lands, so nobody can hold a signed order and pick their moment.
Trading stops a few seconds before your window closes, so the closing price cannot be known while you can still act on it.
A player who never trades loses to one who did. If neither trades, both stakes come back minus the fee.
Nobody joins? Cancel for a full refund, and it returns automatically if you forget.
The money
The house takes a flat 1% of a settled pot. There is no dealer edge, no rake on top and no spread. That 1% is everything.
That 1% does not stay with us: it buys $JACK on the open market and hands it to everyone staking, so the casino's income belongs to the people who hold the token.
Every settled game farms $JACK for both players, by the dollar value wagered, win or lose. 600,000 of the 1,000,000 supply can only ever enter circulation this way.
Creating a game locks a small amount of network rent. It is not a fee: the contract returns it automatically when the game finishes.
Your first game from a wallet sets up your own on-chain accounts, once. They are reused for every game after it.
What protects you
Non-custodial. Your stake never reaches us. It sits in an on-chain escrow that only the contract's own rules can move, and it moves straight to the winner's wallet.
We cannot rig a hand. Your bet is locked before any card exists, the randomness is produced by an oracle we do not control, and each card comes from a block that has not been produced yet.
We cannot see your hand. It is sealed behind a commitment made in your browser before you saw the cards. Not even we can open it early.
Automatic settle. The moment a game finishes our keeper sends the settling transaction and the program pays the winner straight out of escrow, usually within seconds, and because settling is permissionless, any player can send it instead if our keeper is ever down.
$JACK has no freeze authority and its mint is controlled by the program, not by a person. Nobody can freeze your tokens or print more.
Every outcome is checkable. Each hand, spin and trade can be re-derived from what is on chain. See provably fair for how to do it yourself.