从AI的角度来分析斗地主设计

来源:互联网 发布:网络预警包括哪些 编辑:程序博客网 时间:2024/04/30 11:16

<1>排序牌。

排序规则根据不同情况有2种:

第1种是根据牌值的大小

第2种是根据牌的多少


<2>玩家牌型的判断.(玩家是由自己控制,只需要出牌时判断一下是否符合规则即可)
1-4张时:

A,当牌数量是1到4张时,只能是单子、对子、三不带、普通炸弹、三带一、双鬼

大于等于5张时:
A,连对
B,连牌
C,飞机(包括三不带、三带一、三带二、四带单、四带双 等等)


<3>NPC拆牌。(NPC出牌时,那就涉及AI了,因为必须要将NPC的牌拆开,拆成合适的牌来出)

思路:将NPc所有能出的牌型都放在一个数组容器m_vecPx中了,因此出牌的时候,会从中
   找相应的牌型来应对即可。
   1,提取一下飞机、连对、连牌(注意,虽然一种牌组成了这个牌型就不能组成下一个牌型 ,但是牌型数组中保存了这张牌组成的各个牌型)
   2,像炸弹了什么的牌型。可以根据相同数值牌的个数来判断即可。


<4>NPC出牌.

主动出牌:

当然AI不能设计的太垃圾,那么比如你有牌:3,4,5,6,7,7 你主动出的应该是:3,4,5,6,7 而不是3,这样就需要一个规则来拆牌,那就是权值和手数.根据这2个来拆出合理的牌.


被动出牌:

被动出牌较为简单,根据上家牌来出出来比它大的牌或者叫过就行了.



0 0
原创粉丝点击