社区
游戏开发
帖子详情
斗地主出牌算法
fang_jeffrey
2006-11-07 05:06:28
最近想用C写一个单机版的斗地主游戏,大部分工作都做完了,就差出牌的实现,算法越想越是复杂,头晕.不知道怎么开始写这个算法,有没有高手能交流指教一下.十分感激
...全文
1324
8
打赏
收藏
斗地主出牌算法
最近想用C写一个单机版的斗地主游戏,大部分工作都做完了,就差出牌的实现,算法越想越是复杂,头晕.不知道怎么开始写这个算法,有没有高手能交流指教一下.十分感激
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
CW_Wei
2006-11-13
打赏
举报
回复
本人有该算法
要的话联系qq: 269221745
fang_jeffrey
2006-11-10
打赏
举报
回复
难道没有行家来交流一下吗??我看网上也有不少人自己做了单机斗地主,这里的程序员
应该也有这方面的行家吧!!
帮忙顶一下.
fang_jeffrey
2006-11-08
打赏
举报
回复
感谢ych1(被迫学编程) 的思路给了我一些启发.但是很多情况下不能只考虑出牌后剩下牌的多少.
例如:手上有13张牌44,55,6,6,7,7,8,9,9,9,10,11
虽然打出4,5,6,7,8,9,10,11会剩下最少的张数,但是剩下的牌都很小,明显不行.
请问还有哪位能提一些建议,或是有其它算法的吗??
fang_jeffrey
2006-11-08
打赏
举报
回复
这样好像会存在不少问题:
1.做为地主,还是做为地主上家,或是下家,打法是不一样的.
2.像你这么说的话似乎组合太多了,就17张牌而论,光是考虑单双组合都太多.
3.这样的打法不存在拆牌分析的技能.
4.不能对现在的局势进行判断,光是对手上的牌进行分析似乎是个弱智能.
我原来想用加权算法的.
有四个规则:
1.就是每种牌型加一个权,然后乘以每种牌型被剩下的牌压住的机率来算出
总权,牌的总权是较大的出牌顺序为考虑的出法.
2.做为地主一家,应该以手上哪一种牌型弱就先发哪种牌,到了只剩一两个弱牌的时候以强牌先出
(问题在于如何分发权,用来判断手上的牌哪种牌型是弱是强,而且还有三带一带二,飞机带翅膀这些干扰牌型)
3.不做地主.地主下家应该主攻,地主上家主守,但是要是分析局势知道自己的牌为强牌的话也要以攻为主.在守地主的时候,地主上家什么时候要拆牌吃,要根据已出的牌来判断地主不要什么牌,
友家要什么牌不知道怎么判断.(不赞成电脑一直知道其它玩家的牌来出牌).
4.只剩较少牌的打法应该有一定的优先权.(加多少权好呢?)
综合以上的几点想法,问题主要在于如何加权,使得各种规则组合起来.
ych1
2006-11-07
打赏
举报
回复
没做过,说点自己的看法。首先出完牌的一家为赢家。那么可以将手中的牌按不同出牌组合整理,得到一个优先级别的列表。比如,有 1,2,2,3,4,5,5张牌,按牌型可以分为不同的出牌顺序,A,先出12345,在出2,5。B,先出,22,再55,再1,3。。。
那么根据牌型的组合,就能够得到不同的出牌顺序,顺子是最快的,一张一张散牌是最慢的。因为对手的牌不可遇见,所以当对手出牌后,可以先判断能否大过他,如果不能,则PASS,如果可以大过他,那么判断当前的出完牌的速度和大他之后出完牌的速度,如果前者大于后者,则可以考虑PASS。
我觉得就跟平时人们玩一样,总是判断如何能够最快出完,电脑的化就是模拟很多不同的组合从中找出最好的方案。。。
fang_jeffrey
2006-11-07
打赏
举报
回复
mlxsj1001 :大哥,我给分你给钱,那谁还谁还有兴趣回答我的问题啊!~
别抢眼球啊!~ 我正着急呢~想了好久也没什么头绪.继续我的问题:
本人正在用C写斗地主程序,不知道出牌算法也就是AI部分怎么写,有高手能给个思路的吗>?
本人万分感激.
seething
2006-11-07
打赏
举报
回复
支持,出回来了帮你test!
嘎嘎!
mlxsj1001
2006-11-07
打赏
举报
回复
哪位朋友可以做棋牌游戏大厅可以加我,我给钱的,QQ35219201
说明你是干什么的
斗地主
出牌
算法
(java版)
本
算法
采用Java语言编写,是网页FLASH版
斗地主
客户端的核心程序!
斗地主
出牌
算法
(as版)
本
算法
采用ActionScript3.0动态脚本语言编写,是网页FLASH版
斗地主
客户端的核心程序!
斗地主
出牌
算法
(cs版)
本
算法
采用C#(C Sharp)语言编写,是网页FLASH版
斗地主
客户端的核心程序!
斗地主
出牌
大小判断
算法
(无AI
出牌
功能)
用遍历的思想实现的
算法
,只实现了判断
出牌
是否符合规则,没有实现电脑的AI智能
出牌
(试过用hash队列实现,但颇有点复杂,写不下去了),再有也没有做全面的测试,希望有兴趣的朋友们如果测出了其中的bug请务必通知本人,先谢过了。第一 次传东西,请大家多支持 :))
Lua脚本的
斗地主
的提示
出牌
算法
。
Lua脚本的
斗地主
的提示
出牌
算法
。 包括: 查找某牌型的
算法
:查找所有的单牌,查找所有的对子,查找所有的三条,查找所有的单顺,双顺,飞机,飞机带单,飞机带双。 排序
算法
。 转成花色,转成点数, 比较
算法
等。
游戏开发
8,304
社区成员
23,682
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章