二七王规则:按代码实际行为补全 §5.2 拖拉机跟牌的强制降级层级
design.md §5.2 原本只描述"两连对"最简情形,缺少 3 连对及以上的 强制层级。按 class.arith.js get_followcard 的实际实现补写为完整 优先级表:同长拖 > 更短拖拆凑 > 对子够 > 对子不够全出+补 > 单张补; 并修正对子行"同花不足两张必出现有同花"的措辞。§5.4.4 甩牌跟牌 加一句交叉引用,点明与正常跟牌共用同一层级原则。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -129,11 +129,25 @@
|
|||||||
|
|
||||||
### 5.2 按牌型跟牌
|
### 5.2 按牌型跟牌
|
||||||
|
|
||||||
|
跟牌的总原则:**在本轮首家花色内,尽量凑出与首家相同的牌型结构;能凑出的高规格部分必须优先打出,凑不齐的部分才用低规格牌补足。** 服务端按此层级精确计算每名跟牌者的"必出牌"与"可选牌",玩家无法跳过更高规格的强制部分。
|
||||||
|
|
||||||
| 首家牌型 | 跟牌要求 |
|
| 首家牌型 | 跟牌要求 |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| 单张 | 跟同花色任意单张;不够则任意牌补齐 |
|
| 单张 | 跟同花色任意单张;同花色缺门则任意牌补齐 |
|
||||||
| 对子 | 必须跟同花色对子;没有对子则用两张同花色单牌;同花色不足两张则任意牌补齐 |
|
| 对子 | 有同花色对子必须打出对子;没有对子则打两张同花色单牌;同花色牌不足两张时,现有的同花色牌必须打出、不足部分任意补齐 |
|
||||||
| 拖拉机(连续对子) | 有同花色拖拉机必须跟出拖拉机;没有拖拉机但有两对不连续的对子,也必须出这两对;都没有则优先同花色任意牌补齐 |
|
| 拖拉机(N 连对) | 见下方「拖拉机跟牌的强制层级」 |
|
||||||
|
|
||||||
|
#### 拖拉机跟牌的强制层级(同花色牌足够时)
|
||||||
|
|
||||||
|
首家出 N 连对拖拉机,跟牌者手中该花色牌数量 ≥ 首家张数时,按以下优先级**从高到低**确定必出部分,高一级能凑出就必须先凑,不允许跳过:
|
||||||
|
|
||||||
|
1. **有同长(N 连对)的同花色拖拉机** → 必须打出该拖拉机;若手中有多组等长拖拉机,可任选其一打出。
|
||||||
|
2. **没有 N 连对,但持有更短的同花色拖拉机(仅 3 连对及以上首家才会走到这一步)** → 必须先拆出手中能凑到的**最长**拖拉机作为强制部分,再用次长拖拉机 / 对子 / 单张继续补足到相同张数——即"能凑多长的拖拉机,就必须先凑多长",不允许放着更长的拖拉机不出而只出零散对子。
|
||||||
|
3. **没有任何同花色拖拉机,但对子数量足够(对子数 × 2 ≥ 首家张数)** → 用现有对子凑够张数打出(多余的对子可自选保留)。
|
||||||
|
4. **对子数量不够(对子数 × 2 < 首家张数)** → 手中现有的同花色对子**全部**必须打出,剩余缺口用同花色单张补齐。
|
||||||
|
5. **完全没有同花色对子** → 用同花色单张随意补齐张数。
|
||||||
|
|
||||||
|
同花色牌**不足**首家张数时(含完全缺门):现有的同花色牌全部必出,缺口部分可任意补其他牌;若完全缺门则整手任意出,可选择垫牌或用主牌毙牌(见下)。
|
||||||
|
|
||||||
毙牌(缺门时改用主牌顶替首家副牌)的特殊情况:
|
毙牌(缺门时改用主牌顶替首家副牌)的特殊情况:
|
||||||
|
|
||||||
@@ -186,7 +200,7 @@
|
|||||||
|
|
||||||
甩牌一旦被判定合法(见 5.4.2:服务端已确认两名闲家都不持有能盖压这套组合任何一部分的主牌),闲家就不可能再用主牌把它压下去——"能不能盖压"在甩牌提交的那一刻就已经由服务端裁定完毕,不会走到"闲家出牌盖压"这一步。
|
甩牌一旦被判定合法(见 5.4.2:服务端已确认两名闲家都不持有能盖压这套组合任何一部分的主牌),闲家就不可能再用主牌把它压下去——"能不能盖压"在甩牌提交的那一刻就已经由服务端裁定完毕,不会走到"闲家出牌盖压"这一步。
|
||||||
|
|
||||||
甩牌本身可能是单张、对子、多个不同长度拖拉机自由混搭的复杂组合(见 5.4.3)。闲家跟牌时,**要把这套甩牌拆解成一个个独立的分量,逐个分量分别匹配**,而不是把整套甩牌当成一个笼统的整体来对待:
|
甩牌本身可能是单张、对子、多个不同长度拖拉机自由混搭的复杂组合(见 5.4.3)。闲家跟牌沿用 5.2「拖拉机跟牌的强制层级」同一原则(高规格能凑就必须先凑:拖拉机 → 对子 → 单张),只是这里要把整套甩牌**拆解成一个个独立的分量,逐个分量分别匹配**,而不是把整套甩牌当成一个笼统的整体来对待:
|
||||||
|
|
||||||
1. **每一组拖拉机分量**:闲家手中若有同等连对数的主拖拉机,必须优先拆出来跟这一组;没有同等连对数的拖拉机,退而求其次用同等张数的主对子顶替;主对子也不够,才能拆主单张顶替。甩牌里若有多组不同长度的拖拉机,逐组分别按此规则处理。
|
1. **每一组拖拉机分量**:闲家手中若有同等连对数的主拖拉机,必须优先拆出来跟这一组;没有同等连对数的拖拉机,退而求其次用同等张数的主对子顶替;主对子也不够,才能拆主单张顶替。甩牌里若有多组不同长度的拖拉机,逐组分别按此规则处理。
|
||||||
2. **每一组单独的对子分量**:闲家手中若有主对子,必须优先拆出来跟这一组;没有主对子,才能拆主单张顶替。
|
2. **每一组单独的对子分量**:闲家手中若有主对子,必须优先拆出来跟这一组;没有主对子,才能拆主单张顶替。
|
||||||
|
|||||||
Reference in New Issue
Block a user