Appearance
Blackjack

Hit, hold, split — make 21.
- Designer
- player1
- RTP
- 98.00%
- State
- Maths Complete
Opens 97 Plus in demo mode: virtual credits, no sign-up.
How it plays
Details to come.
Original Design document
Created 15 July 2026 · Last modified 16 September 2026
Game design may differ from the content below.
Spec for the blackjack game (as built).
A graphic deck of cards - procedural white faces with red/black rank + suit characters in the corners and centre. No images. Card backs are a solid panel in the player's chosen colour carrying their chosen symbol (up to 3 characters); Blackjack's default is 0x6eb7c9 with "?". Set in Options → Card Back.
Standard casino rules, one freshly shuffled 52-card deck per round, hit/stand plus one split. Tile rtp "98.0"; the engine header states ≈97.5% under hit/stand basic strategy (the sim never splits).
TABLE: Uses the standard UI (Mines, Plinko etc.). The card table is a rounded frame (10% lighter than the scene bg) - in landscape the layout sheet's play-area column, in portrait the full-width band between the title and the messages. The deck is a small stack of 4 card backs in the table frame's top-left corner; every deal animates from its front card. Dealer row above the centre, player row below. Hands fan horizontally (0.58 card-width spacing); the dealer's hand lays out right-to-left, so the hole card sits on the left, on top. Card size: height = 1.4 × width. Landscape base width 66, portrait min(74, 16% of the screen width). One hand shrinks only if its fan would overrun the table (min 28). Two hands use a fixed per-slot width (half the hand spacing, min 22) so cards don't shrink as a hand grows. Dealer and player cards are the same size.
IDLE: Table clear, deck showing. Game Message: "Bet to deal".
ON BET:
- requestPlay deducts the bet. Deal round-robin (dealIntervalMs 300): player, dealer up-card, player, dealer hole card, all face down.
- Flip both player cards, then the dealer up-card (hole card stays face down).
- A natural resolves at the deal: player blackjack pays 3:2, dealer blackjack loses, both push. The hole card flips, pause, settle.
- Otherwise the playButton is replaced by HOLD and HIT buttons side by side (PNG icons), flashing once a second. Tapping the active hand's cards also HITs; tapping the dealer's cards HOLDs.
- Message "you have <total>", small "dealer shows <up-card>".
- HIT deals a card to the active hand. Over 21 is a bust: a red 'X' is drawn centred on that hand after 300 ms. Reaching 21 auto-stands.
- HOLD stands the hand.
- When every hand is done the dealer reveals the hole card and draws while under 17 (stands on all 17), one card per dealerDrawIntervalMs (550). A dealer bust gets its own red X.
- Settle: higher total wins (pays 2×), equal pushes (stake back), else loss. Green ticks appear over winning hands (or over the dealer when it wins) for 1 s; single-hand skips the ticks when a bust X is shown.
- Messages: "Blackjack! $x", "You win $x", "Push — bet returned", "Back $x", "Dealer wins" / "All hands lost".
- Only a single-hand natural blackjack gets the big-win celebration.
- Pause roundOverDelayMs (1400), then clear the table for the next round.
SPLIT:
- A SPLIT button appears beside HOLD/HIT when the hand is a fresh two-card same-rank pair (rank only, e.g. J+Q is not a pair), no split has happened yet, and the balance covers another bet.
- Split turns the pair into two hands, each dealt a second card, and stakes a second equal bet (a balance event on the record). Only one split per round.
- The engine refuses a split it can't cover ("Insufficient balance to split"); the host settlement refuses one the live wallet can't cover ("Insufficient balance").
- A split hand drawing to 21 auto-stands but is not a blackjack.
- Hands are played left to right. During the player's turn a dot in the alt colour marks the active hand and the other hand scales to 75%.
- The dealer plays once and every standing hand settles against it. The payout is the sum of the hands (per-hand bet × summed multiplier); the round's result compares it to the total stake.
TURBO: An Options toggle (persisted, shared by card games): card deal/flip animations play 4× faster and outcome holds (natural reveal pause, win ticks, round-over pause, autoplay decision delay) are cut to 70%.
AUTOPLAY: Number of Games, Stick on (14-20, default 17), Stop on Win / Loss, On Win / On Loss bet step. No separate fast-play toggle - autoplay follows Turbo. Each hand hits while its total is below Stick on, else holds. Autoplay never splits.
Recovery: an unresolved hand on load (including a split in progress) restores the table with the hole card face down, shows the "game in progress" popup, then resumes the player's turn. A quit mid-hand plays the active hand out as a stand. A failed hit/hold/split returns to the player's turn.
History replay re-renders each step (deal, split, hit, stand, dealer reveal); a natural resolves at the deal.
Info panel: a "Deck" slide shows all 52 cards (13×4) and dims those revealed this round. Dev menu: Force 2 Aces, Force Split Hand (a random pair vs a non-natural dealer), Maths Sim (1mil).