======================================================================
麻雀ゲーム・ソフト「テナリ君」ver.2.10 作者: 千田俊太郎
======================================================================
こんにちは。ぼくは「テナリ君」です。實在(じつざい)する學生アパートのローカル・ルールで打ちます。他のローカル・ルールにも いろいろ對應(たいおう)してゐます。よろしくお願ひします。
■ 1. ソフト導入 ■ 1.1 ダウンロード
以下から入手可能です。
http://tidas1974.googlepages.com/tenari
※折に触れてバージョンアップを行います。
バージョンアップが行われた場合は、麻雀祭都でコメントします。 □Windows
用パッケージ □Mac OSX 用パッケージ □ruby スクリプトのみ
最初の二種類はテナリ君作成者以外の方の著作物を含みます。
■ 1.2 インストールと起動 (Win, Mac)
壓縮(あつしゆく)ファイルを適當(てきたう)なディレクトリに展開してください。
Windows, Mac についてはフォントと畫像(ぐわざう)、實行環境をまとめたパッケージがあり、これを利用するのが簡單です。みかちやんフォントと牌畫(はいぐわ)、exerb で作つた實行(じつかう)ファイル(各種 dll を内藏)などを同梱してあるので、とてもでかいですが作者が作つた中身は tenari* だけです。Windows では實行ファイル tenari.exe を實行、Mac では Tenari.app をクリックです。
■ 1.3 その他の實行(じつかう)環境
ruby と sdl の動く環境で動きます。開發は FreeBSD 8.0 CURRENT で行つてゐます。Windows XP, FreeBSD
5.4, FreeBSD 7.0, OSX(darwin 9.2.2) でも動作確認できました。VMware 上ですが、Ubuntu でも動きました。
ruby, sdl, ruby/sdl が必要です。簡單にインストールできる OS もあります。
--------------------
FreeBSD なら
$ portinstall devel/ruby-sdl
Debian 系なら
$ apt-get install libsdl-ruby1.8
--------------------
で簡單。
ruby/sdl の導入方法について詳しくは以下を御參照ください。
http://jp.rubyist.net/magazine/?0018-GameProgramingForRubySDL
ruby/sdl 2.x 系では(この文書を書いてゐる時點で 2.0.1b が最新) 動かせませんので御注意ください。あとは畫像(ぐわざう)を image/ 下に置いて、實行は「ruby tenari.rb」です。
畫像は「まつセンパイ」の牌畫を置けばすぐ使へるやうになるはずです。他の牌畫も利用可能ですが、ファイル名や畫面サイズなどに調整が必要になることでせう。
フォントはみかちやんフォント推奬です。「テナリ君」がフォントを探し出せないやうならスクリプトを置いたディレクトリに mika 等の名のサブディレクトリを掘り、みかちやんフォントをどーんと置いてください。
以上で分からない場合の對策は二つ。一つ目はMac 用のパッケージを取得し展開、Tenari.app/Contents/MacOS/core.sh
やTenari.app/Contents/Resources/あたりを眺めて頑張ること。
つぎは Win 用のパッケージを取得、Win 實行ファイルをなんとか動かしてみること。例へば變態(へんたい) 的ですが FreeBSD 5.4-RELEASE-p6 のwine-0.9.36でも exe ファイルの動作確認取れました。しかもさくさく動くのでびつくり。
■ 1.4 「テナリ君」の特長
・多樣なルールで打つことができる。臺灣麻雀のやうな16張もok! 設定畫面からルールを選んでね。
・ruby で動く、スクリプトが公開される
->多樣なプラットフォームに對應
->ユーザによるカスタマイズが自由、ユーザーによるバグ修正が可能
・「初心者」モードや「テナリのお薦め」機能(捨て牌選び時に"t")で初心者にも優しく、お子樣の麻雀教育に最適。
・「上級者」モードで時間制限のある嚴しい制約の中で訓練可能
■ 1.5 カスタマイズ
tenari-rule.rb と tenari-u.rb を參考に tenari-u.rb を書き換へたりしてみてください。テナリ君が判定可能な役は tenari.csv の一覽を御覽ください。テナリ君なら完全に自分ちのルールで遊ぶことができます。
■ 1.6 各種ルールについてのおことわり
なるべく忠實に再現させようと思つてをりますが、その名の團體の規定、あるいはその名のもとに行はれる麻雀ルールそのものでプレイできることを保證することはできません。あくまで「?風」ルールであると御理解ください。が、できるだけ今後も細かい調整ができるやうにしてゆきます。
■ 1.7 設定
操作繁雜度
上級者: 打牌や鳴きの選擇畫面が 2.5 秒で消えます(強制自摸切り/右端の牌を打つ)。また他家の打牌全てについて鳴きの判斷をさせられます。
中級者: 打牌や鳴きの選擇畫面が 4.5 秒で消えます(強制自摸切り/右端の牌を打つ)。
初級者: 打牌や鳴きの選擇畫面の時間制限はありません。またデフォルトの選擇肢としてテナリのお薦めにカーソルが動きます
・不安定な部分:
テナリのお薦めがへんな場合があります。
強制された打牌が錯行爲につながる場合がありますが、罰則はありません。
その他 へんな動きをみせることがあります
・テナリ君の長考
テナリ君にどれだけ長考を許すか決めます
うまく動かない場合があります
また長考しても頭が良くなつてゐるとは限りません
キャラの振り分けができればこのオプションは廢止する可能性があります
■ 2. ルール
プリセットルールは設定畫面より選べます。
ルールによつては完全に實現できてゐない機能があります。
また間違ひが殘つてゐるかもしれません。
■ 2.1 日本麻雀ルール
□2.1.1 デフォルト
・アガリ役
食ひタンあり、あとづけあり(アリアリ)、サンレンコー、スーレンコーあり、槓ドラあり(槓ウラなし)、一發あり(一發は同巡に鳴きや槓が入ると消えるが、一發消しの行爲直後の打牌までは一發の對象)
・點、點棒管理、半莊終了條件、ウマ
配給原點 25000、30000返し リー棒かけ取り(トビがありなので持ち點が1000點を切ると立直はかけられない) 33300 の確定がなければ西入(そして北入、かへり東...)、オーラスでトップの親はあがり止め不可、トビあり、ウマは「ゴットー」、トビウマ10
・その他
ダブロンあり、トリロンは流局、赤牌は不使用、食ひ變(か)へなし、東場は和了/聽牌連莊、南場は和了/流局連莊(不聽でも親流れしない)、途中流局で親流れの可能性あり、和がりやめなし
□2.1.2 テナリ君のローカル・バリエーション
デフォルト・ルールを基本としたバリエーションです。
○日本-L3: ゆるめ
ありあり; 赤なし・カン裏あり; 和がりやめあり; リー棒あがりどり;南場のノー聽親流れなし; 途中流局は連莊; 三連刻;四連刻あり; パオなし
○日本-1D; かため
食ひタンなし; 配給原點 27000; 必ず和了/聽牌連莊; 二家和・三家和は頭跳ね; カン裏なし;三連刻なし(將來的には完先にしますが、現在はソフト自體が完先に對應してゐません)
○日本-派手: 派手め
ありあり; 赤あり; カンドラ先のり; 和がりやめあり; オープン立直あり; リー棒あがりどり; 南場のノー聽親流れなし; 途中流局は連莊;三連刻・四連刻あり;
パオ; 大三元、大四喜、四槓子; 親の和がり八連莊で親子ともなんでも役滿(縛りをクリアする手役は必要)
○東風
東風戰になるほかデフォルト・ルールと同じです
○數牌麻雀
數牌のみを使ふ麻雀です
□2.1.3 その他
ネット上で相當する規定を確認できる立直麻雀ルールは以下の通りです( いくつか實驗的なものを入れてあります)。
○日本-赤: 雀賢莊、赤牌ありルール風
http://jankenso.com/about_rule.asp
○日本-ネット: 雀賢莊風
http://jankenso.com/about_rule.asp
○東風-サドンデス: 東風莊風
http://mj.giganet.net/
○東風-食ひタン: 雀賢莊、東風まはしルール風
http://jankenso.com/about_rule.asp
○競技: 日本麻雀機構や RMU-A の規定風
http://mahjankikou.co.jp/rule_manner.html
http://www.rmu.jp/rule.htm
○競技-一發なし: RMU-B の規定風
http://www.rmu.jp/rule.htm
○競技-赤: RMU-C の規定風
http://www.rmu.jp/rule.htm
○競技-明槓包-一發なし: 日本プロ麻雀連盟風
http://www.ma-jan.or.jp/guide/game_rule.php
○競技-明槓包+一發あり: 日本プロ麻雀連盟 Bルール風
http://www.ma-jan.or.jp/guide/game_rule.php
○競技-プロ: 日本プロ麻雀協會、最高位戰日本プロ麻雀協會などの規定風
http://npm2001.com/
○競技-101: 101競技連盟の規定風
http://101.ifdef.jp/
○競技-ネット: 雀賢莊競技規定風
http://jankenso.com/about_rule.asp
○符無し
http://www.janshoya.jp/mahjong_saloon/system.html
■ 2.2 純麻雀
浅見了さんの唱導する競技ルールです
※日本麻雀は知つてゐるが純麻雀を打つたことのない方へ
・點數の計算體系がかなり違ひます
・しばりはありません(0翻あがり可)
・ドラや一發など偶然役がありません
・レンチャン、流局時の罰符がありません
・カンがありません
・一莊戰
ルール詳細は以下でお調べください。
http://www9.plala.or.jp/majan/PUREMAJAN.html
■ 2.3 中國麻將 (國標麻雀)
※日本麻雀は知つてゐるが中國麻將を打つたことのない方へ:
・點數の計算體系が全く違ひます
・8點しばりです
・ロン和で放銃者以外も點を取られます
・役が多いです(でも8點しばりだし、ドラ、リーチがないので氣をつけて)
・一通はホンイツより高い手です 七對子はさらに高い手です。役牌+ホンイツのみを食ふとかなりぎりぎりです
・チャンタは日本麻雀よりも報はれない役です
可哀想だけどテナリ君が綺麗なジュンチャンのみで和がれない時があります
・つぎの手を押さへておくと良いです
三色三歩高 (頻度高し!) 、花龍 (三色一通)、・全不靠、組合龍、七星不靠(三つセットでどうぞ)
・その他はおまけだと思つて打ちながら覺える
・頻度は低くなるが簡單に覺えられさうなのは
全帶五、大于五、小于五、全大、全小、全中
・慣れる前はタンヤオ・ピンフを基本として打たないのがいいです
・タンピンのみだと門前自摸しないと和がれません
・ピンフはカンチャン、ペンチャンで待てます(しかもその方が點が高い)
・食ひ下がりがありません
・ピンフやイーペーコー食つても役がつくよ 。が、門前自摸の價値はあります
・レンチャン、フリテンによる和がり制限、流局時の罰符がありません
・一莊戰
その他、ルール詳細はお調べください。
問題點
・不可能な複合役を排除しきれてゐないかもしれない
・席替へは分かりにくいですが たぶんこんな感じ
■ 2.4 台灣麻將
手持16枚、完成形17枚の麻將(まだ試驗的對應です)。
□ デフォルト
・縛りなし ・八台滿貫 ・役が少な目の麻將(三色同順、タンヤオ、八對半等ありません)
□14台滿貫
・少し大きめの手が7台、大きな手は14台です
□新章麻將
・2台縛り ・役が盛澤山 ・過水未對應
疑問點
・點數の計算體系がよくわからない
■ 2.5 二十二(アルシアル)系
原型的麻雀です。日本麻雀連盟 http://www.geocities.jp/boon47814/ のルールから始めるといいでせう。
特徴
・縛りがない ・フリテンがない(現在の日本の立直麻雀以外では普通のこと) ・役が少ない (そのため符が重要) 立直はもちろん、一盃口や三色同順がありません
・一莊制
・サイド計算(敗者同士の點交換)をするバリエーションあり(このソフトでは「European Classical」と「中國古典麻將」が該當) ・放銃一家包がないバリエーションあり(このソフトでは「European Classical」(必ず幺二))
■ 2.6 その他
・ブー系:だれかがとぶか、だれかの持ち點が配給原點の二倍になると終了する麻雀
○ラド麻雀:草場純さんによる創作ルール
http://www.flowstones.com/mj/Rule/Fairy-0012.htm
○振り込み麻雀: 草場純さんによる創作ルール
http://www.flowstones.com/mj/Rule/Fairy-0011.htm
○純ブー:浅見了さんによる創作ルール
http://www9.plala.or.jp/majan/labo36.html
○日華麻將:浅見了さんによる創作ルール
http://www.asamiryo.jp/labo31.html
○七對麻雀:浅見了さんによる創作ルール
http://www9.plala.or.jp/majan/labo14.html
○七對麻雀ウルトラ:浅見了さんによる創作ルール
http://www9.plala.or.jp/majan/labo15.html
○中麻-東南
http://www.shin-jan-ren.org/
○中麻-88滿貫
http://kansaicyunma.hp.infoseek.co.jp/rulu.htm
○古典 (未完成)
このソフトでは副底10符のアルシアルです。今後アルシアル以前のルールをきちんと調べ作り直すかもしれません
○想定寧波、上海租界 (未完成)
上記「古典」より前のルールとして完成させます
*上海租界の人和、七對子、地和は本來 翻數はありませんが、ソフトの便宜上 一翻扱ひにしました(想定寧波規則の國士、十三不塔は未對應です)
■ 3. 制限・仕樣
・設定がをかしくなつたら tenari-setting.yml を削除してみてください
・捨て牌には鳴かれた牌(ペケつき)が一巡殘ります
・宣言表示は一巡弱 殘ります
・ブー系では今のところテナリ君はチンマイを避けられません(罰則もなし)。また「ダブル」の扱ひができません
・テナリ君が かなり をかしな打牌をすることがあります
・テナリのお薦めのねらひ役と打牌が矛盾することがあります
・ローカル・ルールの調整 GUI インターフェースはありません(將來の仕樣變更がありうるのでソースいぢる時は御注意)
■できれば對應豫定
・三人/二人/一人麻雀
・完先對應は遠い將來に豫定
・アメリカ麻雀對應はそれより先に豫定
・半莊の途中で状態保存終了も豫定
・牌譜保存は仕樣を檢討します
・キーボード操作のみ對應です -- マウス對應も頑張ります
・音はついてゐません
■ 4. 言ひ譯等
原因がきちんと分かつてゐないが發生が確認されてゐる異常動作をいくつか抱へたままです。
聽牌にも向かはなければおりてもゐない、意味不明の打牌がたまにあります。
しかし しかし、こんだけへぼ麻雀のこともあれば、熱い鬪牌を繰り廣げたり、ジュンチャン・三色・平和の高目を華麗にしとめたり、囘して囘してなんとかしのいだ上に
ぎやふんと言はせたり、(偶然の産物だけど)引つかけたり、役滿を和がつたり、ノミ手で和がり止めしたりできるんです。
テナリ君は最速和了パタンの候補を考へ、そこから期待値の高い方向に進むこと、それからオリることしかできませんでした。つまりオリてゐるのでなければ、必ずテンパイに向かつてゐる。大きな手變(てが)はりを考へない。だから結果を見るといつもテナリ。最近やうやく少しの役をねらふやうになりました。ところがなかなかどうしてこいつは打つぜ。「青は藍より出でて」といふけれど作者より強いかもしれません。
ソースが汚いのは承知で、ruby の勉強のつもりで力技でがんがん書いて、あとから増築を重ねたのでへんなことになつたのです。同じ機能を果たす函數が意味なく複數あつたり、古い函數がそのまま野晒しだつたり、ずいぶん一貫性のないことになつたりしてしてえらいことです。バグの温床です。さうしてデバグ用のコードがたくさん殘されてゐます。散らかつてゐる家の中をお見せするやうなものです。なんとかしてゆきます。
向聽數が高いと最速和了パタンの計算に時間がかかるため、可能性の切り捨てをします。
作者の環境では許容範圍をこえる長考が時々あるのでさらに對策(たいさく)をねりたいところです。ほんとは人間と長考ポイントが少し違ひますが、面子多々、テンパイ遠過ぎ、可能な和了パタンのすべてが0點以下、七對子と通常手のかけもち、中國麻將での不靠系の役ねらひ、ベタオリなのに安全牌なし、てな感じで長考してしまふやうです。觀察しながら「そこまで考へるなー」てポイントをみつけたら改善してゆきます。
それでもテナリ君は成長してします。最近やうやくへんな落ち方をしなくなり、一分以上の長考も少なくなりました。が、まだ不安定なところがあるかもしれません。落ちたらごめんなさい。もし良ければ状況など報告下さると助かります。これからの展開ですが、バージョンアップを續ける意思はあります。なんとか人に見てもらへるやうなコードに直してゆきたいと思ひます。
テナリ君はデバグ用にいんちきの技術は少しもつてゐますが人間と對局する時は全く使ひません。つばめ返しで天和を繰り返すソフトなんて面白くないでせう。しません。
■ 5. 再配布條件等
テナリ君パッケージに同梱される千田俊太郎の著作物については GPL (GNUGeneral Public License) に從つてください。その他の方の著作物はそれぞれ確認してください。ruby
script のみのパッケージなら他の方の著作物が含まれないので全體が GPL です。
■ 6. 謝辭
以下の方に感謝します。
□まつもと ゆきひろさん http://www.rubyist.net/~matz/
ruby 作者
□大林一平さん http://www.kmc.gr.jp/~ohai/rubysdl.html
ruby/sdl 作者
□Yuya Kato さん http://exerb.sourceforge.jp/
exerb 作者
□まつセンパイ http://www4.cty-net.ne.jp/~l6000all/
高品質な牌畫を作成し、とてもゆるい使用條件で公開してくださいました。テナリ君の gui インターフェースに必須の畫像です。
□みかちゃん http://mikachan.sourceforge.jp/dl.html
可愛いフォントを作成し、とてもゆるい使用條件で公開してくださいました。テナリ君の性格にぴつたりな表示ができます。
□kumaryu さん http://www.kumaryu.net/?(Ruby)+Ruby%2FSDL%CD%D1ruby
rsdl 作者
□Markus F.X.J. Oberhumer, Laszlo Molnar & John F. Reiser
http://upx.sourceforge.net/
upx 作者
□浅見了さん http://www9.plala.or.jp/majan/
純麻雀を始め、各種ルール詳細について御教示くださいました。また提案やソフトの動きについての報告もくださり、テナリ君の改善につながりました。今後ともアドバイザーとして頼つてゆきたく思つてをります。
□カワモター、淺野1Dの面子、京大L3の面子、歴研の面子、京大言語學研究室の面子、東大言語學研究室の面子
|