Advanced Chess Kit OFFICIAL SALE

⭐WEB GL DEMO LINK ⭐

Drop in one prefab. Press Play. You are playing chess.

Advanced Chess Kit is a finished chess game, not a chess board component. All 32 pieces place themselves, clicking a piece highlights its legal destinations, a real engine replies on its own, and the game ends properly on checkmate, stalemate, threefold repetition or insufficient material.

Everything past that first prefab is optional and swappable — so the kit works both as the game you are shipping and as a minigame inside a much larger one.

A real engine, not a random-move opponent

Three difficulty levels — Easy, Normal, Hard — each a search time budget rather than a handicap. Every level always plays the strongest move its search found, so a lower difficulty is genuinely cheaper to run, never artificially worse on purpose. Measured search depth: 5–10 ply on Easy, 6–11 on Normal, 7–14 on Hard. Iterative deepening, transposition table, killer moves, history heuristic, quiescence search, opening book.

And it never stalls your frame. The reply is computed a slice at a time across frames, so the board stays responsive and animated while it thinks. Replies are paced to land 1.5–2.5s after your move finishes on screen — steady turn rhythm, no "thinking…" spinner needed.

Everything a player expects, already built

  • Best-move hints. BeginHint(count) returns the best N moves, always searched at the Hard budget — a hint is advice, not a sparring partner.
  • Undo. TryUndo(plies) reverts any number of plies. Misclicked? Take it back.
  • Resign, with in-flight search cancelled cleanly.
  • Save and resume across sessions. Players quit and come back to the exact position they left.
  • Full legal rules. Castling, en passant, promotion, threefold repetition, insufficient material — the cases hand-rolled boards get wrong.
  • Animated board with VFX and SFX. Move, capture, castle and promotion are animated; select / move / capture sounds ship with per-clip volume and pitch jitter; highlight, selection and best-move effects run on the kit's own shaders.
  • Click-to-move and drag-and-drop, both out of the box. An illegal drop snaps back.

Built to drop into your game

Your save system, not ours. Save() hands you the whole game as a single opaque string and TryLoad() restores it — wire those two calls into a save slot, a profile, or cloud sync. The default PlayerPrefs backend needs zero setup and works everywhere, WebGL included.

Your art, in a few clicks. Board sprite, all 12 piece sprites and the label colour live in a ChessBoardSkin ScriptableObject; sounds live in a ChessBoardSfx. Duplicate, point the board's field at your copy, done — and a built-in editor window previews the whole board live as you edit.

Your flow, or ours. ChessKitSession wires the opinionated loop — difficulty → play → pause → outcome → restart — with six optional UI screens. Unplug it and drive ChessBoardHost yourself. Every screen has a defined fallback when it is absent, so deleting any of them is a supported configuration, not a broken one.

Any starting position you want. Load any FEN string to start a game from a custom position — puzzles, tutorials, a scripted story moment.

Tools that save you a week

  • FEN Test Launcher. Paste a FEN or pick a preset — promotion, en passant, castling, in check, mate in one either way — preview it, press Play, and start on that exact position. Test edge cases without playing up to them by hand.
  • Live skin editor. See the whole board redraw as you swap sprites.
  • 123 automated edit-mode tests ship with the source: engine contract behaviour, async reply and hint contracts, chunked search integrity, save/restore round-trips, difficulty regression guards and package self-containment.

Seven AI Skills included

The package ships Agent Skills under AI/Skills/, so an AI coding assistant in your project can set the kit up, wire persistence, reskin the board, add hints and undo, and diagnose a misbehaving board using the kit's real API instead of guessing at it.

No dependencies, and it means it

Nothing outside the package is required. DOTween and UniTask are optional and neither is bundled — an editor script detects DOTween and flips a scripting define automatically; with it absent the board animates through a small tween that ships inside the package. The input module is chosen at runtime, so the scene starts and accepts input under the old Input System, the new one, or Both, with no setup. You never configure any of this.

The package installs under Ostryzhnyi/Advanced Chess Kit/ and Ostryzhnyi/EasyViewService/ and writes nothing anywhere else — enforced by an automated self-containment test, not just a promise.

Being straight about what this is not

  • Single-player only. No networking, matchmaking or online play.
  • No Elo rating. Difficulty is search depth and time budget, verified by regression tests; a numeric rating would need calibration against an external reference the kit does not ship with.
  • 2D sprite board. No 3D models, no animated piece meshes.
  • The engine is a vendored fork of MinimalChessEngine (MIT, © 2021 Thomas Jahn), fully disclosed with its license and a written description of every change from upstream.