[心得] 天凤牌谱解析#4 立直、拔北与碰牌

楼主: Ticcy0807 (卡拉斯)   2023-09-25 18:23:20
大家好,这里是踢西乌
这篇文是牌谱解析的第四篇,会着墨于立直与鸣牌的部分
在上一回中我们有提到
众多摸打之中会穿插著REACH与M标签
这里我们先针对较为简单的立直进行分析
http://tenhou.net/0/?log=2021052315gm-00b9-0000-8eed03eb&tw=2
https://tenhou.net/0/log/?2021052315gm-00b9-0000-8eed03eb
一样先举一个作为示例,东一局一本场中有下列这串标签:
<REACH who="0" step="1"/>
<D62/>
<REACH who="0" ten="418,311,311,0" step="2"/>
如果有打过实麻的朋友应该知道,进行立直的流程是:
宣告立直→舍牌→没有被荣和的话丢棒
而在天凤的牌谱纪录上也是如此
第一个REACH标签中
who属性表示立直玩家,step表示步骤
在牌谱上我们可以看到,这一步正是代表n0宣告立直的动作
宣告立直后,打出编号为62的牌
62÷4 = 15···2,15÷9 = 1···6,可知其打出的牌是七饼
打出的牌没有被荣和,所以进入交付立直棒的环节
第二个REACH标签中,除了原先前相同概念的who与step
因为丢棒之后点数有改变
所以用ten属性再对各家点数进行一次设定
至此,立直的纪录就结束了
值得一提的是,如果宣言牌被荣和
那自然就不会有step="2"的REACH标签了
接下来是比较痛苦的N标签,也就是鸣牌部分
这个N,笔者推测应该是取自鸣牌Naki的首文字
属性who表示玩家、m表示副露内容,应该是取自英文Meld
每个m值,都是以16bit的数字表示
而所有的鸣牌种类,包含吃、碰、明杠、暗杠、加杠、拔北
都用了不一样的标记方式
这边先举一个拔北的示例
东一局,开局过了不久出现了这个标签
<N who="0" m="30752" />
而30752这个数字,我们先将它转成二进制
30752 = 0111 1000 0010 0000
对于拔北而言,Bit 0~4与Bit 6, 7固定为0
Bit 5 = 1表示这是拔北的鸣牌标签
而Bit 8~15则表示牌的编号
0111 1000 = 120,120÷4 = 30,30÷9 = 3···3
可以知道这的确是一张北
紧接着的<N who="0" m="30752" />就留给各位读者尝试解码
过了几巡之后,又出现了一个碰牌的标签
<N who="0" m="19466" />
我们同样先把19466转为二进制
19466 = 0100 1100 0000 1010
对于碰牌而言,Bit 2, 4, 7, 8固定为0
Bit 3 = 1表示这是碰牌的鸣牌标签
Bit 0与1一起表示鸣牌的来源
01表示下家、10表示对家、11表示上家
而因为碰牌有三张同种牌,我们只需要纪录哪张牌没有用到
所以将没有用到的那张牌÷4取余数后,以二进制表示在Bit 5, 6
Bit 9~15的部分比较不好解析
因为我们已经记录了没有用的那张牌,也记录了鸣牌来源
所以我们可以想成,在所有34个牌种里面,每牌种有三个碰牌方式
鸣牌来源的那张牌,是牌的编号由小到大第几张,决定是第几个
以这样的方式,来记录碰牌的面子组合
这样讲可能还是有点抽象,所以我们来试着分析19466这个数字
Bit 0, 1 = 10,是对家打出的
Bit 5, 6 = 00,没有用到的那张牌,是同种牌里面最小的
Bit 9~15 = 010 0110 = 38,38÷3 = 12···2,12÷9 = 1···3
可以知道,碰的牌是四饼
没有用到的牌是编号12×4 + 0 = 48
使用的牌是编号49, 50, 51
而鸣牌来源是最大的那张牌,即51
以上,下一篇会继续补完大明杠、暗杠、加杠与吃牌
这篇内容相对艰深不少,笔者也花了很长一段时间理解
有讲得不清楚或有谬误的地方还请大家提出
Reference:
https://m77.hatenablog.com/entry/2017/05/21/214529
http://jyanryu.blog.fc2.com/blog-entry-18.html
https://c.tieba.baidu.com/p/4452478082
https://mahjong.nekoeigo.net/mjlog/
本文更新于于Wordpress及ptt MJ_JP:
https://tcjpmjlab.wordpress.com/2023/08/31/tenhou_mjlog_4/
https://www.ptt.cc/bbs/MJ_JP/M.1695637404.A.F20.html
Facebook粉专:
https://www.facebook.com/TCJPMJLab
作者: HOWTOPETER (小侯)   2023-10-24 00:13:00

Links booklink

Contact Us: admin [ a t ] ucptt.com