5

麻雀はアジアで最も人気のあるゲームの1つです(Windows 7に見られるソリティアスタイルではありません)。YahooのオンラインゲームやDOS時代のオフラインゲームなど、麻雀ゲームはたくさんありました。

ちょうど別の日、私は自分自身に考えていました、どうすれば(GUIを除いて)それを書くことができますか?

データモデリングの部分は簡単です。

勝ちと得点のルールは...パターンマッチングですか?

どのタイルを捨てるか、いつチョウやポンを動かすかなど、ゲームの戦略的な部分は最も難しい部分です。これを実装する方法は?

ありがとう!

リサーチ:

4

1 に答える 1

1

これを読む

http://homepage.mac.com/s_lott/books/python/html/p05/p05c05_mahjongg.html

それは役立つかもしれません。

「どのタイルを捨てるかを決める」ことは、実際にはかなり簡単です。捨て札とハンドの性質を考えると、「レディ」ハンドを定義することは、どの潜在的なセットが最も利用可能な(捨てられていない、インプレーではない)タイルを持っているかを決定することです。

各タイルは、いくつかの可能なパターン(ペア、最大3つのチャウ、パン、コン)のいずれかに属します。パターンを塗りつぶすのに必要なタイルを計算するのは簡単です。何が再生され、何が公開されたかに基づいて、可能なタイルの数を簡単に減らすことができます。結果として得られる可能性のあるパターンをランク付けできます。廃棄は、最も埋めるのが難しい組み合わせから選択されます。

[このhttp://www.amazon.com/Mah-Jong-Handbook-Play-Score/dp/0804838747を参照してください]

于 2010-11-01T23:56:57.527 に答える