長將與長捉
本頁所有局面、着法與合法性判斷,均由我們開源的規則引擎在構建時逐一校驗。該引擎實現亞洲象棋聯合會(WXF)規則,並以官方110局例的重複局面判例集作回歸測試。
直接回答
象棋的重複局面不是自動和棋。一方若以長將或長捉迫使局面重複,按規則必須變着;不變則判負。這與國際象棋三次重複即和的處理完全不同,也是絕大多數非中文的象棋軟體實現錯誤的一條規則。
重複局面不自動判和
國際象棋中三次重複局面即可判和,象棋則不然。象棋把重複局面區分為“允許着法”與“禁止着法”,再看雙方各自負有什麼責任:
- 長將(連續將軍迫使重複)——禁止。長將一方必須變着,不變判負。
- 長捉(連續捉同一個子迫使重複)——禁止。同樣必須變着,不變判負。
- 長兌、長獻、長攔、長跟等——通常屬于允許着法,雙方都不變則判和。
核心判斷是:迫使重複的責任在誰。若一方以禁止着法迫使重複而另一方只是被動應對,則前者負;若雙方都在走禁止着法,則判和。
長捉的判定
長捉比長將難判得多,也是規則分歧的所在。要構成“捉”,通常需要滿足:形成了新的吃子威脅、被捉的子沒有得到保護或雖有保護但吃子有利、且被捉的不是兵(卒)以下的子力。
幾個常見的界限:
- “捉”與“將”不同,捉的是將(帥)以外的子。
- 捉有根之子(有保護的子)通常不算捉,除非交換對捉方有利。
- 兌子、獻子、攔截、跟隨都不算捉。
- 一方長將、另一方長捉,通常判長將者負——將的責任重于捉。
破解重複的標準手段是走一步“閒着”:既不將軍也不構成捉的中性着法,用它打破循環而不違規。
本站採用的規則
本站的引擎實現亞洲象棋聯合會(WXF/AXF)規則,並以官方110局例的判例集作為回歸測試。選擇它的原因是它可以算法化判定:每一條判決都能由局面本身推出,不依賴對“意圖”或“得失”的主觀判斷。
中國象棋協會的國家規則在長捉的定義上更依賴子力得失與主觀判斷,無法在不做搜索的前提下嚴格判定,因此不作為本引擎的規範目標。日常對局中兩套規則的結論絕大多數一致,分歧只出現在少數複雜的捉子判例上。
需要說明的是:這條規則正是本站存在的技術起點。整個網頁與腳本語言生態中,幾乎沒有一個象棋庫正確實現了長捉判定,絕大多數停留在“三次重複即和”。
常見錯誤
以為三次重複局面就是和棋。
象棋不是。要先判斷重複由誰迫使、用的是不是禁止着法。
以為長將可以逼和。
長將必須變着,不變判負。用長將求和是最常見的規則誤解。
把所有重複着法都當成長捉。
長兌、長獻、長攔、長跟通常是允許着法,雙方不變則判和。
相關問題
長將是和棋嗎?
不是。長將一方必須變着,不變判負。這與國際象棋的連續將軍可以逼和完全不同。
什麼是長捉?
連續捉同一個子迫使局面重複。按規則屬禁止着法,捉方必須變着,不變判負。判定條件比長將複雜,涉及被捉子是否有根、交換是否有利等。
長將和長捉同時出現怎麼判?
一般判長將一方負——將軍的責任重于捉子。具體仍以規則條文和判例為準。
本站用的是哪套規則?
亞洲象棋聯合會(WXF/AXF)規則,並以官方110局例回歸測試。選它是因為它可以算法化判定,不依賴主觀的得失判斷。