4 <link rel=StyleSheet href="./moves.css" type="text/css">
5 <script type="text/javascript" src="spartan.js"></script>
8 <h1>Xiangqi (Chinese Chess)</h1>
10 Xiangqi is the World's number one Chess variant in terms of number of players.
11 Almost all players live in China, Taiwan or Vietnam, though.
12 It is a fast and aggressive game, often described as a 'race to mate'.
13 When it gets to an end-game it is often a draw,
14 because there are many pieces that cannot leave their own board half,
15 and thus can be used to defend but not to attack or to trade for the opponent's defenders.
17 <table cellpadding="20"><tr><td>
18 <img src="Xiangqi.png">
20 <h3>Initial setup</h3>
26 b2, b7, h2, h7: Cannon
30 d0, d9, f0, f9: Advisor
32 c0, c9, g0, g9: Elephant
34 a3, c3, e3, g3, i3, a6, c6, e6, g6, i6: Pawns
38 <h3>Moves at a Glance</h3>
40 <p>Click on a white piece below to see its moves</p>
42 <table class="board"><tr><td class="n" id="0x9" onmouseDown="down_click(,)" onmouseUp="up_click(,)">
44 </td><td class="n" id="1x9">
46 </td><td class="n" id="2x9">
48 </td><td class="n" id="3x9">
50 </td><td class="n" id="4x9">
52 </td><td class="n" id="5x9">
54 </td><td class="n" id="6x9">
56 </td><td class="n" id="7x9">
57 <img src="sym/BlackRook.png">
58 </td><td class="n" id="8x9">
60 </td><td class="n" id="9x9">
63 <img src="sym/yellow.png">
64 </td><td class="w" rowspan="2" valign="top">
65 <p>Sliding capture or non-capture,<br>can be blocked on any square along the ray</p>
66 </td></tr><tr><td class="n" id="0x8">
68 </td><td class="n" id="1x8">
70 </td><td class="n" id="2x8">
72 </td><td class="n" id="3x8">
74 </td><td class="n" id="4x8">
76 </td><td class="n" id="5x8">
78 </td><td class="n" id="6x8">
80 </td><td class="n" id="7x8">
82 </td><td class="n" id="8x8">
84 </td><td class="n" id="9x8">
86 </td></tr><tr><td class="n" id="0x7">
88 </td><td class="n" id="1x7">
90 </td><td class="n" id="2x7">
92 </td><td class="n" id="3x7">
94 </td><td class="n" id="4x7">
96 </td><td class="n" id="5x7">
98 </td><td class="n" id="6x7">
100 </td><td class="n" id="7x7">
102 </td><td class="n" id="8x7">
104 </td><td class="n" id="9x7">
107 <img src="sym/green.png">
110 </td></tr><tr><td class="n" id="0x6">
112 </td><td class="n" id="1x6">
114 </td><td class="n" id="2x6">
116 </td><td class="n" id="3x6">
118 </td><td class="n" id="4x6">
120 </td><td class="n" id="5x6">
122 </td><td class="n" id="6x6">
124 </td><td class="n" id="7x6">
125 <img src="sym/BlackKnight.png">
126 </td><td class="n" id="8x6">
128 </td><td class="n" id="9x6">
131 <img src="sym/red.png">
134 </td></tr><tr><td class="n" id="0x5">
136 </td><td class="n" id="1x5">
138 </td><td class="n" id="2x5" onmouseDown="down_click(2,5)" onmouseUp="up_click()">
139 <img src="sym/WhitePawn.png">
140 </td><td class="n" id="3x5">
142 </td><td class="n" id="4x5" onmouseDown="down_click(-4,5)" onmouseUp="up_click()">
143 <img src="sym/WhiteAdvisor.png">
144 </td><td class="n" id="5x5" onmouseDown="down_click(5,-5)" onmouseUp="up_click()">
145 <img src="sym/WhiteElephant.png">
146 </td><td class="n" id="6x5" onmouseDown="down_click(6,-5)" onmouseUp="up_click()">
147 <img src="sym/WhiteGold.png">
148 </td><td class="n" id="7x5">
150 </td><td class="n" id="8x5">
152 </td><td class="n" id="9x5">
155 <img src="sym/open.png">
156 </td><td class="w" rowspan="2" valign="top">
157 Unreachable square where move to other square can be blocked
158 </td></tr><tr><td class="n" id="0x4">
160 </td><td class="n" id="1x4">
162 </td><td class="n" id="2x4">
164 </td><td class="n" id="3x4" onmouseDown="down_click(3,0)" onmouseUp="up_click()">
166 </td><td class="n" id="4x4" onmouseDown="down_click(4,0)" onmouseUp="up_click()">
168 </td><td class="n" id="5x4" onmouseDown="down_click(5,0)" onmouseUp="up_click()">
170 </td><td class="n" id="6x4">
172 </td><td class="n" id="7x4" onmouseDown="down_click(7,4)" onmouseUp="up_click()">
174 </td><td class="n" id="8x4">
176 </td><td class="n" id="9x4">
178 </td></tr><tr><td class="n" id="0x3">
180 </td><td class="n" id="1x3">
182 </td><td class="n" id="2x3">
184 </td><td class="n" id="3x3" onmouseDown="down_click(3,3)" onmouseUp="up_click()">
185 <img src="sym/WhiteRook.png">
186 </td><td class="n" id="4x3" onmouseDown="down_click(-4,3)" onmouseUp="up_click()">
187 <img src="sym/WhiteKnight.png">
188 </td><td class="n" id="5x3">
190 </td><td class="n" id="6x3">
192 </td><td class="n" id="7x3">
194 </td><td class="n" id="8x3">
196 </td><td class="n" id="9x3">
198 </td></tr><tr><td class="n" id="0x2">
200 </td><td class="n" id="1x2">
201 <img src="sym/BlackRook.png">
202 </td><td class="n" id="2x2" onmouseDown="down_click(2,2)" onmouseUp="up_click()">
203 <img src="sym/WhitePawn.png">
204 </td><td class="n" id="3x2">
206 </td><td class="n" id="4x2">
208 </td><td class="n" id="5x2">
210 </td><td class="n" id="6x2">
212 </td><td class="n" id="7x2" onmouseDown="down_click(7,2)" onmouseUp="up_click()">
213 <img src="sym/WhiteCanon.png">
214 </td><td class="n" id="8x2">
216 </td><td class="n" id="9x2">
218 </td></tr><tr><td class="n" id="0x1">
220 </td><td class="n" id="1x1">
222 </td><td class="n" id="2x1">
224 </td><td class="n" id="3x1">
226 </td><td class="n" id="4x1">
228 </td><td class="n" id="5x1">
230 </td><td class="n" id="6x1">
232 </td><td class="n" id="7x1">
234 </td><td class="n" id="8x1">
236 </td><td class="n" id="9x1">
238 </td></tr><tr><td class="n" id="0x0">
240 </td><td class="n" id="1x0">
242 </td><td class="n" id="2x0">
244 </td><td class="n" id="3x0">
246 </td><td class="n" id="4x0">
248 </td><td class="n" id="5x0">
250 </td><td class="n" id="6x0">
252 </td><td class="n" id="7x0">
254 </td><td class="n" id="8x0">
256 </td><td class="n" id="9x0">
260 <p id="piece" height="20">:<br>:<br>:<br>:</p>
262 <table cellpadding="5" border="1"><tr><td>
269 Moves (<a href="Betza.html">Betza notation</a>)
281 Cannot leave its Palace
301 Must jump 1 piece to capture
331 Cannot move onto opponent's board half
341 Acquires sideway moves (fWsW) on opponent's board half
343 <h3>Pawn peculiarities</h3>
345 <li>Pawns capture and move straight ahead.</li>
346 <li>When they reach the opponent's board half ('cross the River'), they can also move and capture sideways.</li>
347 <li>There is no real promotion; when Pawns reach last rank they are stuck there.</li>
349 <h3>General rules</h3>
351 <li>It is not allowed to expose your King to check.</li>
352 <li>Kings are not allowed to face each other, i.e. be on the same file with nothing in between.</li>
353 <li>The game is won by checkmating the opponent's King.</li>
354 <li>Stalemate (no legal moves, but not in check) is a los for the stalemated side.</li>
355 <li>Perpetual checking is forbidden, and the side that checks is ruled to lose on the 3rd repeat.</li>
356 <li>When both sides are perpetually checking each other, the game is ruled a draw, however.</li>
357 <li>It is also forbidden to perpetually harass the same piece other than King (see below).</li>
358 <li>But when both sides do it, the game is again ruled a draw.</li>
360 <h3>Differences with FIDE</h3>
362 The board is sub-divided into zones, and some pieces are not allowed to cross some zone boundaries.
363 Pieces move in general different than their FIDE counterpart. Only the Rook moves truly the same.
365 <h3>Perpetual Chasing</h3>
367 It is forbidden to perpetually harass the same piece,
368 and when a repeat loop (after 3 repeats) has one side violating this rule, that side will forfeit the game.
369 This is only invoked if there wasn't any perpetual checking in the loop as well.
370 Exact rules for this are quite complex.
371 Basically, when a repeat loop creates a <i>new</i> attack on the same <i>unprotected</i> piece on <i>every</i> move,
372 the move sequence will be considered a perpetual chase.
373 The chasing side then is ruled to lose, but if both sides are chasing, it is a draw.
374 A Rook counts as unprotected against attacks of C or H.
375 On the other hand, being able to capture your attacker (as when equal pieces attack each other) counts as (pre-emptive) protection.
376 Attacks on a Pawn that is still on its own board half, or attacks by a King are never considered chases.
379 Only legal moves should be taken into account; i.e. pinned pieces are not considered attackers or protectors.
380 An attack by the same piece is not considered a new one just because the attacking piece moved to another location,
381 e.g. when a Rook moves along the ray of the attack.
382 Note that the above rules do not take into account whether the attacking or protecting captures are good or non-sensical,
383 or if pieces are <i>sufficiently</i> protected against multiple attacks.
384 Even if recapturing would get you mated in one, the piece would still count as protected!
385 Also note that is perfectly allowed to alternately chase different pieces.
386 Even if one of the pieces is a King.
388 <h3>Strategy issues</h3>
390 Any piece except a Pawn on the last rank can force Checkmate against a bare King.