
CPU(コンピューター)2人と対戦できる、ブラウザ版の三人麻雀ゲームを作りました。
普通に遊べるゲームを作るのも目的ですが、今回はもう一つ気になっていたことがあります。
ゲームを作る側なら、最初の配牌や次にツモる牌を変えることはできるのか? そして、ツモる牌を変えたら、その変化はハッシュ値にも出るのか?
実際に動くゲームを作って試してみました。
このゲームは、仕組みを試すために作った試作版です。
CPUの打ち方や点数計算、役判定、鳴きなどには、まだ間違いや不具合が残っている可能性があります。正式な麻雀ゲームと同じ正確さを保証するものではありません。
試してみたかった4つのこと

うさちゃんが、三人麻雀ゲームを作ってみたようです。

普通に遊べるゲームも作ってみたかったんだけどね、実は、神様(?)のような「配牌やツモを自由に変えて、気分よくアガれるか?」っていうのがやりたくてね😅
そしたら、次は「もし、配牌やツモをその都度変えたら何か記録に残るの?」っていう点も気になってしまって、それを試してみたかったの~。
つまりね、ゲーム制作者がどれくらい麻雀の内容をイジれるかっていうのを、このゲームを通して確認したかったんだ😊
難しく考えず、今回やってみたかったことをまとめると次の4つです。
- 自分で作ったCPUは、どのくらい普通に麻雀を打てるのか
- 途中でツモる牌を入れ替えたら、ハッシュ値も変わるのか
- 最初の配牌を、わざと良い形にすることはできるのか
- 次にツモる牌を、別の牌に入れ替えることはできるのか
違いがすぐ分かるように、「通常」「役満モード」「神ツモ」の3種類を用意しました。
普通に配る場合、最初から配牌を変えた場合、途中でツモる牌を変えた場合を、実際に遊びながら比べられます。
1.一般的な麻雀ゲーム
まず作ったのが「通常モード」です。
自分1人とCPU2人で東風戦を行います。最初に牌を配ったあとは、山に並んでいる順番どおりにツモります。CPUも自分の手牌を見ながら牌を切り、リーチや鳴きも行います。
ここで知りたかったのは、特別な麻雀AIを使わなくても、自分でゲームのルールやCPUの打ち方を作れば、どこまで普通の対局らしくできるのかということです。
もちろん、CPUはまだ完成版ではありません。
牌の選び方や役の判断、押す・降りる判断、鳴き、点数計算などは、まだ直せるところや間違いがあると思います。
通常モードは「すごく強いCPUと戦うモード」ではありません。まず普通の三人麻雀として遊べる形を作り、役満モードや神ツモモードと比べるための土台にしています。
2.ツモる牌を変えたら?
次に気になったのが、本来ツモるはずだった牌を別の牌に入れ替えたら、ハッシュ値も変わるのかということです。
このゲームでは、最初に「これからツモる牌がどんな順番で並んでいるか」を記録しています。その並びを文字にしたものが「牌山コード」で、その情報を使ってSHA-256のハッシュ値も表示しています。
難しく考えず、ハッシュ値は「最初に記録した山と同じかを見るためのチェック用の値」くらいに考えてください。
たとえば、次にツモるはずだった牌を、山の途中にある別の牌と入れ替えます。すると、最初に記録した山の並びとは違う状態になります。
では、そのときハッシュ値も変わるのか?
実際に神ツモモードで牌を入れ替えると、牌山コードが変わり、ハッシュ値もゲーム開始時とは違う値になりました。
つまりこのゲームでは、ツモる牌を入れ替えて山の並びを変えると、「最初のままではない」ことがハッシュ値の違いとして出ることが分かりました。
ここで分かるのは、あくまでこの自作ゲームで、最初に記録した山から変化があったかということです。ハッシュ値を見ただけで、他の麻雀ゲームに牌操作や不正があると判断できるわけではありません。
3.最良配牌は可能?
次は、最初に配られる牌そのものを変えられるのかを試しました。それが「役満モード」です。
普通の麻雀では、牌を混ぜて作った山から順番に配牌します。
でも自分でゲームを作る場合は、ゲームの中で「最初にこの牌を配る」という仕組みを入れることもできます。
そこで役満モードでは、普通に配るのではなく、最初から役満を狙いやすい手牌になるように配牌しています。
つまり、
「ゲームを作る側が仕組みを入れれば、最初の配牌を意図的に変えられるのか?」
を試すためのモードです。
実際に役満モードを選ぶと、通常モードとは違い、役満を狙いやすい手牌から対局が始まります。
最初の配牌だけを変えて、そのあとは基本的に通常モードと同じです。山に並んでいる順番どおりにツモを進めます。
今回はこの仕組みを隠さず、「役満モード」と名前を付けて見えるようにしています。最初の配牌は、ゲームを作る側の仕組み次第で変えられることを分かりやすく見るためです。
4.ツモる牌の入れ替え
最後は、最初の配牌ではなく、対局の途中で次にツモる牌を変えられるのかを試しました。それが「神ツモモード」です。
神ツモモードでは、自分のツモ番が来る直前に山の中を見て、今の手牌にとって良さそうな牌を探します。
もしアガリ牌が山に残っていれば、その牌を優先します。アガリ牌がない場合でも、できるだけアガリに近づきやすい牌を選んで、次にツモる位置へ入れ替えます。
やっていることを簡単に言うと、
「本来ツモるはずだった牌を、途中で別の牌に入れ替えられるのか?」
ということです。
神ツモモードは普通の麻雀ではありません。「途中でツモる牌を変えたらどうなるか」を見るために、わざと山の牌を入れ替えるモードです。
神ツモモードでは、本当に山の中の牌を入れ替えています。
そのため、ゲーム開始時の牌山コードと、牌を入れ替えたあとの牌山コードは同じではありません。
ハッシュ値も変わり、ゲーム開始時とは違う値になります。
さらに、どの牌をどこから動かしたのかも「牌操作履歴」で見られるようにしています。ハッシュ値だけでなく、実際に何を入れ替えたのかも確認できます。
神ツモモードで分かるのは2つです。
① 次にツモる牌を途中で入れ替えられること
② 入れ替えると、牌山コードやハッシュ値にも違いが出ること
実際の動きと記録の変化を一緒に見られるようにしています。
3つのモードの三人麻雀
通常モード
まず普通に三人麻雀を遊ぶモードです。ほかの2モードと比べるための基本になります。
役満モード
最初から役満を狙いやすい配牌にして始めるモードです。
神ツモモード
対局の途中で、次にツモる牌を良い牌へ入れ替えるモードです。

広大な世界を舞台に、どこに行くのも、何をするのも、冒険のすべてがあなた次第です。野生動物を狩って過ごすのか? 魔物を退治しに行くのか? 絶景ポイントを見て回るのか? 走る、泳ぐ、飛ぶ、登る、どこまでも広がる世界で思いのままに冒険をお楽しみいただけます。Nintendo Switchなら、自宅のテレビでじっくりプレイした続きを外出中に楽しむなど、プレイスタイルも自由自在です。
【ストーリー】大厄災と呼ばれる災害が起こり、ハイラル王国は滅亡した……。それから100年後。主人公リンクは地下遺跡で永い眠りから目覚め、不思議な声に導かれて大地へと踏み出す。
CPUの手牌も見られる
このゲームは、普通に対局するだけでなく、普段の麻雀ゲームでは見えない部分も表示できます。
通常モードと神ツモモードを比べると、牌を入れ替えていないときと、実際に入れ替えたときで何が変わるのかを画面で見比べられます。
ゲームの遊び方
- 「通常」「神ツモ」「役満モード」から遊びたいモードを選びます。
- 必要に応じて、CPU手牌の表示・非表示を選びます。
- 「ゲーム開始」を押すと、配牌されて対局が始まります。
- 切りたい牌を選び、「この牌を切る」を押します。
- リーチ・ロン・ポン・カンなどが可能な場面では、表示されたボタンから操作します。
- 山の並びやハッシュ値を見たい場合は、対局画面の検証情報を開きます。
スマートフォンでは縦持ちを基準に、手牌の選択と打牌操作がしやすい配置にしています。牌をタップしただけでは捨てられず、選択後に「この牌を切る」を押して確定する方式です。
麻雀ゲームはここから遊んでね
普通に遊ぶなら通常モードでOKです。今回の記事の内容を確かめたい場合は、通常・役満・神ツモの3つを切り替えて比べると違いが分かりやすいです。
特に神ツモモードでは、本当にツモる牌を入れ替えています。通常モードと比べると、牌山コードやハッシュ値が変わり、牌操作履歴にも入れ替えた記録が残るのを見られます。
三人麻雀ゲーム
CPU2体と対戦する東風戦です。牌を選び、確認してから打牌します。
対局設定 モード・CPU表示・ゲーム開始
検証・デバッグ情報
通常プレイでは使用しない、牌山・SHA256・入替履歴の確認機能です。
よくある質問
- Qこのゲームは普通の三人麻雀としても遊べますか?
- A
遊べます。「通常モード」を選べば、自分1人とCPU2人で東風戦ができます。ただし試作版なので、CPUの打ち方や役判定、点数計算などに間違いが残っている可能性があります。
- QCPUの手牌や山牌は見られますか?
- A
見られます。対局設定でCPU手牌を表示できるほか、「山牌をみる」から山牌や王牌の状態も確認できます。通常の対局画面として遊びたい場合は、CPU手牌を非表示にしてください。
- Q役満モードって?
- A
最初から役満を狙いやすい手牌になるように配って始めるモードです。「ゲームを作る側なら、最初の配牌を変えることもできる」ということを分かりやすく見るために用意しました。
- Q神ツモモードって?
- A
自分のツモ番の直前に山の中を見て、手牌にとって良さそうな牌を次にツモる位置へ入れ替えています。どの牌を動かしたかは「牌操作履歴」で見られます。
- Q神ツモではハッシュ値が変わる?
- A
神ツモでは本当に牌を入れ替えて山の並びを変えているため、牌山コードも変わります。その結果、ゲーム開始時のハッシュ値とは違う値になります。
- Qハッシュ値があれば外部の麻雀ゲームの牌操作も判定できますか?
- A
できません。今回分かるのは、あくまでこの自作ゲームの中で「最初に記録した山を変えたら、牌山コードやハッシュ値も変わった」ということです。他の麻雀ゲームの不正や牌操作を判定するものではありません。
- Qスマートフォンでも使えますか?
- A
使えます。スマートフォンの縦持ちに合わせた画面で、手牌選択や打牌などの操作ができます。端末やブラウザによって表示に多少の違いが出る場合があります。
まとめ|配牌もツモも、ゲームを作る側の仕組みで変えられた
今回の三人麻雀ゲームでは、普通にCPUと遊べるゲームを作るだけでなく、麻雀ゲーム制作者側が、配牌やツモをどこまで変えられるのかも試しました。
その結果、自分でゲームを作っている以上、そういう仕組みを入れれば、最初の配牌を偏らせることも、途中で次にツモる牌を入れ替えることもできると分かりました。
違いが分かるように、今回は次の3つに分けています。
- 通常モード:普通にCPUと麻雀する
- 役満モード:最初から役満を狙いやすい配牌にする
- 神ツモモード:途中で次にツモる牌を良い牌へ入れ替える
同じゲームの中で切り替えられるので、それぞれの違いをそのまま見比べられます。
また、牌山コードやハッシュ値、牌操作履歴も表示しています。神ツモで牌を入れ替えると、ハッシュ値がゲーム開始時とは違う値になり、操作履歴にも入れ替えた記録が残ります。
まず通常モードで遊んでから役満モード、神ツモモードを試すと、「最初の配牌を変える場合」と「途中でツモる牌を変える場合」の違いが分かりやすいと思います。
この記事とゲームは、自分で麻雀ゲームを作った場合に、どんな仕組みを入れられるのかを見るためのものです。特定のオンライン麻雀ゲームやサービスで、同じような牌操作が行われていることを示すものではありません。
本ゲームは仕組みを試すための試作版です。CPUの打ち方、点数計算、役判定などに間違いが残っている可能性があります。
免責事項
本記事のサンプルプログラムは、学習・参考用として掲載しているもので、動作や結果を保証するものではありません。 利用する場合は、ご自身の環境に合わせて確認しながらお使いください。万が一トラブルや損害が発生した場合でも、当サイトでは責任を負いかねます。



![[バンダイ(BANDAI)] Tamagotchi Paradise - Purple Sky 対象年齢 6才以上 たまごっちパラダイス](https://m.media-amazon.com/images/I/415T7G6aEJL._SL160_.jpg)
※本文中に記載の会社名・製品名・サービス名・ゲームタイトル名等は、各社の商標または登録商標であり、権利は各社に帰属します。
※サンプルはテストを行っていますが、すべての環境での動作を保証するものではありません。ご利用は自己責任でお願いいたします。
※本記事の仕様・価格・対応状況等は執筆時点で確認できた情報をもとに掲載しています。最新の情報はメーカー公式サイトをご確認ください。
※当サイトでは一部の記事において、アイキャッチ画像にAI生成を使用しています。
※Amazonのアソシエイトとして、うさねこ散歩は適格販売により収入を得ています。