All case studies
Chess 3D Master — giving a losing player a reason to finish
Ten shaped AI levels, bounded power-ups, and a Points Battle mode where captures score — so a player behind on material still has something to play for.
- Client
- In-house title
- Platform
- Android / Google Play
- Engine
- Unity
- Genre
- Board
UnityC#custom chess engine3D renderingAdMob rewarded video
The challenge
Chess has a hard problem that most mobile versions get wrong: the AI is either trivially easy or completely unbeatable, with nothing usable in between. A strong engine on a modern phone will crush a casual player every single game, and a weak one makes obvious blunders that feel broken rather than easy.The reason this happens is that the usual lever for weakening an engine is search depth, and search depth is the wrong lever. Cut it far enough to let a casual player win and the engine stops seeing one-move threats — it hangs a queen, walks into a back-rank mate, trades a rook for a pawn. The player wins, but the win is worthless, because the opponent was not playing chess. Leave depth high and the engine never errs at all. There is no setting in between that produces a plausible human opponent, because human weakness is not shallow search; it is missing specific kinds of tactics while still playing sensibly most of the time.
The second problem was the board itself. A 3D chess board looks impressive in a screenshot and is often miserable to play on. Pieces occlude each other, the far rank sits at a shallow angle and becomes genuinely hard to read, and a bishop and a pawn on adjacent squares can be ambiguous at a glance. Players lose track of what is threatening what, and in chess that is not a cosmetic failure — it is the game.
There is also a context problem that board games face more than most genres. Chess is played in gaps: a commute, a queue, a few minutes before sleep. Any requirement to wait on a slow opponent turns those gaps into a reason not to open the app at all.
The rebuild added a harder question on top of all this. Chess is decided by checkmate, which means a player who is losing has nothing left to play for — the outcome is settled long before the board agrees, and they resign or close the app. For a casual audience that is most games. A player who only ever experiences the last ten moves as a formality stops starting new ones.
And a fifth problem specific to helping beginners: any assistance strong enough to be useful is strong enough to play the game for you. An undo that rewinds indefinitely removes consequence. A hint from a full-strength engine is a different player making your moves. Getting help right means bounding it, and bounding it in a way the player understands.
Our approach
Rather than simply reducing search depth to make the AI weaker, we shaped how it plays at each level. Lower levels overlook longer tactics but still play sound opening and endgame moves, so the game feels like a real opponent who is simply not very sharp. Higher levels widen the search and stop forgiving loose play. Ten levels sit between those extremes.The distinction matters more than it sounds. An opponent that plays a reasonable opening, develops sensibly, and then misses a three-move combination is recognisably a weaker player. An opponent that hangs pieces in the first ten moves is a broken program. Both lose the game; only one of them makes winning feel earned.
Points Battle exists to solve the losing-player problem. Every capture scores — pawn 10, knight and bishop 30, rook 50, queen 90 — with check worth 15, castling 25, promotion 80, a brilliant move 100 and checkmate 500. The player chooses a target of 250, 500 or 1000, and the first to reach it takes the series. The effect is that a player who is behind on material still has something to play for, because points accumulate rather than being settled in one stroke. It also quietly teaches relative piece value: a beginner who sees a queen score nine times a pawn has learned the most important thing in chess without being told it.
The four power-ups are deliberately bounded rather than unlimited. Undo takes back one move. Hint plays a strong move from the full engine. Freeze stops the clock for 45 seconds, which helps with time pressure instead of with the position. Queen Shield blocks the AI from taking the queen on its next move only. Each starts with 2 charges. Bounding them is the whole design: 2 charges makes a power-up a decision about when to spend it, where unlimited access would make it the default way to play.
Brilliant move callouts turn good play into feedback. Naming a move GOOD MOVE, SHARP VISION or TACTICAL MASTER tells the player that something specific just went right, which is information a chess board does not otherwise provide. A beginner rarely knows when they have played well; the callout closes that gap without a tutorial.
Full official rules were implemented rather than approximated — castling, en passant, promotion to any piece, and automatic detection of threefold repetition, the fifty-move rule and insufficient material. These edge cases almost never come up, and the one time they do, an app that gets them wrong is exposed as an imitation.
For the board, we settled on a fixed camera angle that keeps every piece silhouette distinct. A free camera sounds generous, but it lets players rotate into views where the board is unreadable and then blame the game for a blunder. Legal moves are highlighted on selection, which speeds up play for strong players and teaches movement to weak ones without instruction.
The player profile records games, win rate, best streak, time played and the record against each of the 10 AI levels. That record is what turns the ladder into progression — a player can see they now beat level 6, which they could not three weeks ago.
The result
The AI ladder produces opponents that lose like weaker players rather than like broken ones — sound openings, sensible development, and tactical oversights that scale with the level. That is what makes a win at level 6 feel different from a win at level 1.Points Battle gives a losing player something to play for. Because captures accumulate rather than the game being settled by a single checkmate, a player behind on material still has a reason to finish — and the scoring table teaches relative piece value without a lesson.
Power-ups are bounded at 2 charges each, which makes using one a decision rather than a default. Undo, Hint, Freeze and Queen Shield each address a different kind of trouble: a misclick, a position you cannot read, time pressure, and a queen about to go.
Brilliant move callouts tell a beginner when something went right, which is feedback a chess board never gives on its own.
All official rules including threefold repetition, the fifty-move rule and insufficient material — the edge cases that expose an approximation the one time they occur.
Live on Google Play, free, with 2-player on one device and a profile tracking your record against all 10 AI levels.
