← All workGame

BlackJack Trainer Mobile Game

A freemium blackjack trainer that teaches real card counting under real game pressure, built in Unreal Engine with Blueprints. A free tier for playing with a live count tracker, and an Elite tier with a basic-strategy coach, bet-spread guidance, and deck-stacking practice.

Role

Developer

Year

2023

Built with
Unreal Engine 5
Blueprints
Game Design
UMG
Mobile
Mockup
Gameplay video
Screenshot 1
Screenshot 2
Screenshot 3
Screenshot 4
Screenshot 5

BlackJack Trainer Elite is a complete, shippable product rather than a tech demo. Two games sharing one codebase, separated into a free version and a paid Elite tier through an in-lobby upgrade flow.

The free version is a full blackjack table with a twist: every card dealt updates a running Hi-Lo count in real time, and a deck-penetration gauge fills from "Fresh Deck" to "End Of Deck" so the player can see exactly when the count starts to matter. Bankrolls swing with real bet sizes, so the discipline lesson lands the way it does at an actual table; bet badly and you watch your balance crater. The full ruleset is implemented from scratch: split hands with independent bets and per-hand active state, doubles, dealer draws to 16 and stands on all 17s, 3:2 blackjack payouts, shoe reset and reshuffle, and a points-accumulation system that converts to payouts through a threshold table.

The Elite tier is where the product earns its name. A "Best Move" coach reads the current hand against the dealer's up-card and surfaces the statistically optimal play. Hit, Stand, Double, or Split, updating live as new cards arrive, with a toggle to hide it once the player wants to test themselves. A second pair of gauges visualises when to switch from a small bet to a big bet based on the running count, teaching bet-spread discipline. And the standout training feature is deck stacking: the player picks the next card to be dealt from a thirteen-card grid, so any scenario like "soft 17 against an ace, splitting fours into a fifteen, doubling eleven against a ten" can be drilled in isolation until the correct response is automatic.

Key challenges

The hardest part was making a correct blackjack engine, not a convincing-looking one. Splits in particular are deceptively complex. Each split hand needs its own bet, its own active/resolved state, its own win/loss evaluation against the dealer, and the UI has to make clear which hand is currently being played. The basic-strategy coach required encoding the full strategy matrix (player total × dealer up-card, with separate tables for hard hands, soft hands, and pairs) and surfacing the right cell instantly on every state change. Getting the count, the penetration gauge, the payout thresholds, and the bet-spread guidance to all stay consistent with each other, frame to frame, across reshuffles, was the kind of correctness problem where one off-by-one error silently teaches the player the wrong thing, which for a trainer is the worst possible failure mode.