版本锁定不混算
每条算法条目绑定规则版本号,规则调整后旧版本仍可查。同一手牌在不同版本下的结果能并排对照,不会被新系数悄悄覆盖。
番型判定 · 番数累加 · 封顶取整 · 争议牌例优先级
九江麻将算法列表按规则版本收录本地牌局常用的番型判定与算分逻辑,从平胡、碰碰胡到七对、清一色、杠上开花,每条条目都写明输入牌面、判定条件、番数权重与结算边界。我们把城区常打的规则和周边县市的差异分开标注,遇到封顶、包牌、抢杠这类容易起争议的环节,会在条目里给出判定顺序和取整方式。条目按版本号锁定,规则调整后旧版本仍可查,方便对着同一手牌复算多次,也方便开发者在实现胡牌校验和番型累加时找到清晰参照。
基础番型与平胡算分,确立面子与将牌的校验顺序
七对与豪华七对拆条,补上对子数量与叠算上限
杠上开花按明杠、暗杠、补杠分档,加入抢杠胡优先级
清一色与混一色系数拆开,标注城区与县市取值差异
封顶与取整边界统一,争议牌例给出判定先后顺序
只推送版本差异与新增条目,不夹带其他内容。邮箱仅用于规则更新通知,可随时退出。
按算分权重、牌型结构、区域差异拆成三块,每块都标注了适用的规则版本、输入条件和验证方式,查条目时不用来回跳。
下面这些是九江麻将算法列表里被调用最多的条目,每条都写明输入什么、输出什么、在什么条件下失效。特殊牌例在此基础上做分支细化。
四副面子加一对将牌即可成立,不计特殊番型时按基础分结算,自摸与点炮的取值在此条目内分别给出。
四副刻子加将牌,明刻与暗刻分别计入权重,杠牌按刻子处理,补杠与暗杠的差异在条目内单独注明。
七个对子成立,四张相同牌按豪华七对叠算,条目内写明叠算上限,以及不能与碰碰胡同算的边界。
全部牌面同一花色且不含字牌时加权,混一色的处理单独列出,避免两种牌型共用同一套系数造成偏差。
杠后补牌自摸成立,条目内区分明杠、暗杠、补杠三种来源的加分幅度,并标明加分与封顶的先后关系。
他家补杠时若正好成胡,判定顺序先于杠牌生效,条目给出优先级比较规则以及判定失败后的回退处理。
门清、自摸、杠上开花可以同时成立,叠加顺序与封顶截断按版本分别说明,避免同一手牌在不同版本下算歪。
番数触顶后不再累加,结算金额按约定方式取整,条目列出常见的两种取整边界及其适用场景。
牌局结算的争议往往不在主流程,而在碰杠之后、封顶之后、补牌顺序之后的那几个边界上。这三件事决定了条目好不好用。
每条算法条目绑定规则版本号,规则调整后旧版本仍可查。同一手牌在不同版本下的结果能并排对照,不会被新系数悄悄覆盖。
碰杠之后的手牌结构、补牌顺序、抢杠优先级都写进条目,实现胡牌校验时不必再靠猜去补那些很少出现的分支。
九江城区与周边县市在清一色、混一色、封顶位置上的取值并不统一,条目按区域分列系数并注明来源,跨区域组局先对版本。
这是一副很常见的牌,难点不在牌型本身,而在于清一色与自摸同时成立时的累加顺序。下面按条目顺序逐步拆开。
三副顺子加一副刻子,再配一对将牌,结构成立,没有碰杠记录需要额外处理。
筒子连续且无其他花色,清一色成立;自摸成立;门清成立。三项分别打上标记等待累加。
按 v3.0 顺序先计清一色 4 番,再叠加自摸 1 番,门清按条目约定不重复计入,未触及 8 番封顶。
总番数换算为结算分后按四舍五入取整,若采用城区另一套封顶位置,则需切换到对应版本条目复算。
组局前后被查得最频繁的四个方向,基本都是同一手牌换个人算结果就不一样的地方。
两种状态同时成立时怎么累加,封顶触发后先舍弃哪一项,条目里给了明确的截断位置。
算分规则
同一手清一色在两地取值不同,条目按区域分列系数,并注明各自沿用的版本号。
规则差异
补杠与暗杠改变牌墙顺序,听牌张数需要按剩余牌重新枚举,否则容易多算一张。
牌型判定
补杠请求与胡牌请求同时到达时,比较顺序决定最终归属,条目给了完整比较链。
校验逻辑每次调整都以版本节点为单位落档,旧条目不会被删掉,只会在体系里补上新的分支与说明。
把清一色与混一色的系数彻底拆开,封顶之后的取整方式收敛为一套规则,并补充了六例争议牌局的判定先后顺序。
补杠请求与胡牌请求的到达顺序成为独立比较项,同时补充了判定失败后杠牌生效的回退处理路径。
明杠、暗杠、补杠三种来源的加分幅度分别标注,七对的叠算上限同步调整,避免与豪华七对重复累加。
两种牌型从原先的同一条目中分离,补充对子数量校验与四张相同牌的识别条件,简化了判定入口。
条目写得到不到位,最后都要落到实际牌局和代码里检验。下面几条反馈来自常年在本地组局和做校验实现的人。
同一手牌在 v2.5 和 v3.0 下各算一遍,封顶差异终于有据可查,不用再凭印象争谁对。
实现胡牌校验时,碰杠之后的手牌边界说明省了大量调试时间,很少遇到需要自己猜的分支。
争议牌例给了判定顺序,组局时按条目走一遍流程,基本不用再各说各话,结算快很多。
条目不是一次性写完就放着,规则有调整、牌局有新争议,都会回填到对应版本里,并保留下调整痕迹。
每条算法都标注规则版本、来源区域和最近一次修订位置,翻旧账时有据可依。
封顶、取整、包牌、抢杠这类特殊处理单独成条,不塞进主流程里含糊带过。
条目与实际牌局不符时可提交牌面结构与主张,核对后会补充为独立条目。
城区与周边县市规则分列呈现,不合并成一套系数,跨区域组局先对版本号。
从确定版本到最终取值,中间任何一步跳过都可能让结果偏掉,尤其是碰杠记录不完整的牌局。
按牌局约定的版本号进入对应条目,跨区域组局先确认采用城区还是县市那一套。
确认面子与将牌成立,碰杠记录完整,特别留意补杠之后手牌数量的变化。
按条目给出的叠加顺序依次计入,触及封顶后停止,不再追加后续番型。
按约定方式取整换算,结果有分歧时回看争议牌例条目,确认判定顺序是否一致。
新增条目、勘误说明、区域对照补充,都会在这里按时间倒序排列,方便对着版本号回查。
下面几个问题几乎每次组局或对接实现时都会被问到,答案直接对应条目里的处理方式。