2009年03月21日
PC新調
新調というよりは新しくもう1台買ったのであるが。(この記事は「旧」側から更新している。)
麻雀用語辞書を入れたいのだが
- いくつか漢字が間違っていたり (よく見るのは×槍槓○搶槓、×塔子○搭子)
- 中麻役がなかったり
- 自分の使わない変換結果が入っていたり (△テンパイ◎聴牌)
するため、すでに誰かが作ってあるものは私には合わない。 そこで、ブログ上に作ってみようと思う。 なんとかうまく分類して、系統的に列挙していこう。
- 専門用語: 名詞
- 暗刻、和了形、など
- 専門用語: 動詞
- 聴牌-する、頭ハネ-る、和了る、など。
- 役: 日麻
- 役: 中麻、台麻
- 役: 純麻、庸麻
- 役: ローカル
- 役の名前。平和、清龍、など。
- プレイ用語
- 純粋なルールブックに登場しないもの。降り打ち、仮聴、など。
2009年03月08日
中麻平和何切る (1)
前稿では、平和の点数を評価するべき手の総数について上界を求めた。 実際にプログラムを組む際には、この上界を減らす工夫が重要である。
麻雀において、ある意味で「同じ形」と考えることのできる手牌には3つのパターンがある:
- 反転
- 全ての牌のランクを、10から引いたものに変更する。ex. 12344m345567p234s → 66789m345567p678s
- 変色
- スートごとに、牌式を交換する。ex. 12344m345567p234s → 12344m234p345567s
- 平行移動
- すべての牌のランクに、定数を加える。ex. 12344m345567p234s → 23455m456678p345s
これらによってパターンを削減することを考えよう。 ただし、操作「変色」においては定色役*1について、「平行移動」においては偏数役*2について、それぞれ「同じ」ではなくなることがある。*3 変色で緑一色の有無が変わるような手は、ほとんど清一色だから、8点を作るという観点からは問題として重要ではない。 また、推不倒が狙える手はそれをわかっていれば済むので、推不倒を無視しても大きな影響はない。 平行移動については、8点を作るという観点から、8点以下の役、すなわち断幺の有無については注意する必要がある。 また、非和了形において両搭を平行移動すると辺搭が現れたり、その逆が起こるので、やはり平行移動については特に注意しなければならない。
*1 定色役: 限られたスートの数牌で成立する役。推不倒・緑一色 の2種を指す。
*2 偏数役: 数牌のランクによる全体役。 断幺・大于五・小于五・全大・全中・全小 の6種を指す。
*3 反転は偏数役に影響を及ぼすが、断幺および全中は結果として変化がなく、他4役は大小が反転するだけなので、注意するに及ばない。
More...2009年03月03日
中麻平和何切る (0)
中国麻将の「何切る」は、日本麻雀のような「この手は攻めるべきか降りるべきか」より、純粋に「この手を和了に結びつけるためにはどちらを切るべきか」が難しく、また重要であることが多い。 理由の1つには8点縛りがある。 なんとしてでも8点を作らなければならず、そのためにはまだ関連牌すらないところに面子を見出したり、鳴きを駆使したりするのだ。
中国麻将を始めた人が最初に出会う中麻独自の役は、三色三歩高だろう。 「数牌の雀頭で順子4組なら、待ちがどんなのでも平和だよ」- そう言われてまず「ぴんふさんぷーこー、はちはじゅうろく」を目指すのではないか。
三色三歩高の特殊性は、もう1つの順子によって成立する役が自在に変化することだ。 たとえば 123m234p34sXX という聴牌は、5s で三色三歩高が成立するが、2s では点数がたりない片和了りだ。 しかし、ここに第4の順子を加えると状況は一変する。 それがもし 234m であれば三色三同順、345p であればまた別の三色三歩高が成立するのだ。
このような、両面待ち (以上) で、和了牌によって別々の軸手役*1が成立して和了となるような聴牌を「両和了り」ということがある。 三色三歩高を狙う際には、この「両和了り」聴牌を目指して打牌することになる。
これに関してきんとん氏はすでに非常に多くの成果を出され、その一部を公開されているが、私はプログラムによる力技で全解を求めてみようと思う。
*1 軸手役: 和了が8点縛りを満たす中心となる手役の意。6点以上の手役を指す。
More...2009年02月26日
2009年02月15日
正規表現 (2)
三麻と四麻との両方にマッチするもの:
\d{2}:(\d{2} \| ){2}(三[般上特鳳][東南][喰−][−赤] \||四[般上特鳳][東南][喰−][−赤] \| [^ ]+\([-+]?\d+\))( [^ ]+\([-+]?\d+\)){3}
2009年02月10日
正規表現
Python CGI で大会集計をやるので、開発のついでに要素を切り分けてここに書いておこうと思う。第1回は正規表現。
Python を含めた多くのプログラミング言語で強力な文字列検索/置換機能を提供しているのが、正規表現。天鳳のログにマッチするもの。
- 四麻
- \d{2}:(\d{2} \| ){2}四(般|上|特|鳳)(東|南)(喰|−)(−|赤) \|( [^ ]+\((\+|-)?\d+\)){4}
- 三麻
- \d{2}:(\d{2} \| ){2}三(般|上|特|鳳)(東|南)(喰|−)(−|赤) \|( [^ ]+\((\+|-)?\d+\)){3}
正規表現は、初めて見たときは暗号にしか見えないが、初めて理解したときは感動するものである。
タイトル
変更しました。お手空きでよいですから、リンクテキスト修正などお願いいたします。(開設当初からずっと他によいタイトルはないかと思っていて、半年ほど前かな、思いついた。今変更した理由は気まぐれ。)
2009年02月07日
大会開始
サイト・ブログ・2ch・専用掲示板の管理とプログラム開発とプレイヤーとして打つのとを同時にできるほど作業能力は高くないので、ここで書き漏らしてしまっていた。ほかにもいろいろと仕事がたまってたり…
グチになってはいけない。 ルール文書をいくつか改定したので、参加者の方はよくお読みいただきたい。 質問はコメント欄・2ch板・専用掲示板などへどうぞ。
2009年01月23日
2009年01月09日
大会開催告知
天鳳の特上卓東南戦フリーロビー・大会ロビーにおいて、以下のように大会を開催する:
- 開幕
- プレ大会: 01/18 20:30-
- 場所
- 大会ロビー
- フリーロビー
- 02/01 対戦開始分から集計
- 詳細
- 大会ページ: ルール
- 申込
- 大会に参加、または直接の連絡。

