[心得] 天鳳牌譜解析#4 立直、拔北與碰牌

看板MJ_JP (日本麻將 - 日麻)作者 (卡拉斯)時間7月前 (2023/09/25 18:23), 7月前編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
大家好,這裡是踢西烏 這篇文是牌譜解析的第四篇,會著墨於立直與鳴牌的部分 在上一回中我們有提到 眾多摸打之中會穿插著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 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.167.161.143 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MJ_JP/M.1695637404.A.F20.html ※ 編輯: Ticcy0807 (118.167.161.143 臺灣), 09/25/2023 18:23:59
文章代碼(AID): #1b4L-SyW (MJ_JP)
文章代碼(AID): #1b4L-SyW (MJ_JP)