How do I know when a xiangqi game is actually over?
These answers restate the rules implemented by our open-source engine, which follows the WXF laws and is regression-tested against the official 110-diagram repetition casebook. Where an answer refers to a specific position, that position lives on the linked reference page, where the build verifies it against the engine before publishing.
Direct answer
A game ends the moment one of five things happens: checkmate, stalemate (a loss in xiangqi, not a draw), resignation, running out of time, or a repetition ruling against whoever was checking or chasing without variation. On a digital board the interface announces it; on a physical board, recognising it is on the players.
Checkmate versus "just a check"
A check only ends the game if none of the three standard replies, capturing the attacker, blocking the line, or moving the general, is available. New players sometimes stop looking too early; always check all three options before concluding it is mate. See check and checkmate.
The ending beginners forget exists
Stalemate. If a player has no legal move at all, not because they are in check, but simply because every piece is blocked or confined, that player has lost. It is rare, but it is worth knowing it can happen, especially in bare endgames. See check and checkmate.
Related questions
Do I have to announce checkmate myself?
No, there is no requirement to announce anything in xiangqi, including mate. Both players are expected to recognise the position.
What if neither player notices the game already ended?
In casual play, moves might continue by accident; in arbitrated play, the result stands from the moment it was reached once verified.