How Blockster works, from the bet to the byte.
Every last mechanic in our on-chain games and liquidity pools — the math, the smart contracts, the provably-fair scheme, and an independent security audit of the program that holds the money.
What is Blockster?
Blockster is a Solana-native content platform with a casino and a liquidity pool stapled to it. Every post you read earns BUX. Every BUX you earn — and every SOL you deposit — can be wagered on a fully on-chain coin flip, or staked in one of our two liquidity pools to earn the house edge as yield.
There is no custodian, no promise, no "trust us." The pools, the bets, the settlement, and the payouts all live in a single Anchor program (49up2uzZANpjTC3sgggbZazdHBii2vY9mVK3vk5dT2tm) deployed to Solana. Your coin-flip outcome is computed off-chain from a seed we committed on-chain before you placed your bet — you can always verify it yourself.
These docs cover every piece of that system, top to bottom. They are written for people who want to know how the sausage is actually made.
Where to start
Pick the path that fits what you're trying to do. Each page links forward to the next logical step, so reading from the top works just as well.
Canonical addresses
These are the on-chain addresses that back everything in these docs. They are deployed on Solana mainnet.
- Bankroll program
- 49up2uzZANpjTC3sgggbZazdHBii2vY9mVK3vk5dT2tm
- Airdrop program
- wxiuLBuqxem5ETmGDndiW8MMkxKXp5jVsNCqdZgmjaG
- BUX mint
- 7CuRyw2YkqQhUUFbw6CCnoedHWT8tK2c9UzZQYDGmxVX
- SOL-LP mint (PDA)
- seeds = ["bsol_mint"]
- BUX-LP mint (PDA)
- seeds = ["bbux_mint"]
- SOL vault
- seeds = ["sol_vault"]
- SOL vault state
- seeds = ["sol_vault_state"]
- BUX vault token account
- seeds = ["bux_token_account"]
- BUX vault state
- seeds = ["bux_vault_state"]
- Game registry
- seeds = ["game_registry"]
- Player state (per player)
- seeds = ["player", player_pubkey]
- Bet order (per bet)
- seeds = ["bet", player_pubkey, nonce_le_bytes]
- Referral state (per referrer)
- seeds = ["referral", referrer_pubkey]
Conventions used in these docs
There are a few things we do throughout that are worth noting up front so you can skim fluently.
- Basis points (bps). 10,000 bps = 100%. A 1.98× multiplier is stored as
19800bps. A 1% referral rate is100bps. - Token decimals. SOL has 9 decimals (1 SOL = 10⁹ lamports). BUX has 9 decimals (1 BUX = 10⁹ base units). SOL-LP and BUX-LP LP tokens both have 9 decimals and inherit the precision of their underlying vault.
- Integer math everywhere. On-chain math uses u64 with u128 intermediates for overflow safety. Division truncates. Off-chain math uses
trunc/1, notFloat.round/1, to match. - PDAs. Program-Derived Addresses are account addresses that a program can sign for. Every persistent piece of state in the bankroll lives at a PDA with a specific seed formula — we list them all above.
- Lamports. The base unit of SOL. 1 SOL = 1,000,000,000 lamports. On-chain balances and bet amounts are always denominated in lamports.