Mahjong是亚洲最受欢迎的游戏之一(不是Windows 7中的纸牌游戏风格)。那里有很多麻将游戏,包括雅虎的在线游戏或DOS时代的离线游戏!
就在另一天,我在想,我怎么能写一个(不包括GUI)?
数据建模部分很简单。
获胜和评分规则是......模式匹配?
游戏的战略部分,例如确定扔出哪个牌以及何时进行Chow或Pong移动是最困难的部分。如何实现这个?
谢谢!
研究:
答案 0 :(得分:1)
阅读本文
http://homepage.mac.com/s_lott/books/python/html/p05/p05c05_mahjongg.html
这可能会有所帮助。
“确定扔出哪个牌子”实际上非常简单。鉴于丢弃和手的性质,定义“准备好”的手是确定哪些潜在的集合具有最多可用(非丢弃,非在场)的图块。
每个瓷砖属于几种可能的模式中的一种(一对,最多3个chow,pung,kong)。计算填充图案所需的图块很容易。根据播放的内容和曝光内容,可以轻松减少可能的平铺数量。可以对得到的可能模式进行排名。丢弃物是从最难填充的组合中挑选出来的。
[见http://www.amazon.com/Mah-Jong-Handbook-Play-Score/dp/0804838747]