算法条件与校验说明

不少九江麻将玩家在复盘牌局时都会卡在同一个地方:明明感觉胡了,却说不清胡的是什么牌型、该算几番。

尤其换了线上平台或和外地牌友切磋,规则细节的差异一放大,争议就来了。

这篇指南想解决的,就是「查得到、看得懂、对得上」这三件事——从牌型怎么认,到番数怎么核。

先弄清楚:你要查的是哪一套九江麻将

九江麻将本身并不是一份全国统一的规则文本。地方牌桌上流传的打法、茶馆里的约定、线上平台写进代码的判定逻辑,三者常有出入。比如有的圈子保留「红中赖子」的玩法,有的则完全不用。有的地方对「清一色」的门槛卡得很严,有的只要三门花色去掉两门就算。

所以查询算法之前,先确认自己的参照系。是本地老牌友的约定俗成,还是某个具体平台的规则说明?两者混着用,很容易出现「我这边明明是自摸,系统却按点炮算」的困惑。

这也是为什么很多算法查询页面会把「规则版本」单独列出来——不是多此一举,而是差异确实存在。

牌型识别:从手牌结构倒推

算法判定胡牌,通常不是先看番数,而是先确认牌型是否成立。九江麻将的基础结构仍是四组面子加一对将,特殊牌型另算。查询时建议按这个顺序过一遍:

  • 先看是否成刻成顺:把手里能组成的顺子、刻子先拆出来,剩下的牌能不能凑成将。
  • 再看特殊结构:七对、十三幺这类不按常规面子走的牌型,很多算法会单独设一条判定分支。
  • 最后确认赖子替代:如果玩法含赖子,要留意算法是把赖子当万能牌处理,还是限定它只能补特定位置。这一步最容易出岔子。

有个细节值得提醒:部分平台的牌型识别会把「听牌」和「胡牌」分开计算,听牌状态下的手牌结构不一定满足胡牌判定。查算法时如果只盯着番数表,反而会忽略这层前置条件。

番数核对:别只看单一项

番数这块,常见的误区是「一项一项加上去」。多数算法采用乘法叠加或封顶机制,而不是简单相加。比如清一色算一个番值,碰碰胡再算一个,两者组合时是相乘还是取高值,不同实现差别不小。

核对时可以这样操作:先列出这把牌命中的所有番型,再对照规则说明看它是「累加」「取最大」还是「相乘封顶」。

九江麻将里常见的番型大致包括清一色、碰碰胡、杠上开花、海底捞月、自摸加番等,各项的具体数值各平台并不统一,查的时候以你实际使用的规则文档为准。

算法查询页该怎么用

很多人打开算法列表页,看到一堆条件判断就头大。其实可以换个用法:把它当成核对清单,而不是教材。

打完一局有疑问,带着具体手牌去查对应分支,比从头读一遍效率高得多。

  1. 记录完整手牌和胡牌方式(自摸还是点炮)。
  2. 在列表里定位牌型判定部分,确认结构是否成立。
  3. 再到番数部分逐项比对,注意叠加方式。
  4. 如果结果和平台显示不一致,优先怀疑规则版本对不上,而不是算法有错。

当然,也有查不明白的时候。地方玩法口口相传,本身就存在模糊地带,算法列表能覆盖主流情况,但未必穷尽所有角落。遇到规则本身有歧义的牌型,和牌友当场约定往往比死磕文档更实际。

几个容易被忽略的点

第一,杠牌的处理。明杠、暗杠、补杠在番数上经常不同,而且杠完之后摸牌的顺序也会影响后续判定。第二,特殊胡法的优先级。有些规则里,特殊牌型的番数会覆盖普通番型,不再叠加,这一点在核对时特别容易漏。

第三,也是最多人踩坑的——不同平台的番数上限设置不同。同一手牌,在 A 平台算出高分,换到 B 平台可能被压到封顶值。这不是谁算错了,而是规则参数不同。查询算法时把封顶规则一并看一眼,能省掉不少无谓的争论。

算法查询的价值不在于背下每一条判断,而在于让你在牌桌上说得清、对得明。牌型认准了,番数核对了,剩下的就是各地规则的细微差别,心里有数就行。