1 <!--#include virtual="/server/html5-header.html" -->
3 <link rel="StyleSheet" href="./moves.css" type="text/css">
4 <script type="text/javascript" src="spartan.js">
6 <!--#include virtual="/server/banner.html" -->
7 <!--#set var="article_name" value="/server/standards/boilerplate" -->
8 <!--#include virtual="/server/gnun/initial-translations-list.html" -->
10 <h1>Xiangqi (Chinese Chess)</h1>
12 <p>Xiangqi is the World's number one Chess variant in terms of
13 number of players. Almost all players live in China, Taiwan or
14 Vietnam, though. It is a fast and aggressive game, often
15 described as a 'race to mate'. When it gets to an end-game it is
16 often a draw, because there are many pieces that cannot leave
17 their own board half, and thus can be used to defend but not to
18 attack or to trade for the opponent's defenders.</p>
20 <table cellpadding="20">
22 <td><img src="Xiangqi.png"></td>
25 <h3>Initial setup</h3>
28 a0, a9, i0, i9: Rook<br>
29 b2, b7, h2, h7: Cannon<br>
30 b0, b9, h0, h9: Horse<br>
31 d0, d9, f0, f9: Advisor<br>
32 c0, c9, g0, g9: Elephant<br>
33 a3, c3, e3, g3, i3, a6, c6, e6, g6, i6: Pawns</p>
38 <h3>Moves at a Glance</h3>
40 <p>Click on a white piece below to see its moves</p>
44 <td class="n" id="sq0x9" onmousedown="down_click(,)" onmouseup=
47 <td class="n" id="sq1x9"></td>
49 <td class="n" id="sq2x9"></td>
51 <td class="n" id="sq3x9"></td>
53 <td class="n" id="sq4x9"></td>
55 <td class="n" id="sq5x9"></td>
57 <td class="n" id="sq6x9"></td>
59 <td class="n" id="sq7x9"><img src="sym/BlackRook.png"></td>
61 <td class="n" id="sq8x9"></td>
63 <td class="n" id="sq9x9"></td>
65 <td class="h"><img src="sym/yellow.png"></td>
67 <td class="w" rowspan="2" valign="top">
68 <p>Sliding capture or non-capture,<br>
69 can be blocked on any square along the ray</p>
74 <td class="n" id="sq0x8"></td>
76 <td class="n" id="sq1x8"></td>
78 <td class="n" id="sq2x8"></td>
80 <td class="n" id="sq3x8"></td>
82 <td class="n" id="sq4x8"></td>
84 <td class="n" id="sq5x8"></td>
86 <td class="n" id="sq6x8"></td>
88 <td class="n" id="sq7x8"></td>
90 <td class="n" id="sq8x8"></td>
92 <td class="n" id="sq9x8"></td>
96 <td class="n" id="sq0x7"></td>
98 <td class="n" id="sq1x7"></td>
100 <td class="n" id="sq2x7"></td>
102 <td class="n" id="sq3x7"></td>
104 <td class="n" id="sq4x7"></td>
106 <td class="n" id="sq5x7"></td>
108 <td class="n" id="sq6x7"></td>
110 <td class="n" id="sq7x7"></td>
112 <td class="n" id="sq8x7"></td>
114 <td class="n" id="sq9x7"></td>
116 <td class="h"><img src="sym/green.png"></td>
118 <td class="w">Non-capture only</td>
122 <td class="n" id="sq0x6"></td>
124 <td class="n" id="sq1x6"></td>
126 <td class="n" id="sq2x6"></td>
128 <td class="n" id="sq3x6"></td>
130 <td class="n" id="sq4x6"></td>
132 <td class="n" id="sq5x6"></td>
134 <td class="n" id="sq6x6"></td>
136 <td class="n" id="sq7x6"><img src="sym/BlackKnight.png"></td>
138 <td class="n" id="sq8x6"></td>
140 <td class="n" id="sq9x6"></td>
142 <td class="h"><img src="sym/red.png"></td>
144 <td class="w">Capture only</td>
148 <td class="n" id="sq0x5"></td>
150 <td class="n" id="sq1x5"></td>
152 <td class="n" id="sq2x5" onmousedown="down_click(2,5)"
153 onmouseup="up_click()"><img src="sym/WhitePawn.png"></td>
155 <td class="n" id="sq3x5"></td>
157 <td class="n" id="sq4x5" onmousedown="down_click(-4,5)"
158 onmouseup="up_click()"><img src="sym/WhiteAdvisor.png"></td>
160 <td class="n" id="sq5x5" onmousedown="down_click(5,-5)"
161 onmouseup="up_click()"><img src="sym/WhiteElephant.png"></td>
163 <td class="n" id="sq6x5" onmousedown="down_click(6,-5)"
164 onmouseup="up_click()"><img src="sym/WhiteGold.png"></td>
166 <td class="n" id="sq7x5"></td>
168 <td class="n" id="sq8x5"></td>
170 <td class="n" id="sq9x5"></td>
172 <td class="h"><img src="sym/open.png"></td>
174 <td class="w" rowspan="2" valign="top">Unreachable square
175 where move to other square can be blocked</td>
179 <td class="n" id="sq0x4"></td>
181 <td class="n" id="sq1x4"></td>
183 <td class="n" id="sq2x4"></td>
185 <td class="n" id="sq3x4" onmousedown="down_click(3,0)"
186 onmouseup="up_click()"></td>
188 <td class="n" id="sq4x4" onmousedown="down_click(4,0)"
189 onmouseup="up_click()"></td>
191 <td class="n" id="sq5x4" onmousedown="down_click(5,0)"
192 onmouseup="up_click()"></td>
194 <td class="n" id="sq6x4"></td>
196 <td class="n" id="sq7x4" onmousedown="down_click(7,4)"
197 onmouseup="up_click()"></td>
199 <td class="n" id="sq8x4"></td>
201 <td class="n" id="sq9x4"></td>
205 <td class="n" id="sq0x3"></td>
207 <td class="n" id="sq1x3"></td>
209 <td class="n" id="sq2x3"></td>
211 <td class="n" id="sq3x3" onmousedown="down_click(3,3)"
212 onmouseup="up_click()"><img src="sym/WhiteRook.png"></td>
214 <td class="n" id="sq4x3" onmousedown="down_click(-4,3)"
215 onmouseup="up_click()"><img src="sym/WhiteKnight.png"></td>
217 <td class="n" id="sq5x3"></td>
219 <td class="n" id="sq6x3"></td>
221 <td class="n" id="sq7x3"></td>
223 <td class="n" id="sq8x3"></td>
225 <td class="n" id="sq9x3"></td>
229 <td class="n" id="sq0x2"></td>
231 <td class="n" id="sq1x2"><img src="sym/BlackRook.png"></td>
233 <td class="n" id="sq2x2" onmousedown="down_click(2,2)"
234 onmouseup="up_click()"><img src="sym/WhitePawn.png"></td>
236 <td class="n" id="sq3x2"></td>
238 <td class="n" id="sq4x2"></td>
240 <td class="n" id="sq5x2"></td>
242 <td class="n" id="sq6x2"></td>
244 <td class="n" id="sq7x2" onmousedown="down_click(7,2)"
245 onmouseup="up_click()"><img src="sym/WhiteCanon.png"></td>
247 <td class="n" id="sq8x2"></td>
249 <td class="n" id="sq9x2"></td>
253 <td class="n" id="sq0x1"></td>
255 <td class="n" id="sq1x1"></td>
257 <td class="n" id="sq2x1"></td>
259 <td class="n" id="sq3x1"></td>
261 <td class="n" id="sq4x1"></td>
263 <td class="n" id="sq5x1"></td>
265 <td class="n" id="sq6x1"></td>
267 <td class="n" id="sq7x1"></td>
269 <td class="n" id="sq8x1"></td>
271 <td class="n" id="sq9x1"></td>
275 <td class="n" id="sq0x0"></td>
277 <td class="n" id="sq1x0"></td>
279 <td class="n" id="sq2x0"></td>
281 <td class="n" id="sq3x0"></td>
283 <td class="n" id="sq4x0"></td>
285 <td class="n" id="sq5x0"></td>
287 <td class="n" id="sq6x0"></td>
289 <td class="n" id="sq7x0"></td>
291 <td class="n" id="sq8x0"></td>
293 <td class="n" id="sq9x0"></td>
297 <p id="piece" height="20">:<br>
302 <table cellpadding="5" border="1">
310 <td>Moves (<a href="Betza.html">Betza notation</a>)</td>
324 <td>Cannot leave its Palace</td>
348 <td>Must jump 1 piece to capture</td>
384 <td>Cannot move onto opponent's board half</td>
396 <td>Acquires sideway moves (fWsW) on opponent's board
401 <h3>Pawn peculiarities</h3>
404 <li>Pawns capture and move straight ahead.</li>
406 <li>When they reach the opponent's board half ('cross the
407 River'), they can also move and capture sideways.</li>
409 <li>There is no real promotion; when Pawns reach last rank they
410 are stuck there.</li>
413 <h3>General rules</h3>
416 <li>It is not allowed to expose your King to check.</li>
418 <li>Kings are not allowed to face each other, i.e. be on the
419 same file with nothing in between.</li>
421 <li>The game is won by checkmating the opponent's King.</li>
423 <li>Stalemate (no legal moves, but not in check) is a los for
424 the stalemated side.</li>
426 <li>Perpetual checking is forbidden, and the side that checks
427 is ruled to lose on the 3rd repeat.</li>
429 <li>When both sides are perpetually checking each other, the
430 game is ruled a draw, however.</li>
432 <li>It is also forbidden to perpetually harass the same piece
433 other than King (see below).</li>
435 <li>But when both sides do it, the game is again ruled a
439 <h3>Differences with FIDE</h3>
441 <p>The board is sub-divided into zones, and some pieces are not
442 allowed to cross some zone boundaries. Pieces move in general
443 different than their FIDE counterpart. Only the Rook moves truly
446 <h3>Perpetual Chasing</h3>
448 <p>It is forbidden to perpetually harass the same piece, and when
449 a repeat loop (after 3 repeats) has one side violating this rule,
450 that side will forfeit the game. This is only invoked if there
451 wasn't any perpetual checking in the loop as well. Exact rules
452 for this are quite complex. Basically, when a repeat loop creates
453 a <i>new</i> attack on the same <i>unprotected</i> piece on
454 <i>every</i> move, the move sequence will be considered a
455 perpetual chase. The chasing side then is ruled to lose, but if
456 both sides are chasing, it is a draw. A Rook counts as
457 unprotected against attacks of C or H. On the other hand, being
458 able to capture your attacker (as when equal pieces attack each
459 other) counts as (pre-emptive) protection. Attacks on a Pawn that
460 is still on its own board half, or attacks by a King are never
461 considered chases.</p>
463 <p>Only legal moves should be taken into account; i.e. pinned
464 pieces are not considered attackers or protectors. An attack by
465 the same piece is not considered a new one just because the
466 attacking piece moved to another location, e.g. when a Rook moves
467 along the ray of the attack. Note that the above rules do not
468 take into account whether the attacking or protecting captures
469 are good or non-sensical, or if pieces are <i>sufficiently</i>
470 protected against multiple attacks. Even if recapturing would get
471 you mated in one, the piece would still count as protected! Also
472 note that is perfectly allowed to alternately chase different
473 pieces. Even if one of the pieces is a King.</p>
475 <h3>Strategy issues</h3>
477 <p>Any piece except a Pawn on the last rank can force Checkmate
478 against a bare King.</p>
479 </div><!-- for id="content", starts in the include above -->
480 <!--#include virtual="/server/footer.html" -->