[心得] 天鳳牌譜解析#5 槓牌與吃牌

作者: Ticcy0807 (卡拉斯)   2024-03-04 13:42:12
哈囉大家好,這裡是踢西烏
上回我們提了有關拔北與碰牌的m屬性
這回我們將繼續研究槓牌與吃牌的部分
http://tenhou.net/0/?log=2021052315gm-00b9-0000-8eed03eb&tw=2
https://tenhou.net/0/log/?2021052315gm-00b9-0000-8eed03eb
先舉暗槓的例子
同一份譜中,南三局二本場晚巡,出現了這個標籤
<N who="1" m="30720" />
老樣子,起手式先轉成二進制
30720 = 0111 1000 0000 0000
在大明槓與暗槓的編碼中
Bit 0, 1一起表示槓牌的來源
01表示下家、10表示對家、11表示上家
那00?鳴自己的話當然就是暗槓囉
Bit 2~7固定留空設為0
Bit 8~15則表示鳴牌的那張牌的編號
0111 1000 = 120,120÷4 = 30,30÷9 = 3···3
所以我們可以得知,通知哥在此時暗槓了北(?!)
你問我為什麼他要暗槓北,看看牌譜就知道了嘛xD
對日麻有點概念的朋友都知道,暗槓了要馬上翻寶牌
所以後面跟著一個宣告新寶牌的標籤
<DORA hai="82" />
至於這張指示牌是什麼牌,就留給讀者去解析囉
大明槓的部分,因為這份譜裡面沒有,所以舉了另一份譜
http://tenhou.net/0/?log=2021053118gm-00b9-0000-b61d0d70&tw=2
https://tenhou.net/0/log/?2021053118gm-00b9-0000-b61d0d70
南三局中巡,出現了這樣一串標籤
<E115/>
<N who="2" m="29443" />
<V85/>
<DORA hai="53" />
將29443轉為二進制得到
29443 = 0111 0011 0000 0011,直接進行分析
Bit 0, 1 = 11,從上家鳴牌
Bit 2~7留空,所以是大明槓
Bit 8~15 = 0111 0011 = 115,115÷4 = 28···3,28÷9 = 3···1
可以得知,這表示從上家大明槓南風
因為明槓的寶牌會在捨牌之後才翻出
所以先出現了捨牌標籤後,才對新寶牌進行宣告
最後的加槓,這邊參照下面這份譜
http://tenhou.net/0/?log=2023081612gm-00b9-0000-6299c2b2&tw=2
https://tenhou.net/0/log/?2023081612gm-00b9-0000-6299c2b2
南三局六巡目,親家碰了上家的發,出現鳴牌標籤
<N who="2" m="49707" />
很快的解析一下
49707 = 1100 0010 0010 1011
Bit 0, 1 = 11,來源為上家
Bit 3 = 1,表示為碰牌
Bit 5, 6 = 01,沒有使用到的牌是編號第二張
Bit 9~15 = 110 0001 = 97
97÷3 = 32···1,32÷9 = 3···5
碰的牌是碰的面子裡編號第二小的牌,碰的牌是發
十三巡目,親家拔北後(m = "31520")摸發,加槓
<N who="2" m="49715" />
加槓比較特殊的一點是,我們還是要說明原先碰的牌的來源
在天鳳牌譜的設計裡,加槓僅對原先碰牌的m屬性的兩個Bit進行修改
我們一樣先將49715轉成二進制,並與原先的49707比對
49715 = 1100 0010 0011 0011
49707 = 1100 0010 0010 1011
可以發現,加槓產生的m值,僅在原來的m上,對Bit 3, 4進行反相
(了解一點程式邏輯的也可以理解成 m = m XOR 0x0018)
如此便可以描述加槓的情形了
與明槓相同,加槓翻寶牌的時間點,也是在打牌之後
故也在捨牌標籤之後,才出現宣告新指示牌的標籤
最後是吃牌,想當然爾三麻沒有吃牌,這邊舉一份四麻譜作為例子
https://tenhou.net/0/?log=2022080822gm-0061-0000-f23fe26f
https://tenhou.net/0/log/?2022080822gm-0061-0000-f23fe26f
東三局八巡目,北家吃了一張牌
<N who="1" m="46383" />
起手式,先轉成二進制
46383 = 1011 0101 0010 1111
在吃牌的編碼中
Bit 0, 1同樣表示來源,不過因為只能吃上家,所以固定為11
Bit 2 = 1表示,這是吃牌的鳴牌標籤
因為吃牌有三張,要標記這三張牌依據是第幾張,所以
Bit 3, 4標示使用的最小數牌是第幾張
Bit 5, 6標示使用的中間數牌是第幾張
Bit 7, 8標示使用的最大數牌是第幾張
Bit 9固定留空為0
Bit 10~15,這裡不像碰牌,要標記來源牌是刻子內編號第幾張
吃牌只需要標記,吃的是順子內最小、中間、或是最大的數牌
而順子一個花色有7種,一共3個花色
所以可能組合自然是7×3=21種
我們可以看,吃牌是21種可能組合裡面的哪一種
並且是吃哪張牌,來進行標記
這樣說可能還是有點抽象,這邊來對46383這個數字進行分析
Bit 0, 1 = 11,上家打出
Bit 2 = 1,標記這是個吃牌的鳴牌標籤
Bit 3, 4 = 01,最小的數牌是第二張
Bit 5, 6 = 01,中間的數牌是第二張
Bit 7, 8 = 10,最大的數牌是第三張
Bit 9 = 0,固定留空
Bit 10~15 = 10 1101 = 45
45÷3 = 15,15÷7 = 2···1
可以知道,這邊的副露是三四索吃二索
以上就是槓牌與吃牌的m屬性標籤分析,下一回預計是最終回
會將和了與流局、終局的標籤進行分析
我們下次再見囉~
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/09/02/tenhou_mjlog_5/
https://www.ptt.cc/bbs/MJ_JP/M.1709530944.A.98A.html
Facebook粉專:
https://www.facebook.com/TCJPMJLab

Links booklink

Contact Us: admin [ a t ] ucptt.com