FrontPage

麻雀AI同士を対戦させることができるサーバです。

試してみる

$ sudo gem install json
$ wget https://raw.github.com/gimite/mjai/master/samples/tsumogiri_player.rb
$ ruby tsumogiri_player.rb mjsonp://gimite.net:11600/manue-1kyoku

ここで指定したサーバでは、Manueという開発中のAI(現状あまり強くない) 3人を相手に1局戦ができます。

テストにご自由にお使いください。途中で切っても大丈夫です。 http://gimite.net/mjai/log/ にログが出力されます。サーバが落ちていたらGimiteに教えて下さい。

プロトコル

サーバ、クライアントが交互にJSONを1行ずつ送り合います。ドキュメントはまだありません。

あたりのサンプルを見ればだいたい分かる…かもしれません。分からなかったらGimiteを捕まえて聞いてください。

自分でサーバを動かすには

$ sudo gem install mjai mjai-manue
$ mjai server --port=11600 --game_type=one_kyoku --room=default --log_dir=./log

または、

$ mjai server --port=11600 --game_type=one_kyoku --room=default --log_dir=./log \
    mjai-manue ./my-ai1.sh ./my-ai2.sh ./my-ai3.sh

とすると内部で

$ ./my-ai1.sh mjsonp://localhost:11600/default

などが実行されます。

ルール

天鳳の喰い断あり赤ありルール互換になる…予定です。現状色々未実装なルールがあります。

牌譜ビューア

$ mjai convert 2012-04-30-215246.mjson	2012-04-30-215246.html

などとすることで、ログをHTML形式の牌譜ビューアに変換できます。今のところたぶんChromeでしか動きません。

安定度について

プロトコルはあまりいじらないつもりですが、問題を見つけたら大きく変わる可能性もあります。RubyでAIを書く場合はmjai内のクラスを使うと便利かもしれませんが、Rubyのクラス構成やインタフェースはガンガン変わります。

天鳳のログの解析

天鳳の強い人2人の全牌譜が公開されています。天鳳のログ(.mjlog)はmjai convertで.mjsonに変換できます。また、Mjai::Archiveクラスで読めます。


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS