How to play
- The tray is 4 squares wide and 5 tall. The big 2×2 block is Cao Cao; the goal is to bring him to the exit in the middle of the bottom edge.
- Drag any block into empty space. A block can slide any distance and even turn a corner in one drag – that counts as one move.
- Tap a block to nudge it one square when there is only one way it can go.
- Hint plays the first move of a shortest solution from your current position. Undo takes back one move.
The pieces
The puzzle retells the story of Cao Cao fleeing along the Huarong Road after the Battle of Red Cliffs in the Romance of the Three Kingdoms. The wide block is Guan Yu, the four tall blocks are the generals Zhang Fei, Zhao Yun, Ma Chao and Huang Zhong, and the small squares are soldiers.
Levels and minimum moves
Each level shows its minimum number of moves, checked by a computer search. The first five are short warm-ups (10 to 40 moves). Then come the classic layouts: Side by Side (60 moves), In Command (70), Three Columns (72) and Blade Across (横刀立马), the most famous starting position, which needs 81 moves.
Tips
- Keep the two empty squares together. A 1×2 gap lets a tall or wide block move; two separate holes only let soldiers move.
- Soldiers are your small change. Use them to fill awkward holes so the big pieces can line up.
- Cao Cao travels a long way. In the 81-move solution he moves sideways several times before going down, so don’t aim him straight at the exit.
- Stuck? Press Hint a few times and watch how the space moves, then continue on your own.
For a phase-by-phase walkthrough of Blade Across, read How to solve Klotski in 81 moves. If you like sliding puzzles, try the numbered Sliding Puzzle too.
FAQ
Why does one long slide count as one move?
That is the traditional way of counting Klotski moves, and it is how the famous 81-move record for Blade Across is measured. If you count every single-square step instead, the same solution is longer.
Is every level solvable?
Yes. Every layout here was solved by the same search that powers the Hint button, and the minimum shown is the true shortest solution.