投稿
Taker32X. Takeshi-Matsuda
プチコンってかつてのBASICと結構違っているところがあったから、mk2を使っていた頃は思った通りのプログラムを書けなかった。LINE (X,Y)-(X2,Y2)の文法で動作しなかったから、説明書と1時間にらめっこして、やっと見つけたことがあったな。今はmk2にだいぶ慣れたから特に問題なく使えるけど、3号にはなかなか慣れられず、mk2でプログラムを作っている。1年以上前からmk2で麻雀を作っているが、コンピュータの思考回路の作り方がわからないので、コンピュータは強制ツモ切りの状態。詳しい方、どのように思考回路を作るのかお願いします。
2そうだね
プレイ済み
返信[1]
親投稿
れい rei-nntnd
自分が麻雀打つ時に考えてるのをそのままアルゴリズムにすればいいのでは。 っていうのはウソで。 正直言って、麻雀の思考ルーチンはきつい。かなりつらくて弱くて面白くない。 この局は流しちゃえとかそういう判断まで考えると手が付けられない。 逆にいうと、それだけ高度で人間的なゲームということなんだけど。 ゲームとして成立させるだけならCOMにイカサマさせるのが楽。(ツミコミ的な 本気でやるならパターンマッチ+定石の大量打ち込みで多少強いのできる。それで「普通に麻雀できる人間」には及ばないくらい。
2そうだね
プレイ済み
返信[2]
親投稿
smile5884 smile5884
スマイルブーム小林です。 プチコン3号からは再帰呼び出しが付いたので、試しに麻雀の牌分析処理を書いてみました。※発売前に書いたのでどこかに紛失中・・ いくつか麻雀ゲームを作ったことがありますが、思考処理の前にどのような組み合わせが存在するのかを調査する必要がありますので、牌の情報から組合せと待ちを分析する処理を作ります。(牌の種類ごとに分析します) DEF BUNSEKI( 牌配列, 階層レベル ) 1) 刻子を抜いた配列でBUNSEKIを呼ぶ 2) 順子を抜いた配列でBUNSEKIを呼ぶ 3) 残りで待ちを分析する 4) 分析した組合せと待ちを別の配列に記録 END こんな感じの処理で、組合せと待ちの分析を行い、その結果から不要な牌が見えてくるので、その他の環境要素(捨て牌、鳴き牌、ドラ牌)を調べて残したい牌への点数付けを行います。 全部の組み合わせに真面目に点数付けすると無限に時間がかかるので、適当な組み合わせをチョイスして使います(この部分で癖を出せます、染まってる組合せが好きとか、タンヤオ系が好きなど・・) で、最終的に一番要らない牌を捨てるのが思考処理となります。 前に作った処理が見つかったら再帰処理の参考にもなるかもしれないので何らかの形で公開しますね。
9そうだね
プレイ済み
返信[3]
親投稿
れい rei-nntnd
公式が麻雀思考ルーチンか… スマイルブーム大丈夫なのか
5そうだね
プレイ済み
返信[4]
親投稿
ようすけ youslzh
> 染まってる組合せが好きとか、タンヤオ系が好きなど・・ ゲーセンの麻雀ゲームでプロCPUに「好きな役」が設定されているのは闇雲に手近な役をじゃなく、単なるプロフィールって言う訳じゃなく、その好きな役になるような点数付けをしているんですね。なるほど面白い^^ 麻雀は難易度高そうなのでポーカーのプログラムを先に考えてみるのが近道かなと思いました。
1そうだね
プレイ済み
返信[5]
親投稿
Taker32X. Takeshi-Matsuda
皆さんコメントありがとうございます。まさか社長さんからコメントが来るとは思ってもいませんでした。皆さんのコメントを参考にして作っていきます。とりあえず、CPUに癖を出す辺りをやろうと思います。
2そうだね
プレイ済み