Cờ Tướng Vua: a chess army against a xiangqi army on one board

One board, two rulebooks. Chess pieces on the top half, xiangqi pieces on the bottom, a river in between. Cannons still jump one piece to capture, knights still move in an L, and the king and the general may never face each other. Chess has 53 moves to deliver checkmate; after that, Xiangqi wins by holding the fort.

How to play

Each side keeps its own rules

Xiangqi pieces follow xiangqi: cannons jump, horses can be blocked, elephants never cross the river. Chess pieces follow chess: castling, and pawns promote on the last rank.

Chess attacks, Xiangqi holds

Chess has 18 pieces but only 53 moves to mate. That number came from 120 bot-vs-bot games, which ended Chess 57, Xiangqi 63.

Online 1v1

Press Play online and you are paired with whoever is waiting. No rooms. Sides are drawn at random and each move has 60 seconds.

Three bot levels

Easy, Normal and Super hard. Super hard looks 5 to 6 moves ahead and never plays at random.

2D and 3D boards

The 2D board is flat and light. The 3D board has three fixed camera angles. Switching mid-game keeps the position.

Uncle Tu on commentary

A sidewalk uncle sips iced tea and comments on every capture, check and result, in Vietnamese or English.

Moving pieces

Tap a piece
Show where it can go
Tap a lit square
Move there
Undo
Take back your last move against the bot
Bot
Let the bot finish the game
2D / 3D
Switch boards mid-game
VI / EN
Switch language

Frequently asked questions

Is Cờ Tướng Vua free?
Yes. It runs in the browser with no install, no account, no real money and no redeemable items.
How does online play work?
Choose Play online. The next player to join is paired with you and the sides are drawn at random. If your connection drops you have 20 seconds to come back; after that your opponent wins.
Why does Chess get 18 pieces?
A xiangqi board is 9 files wide and a chess army has 8 pieces per rank. Chess gets one extra knight and one extra pawn to fill all 9 files, and the clock drops to 53 moves to keep it even.
What is it built with?
Canvas for the 2D board and Three.js (WebGL) for the 3D board. The bot is an alpha-beta search in a Web Worker, and the online server checks every move with the same rules code.