kobalab / Majiang

HTML5 + JavaScript で動作する麻雀アプリ「電脳麻将」
https://kobalab.net/majiang/
MIT License
603 stars 166 forks source link

副露後に役を崩してしまう打牌をすることがある #99

Closed kobalab closed 2 years ago

kobalab commented 2 years ago

名称未設定

5シャンテンからタンヤオ4シャンテンとなる鳴きをした直後にタンヤオを崩す 2s を打牌してしまう。評価値計算が誤っている模様。

kobalab commented 2 years ago

https://github.com/kobalab/Majiang/blob/74dfba2744b4e08ff9d101c70d93fa4a4e4d6264/src/js/majiang/player.js#L492-L500

3シャンテン以前は「役ありシャンテン数」が減るように打牌選択するが、上記の部分で役ありシャンテン数ではなく通常のシャンテン数で判断してしまっている。 打 2s は通常のシャンテン数計算ではシャンテン戻しではないが、役ありではシャンテン戻し(4 → 5シャンテン)になる。 役あり5シャンテンとなった場合はタンヤオ以外に染め手も打牌候補となり、染め手を狙って 2s を選択してしまっている。

kobalab commented 2 years ago

v1.6.7 に反映。