Erlang千万级用户游戏框架(Openpoker)源码文件分析清单

openpoker源码 erlang写的网游服务器源码,OpenPoker是一个大型多人扑克网游,内建支持了容错能力,负载平衡和无限制的规模大小。本文是openpoker源码文件功能的一个清单式说明:

模块名称模块功能说明备注
ante.erl仅仅是开始下注的处理,具体的逻辑在betting中 
barrier.erlbarrier本意屏障 
bb.erlBot launcher 
betting.erlPoker betting logic 下注逻辑处理 
bits.erl位处理相关操作 
blinds.erl处理小盲注,大盲注 
bot.erlAI,gen_server,用来测试,将来应该能够陪真人玩家来玩 
bot.hrl  
common.hrl  
counter.erl用于把各种计数器(自增、唯一ID)存入mnesia. 目前有3种: 玩家,游客,Game 
db.erl数据库操作 
deal_cards.erl发牌,其中的private与shared,代表公共牌还是私有牌。这已经是与具体玩法有关的了,而与框架无关。 
deck.erl台面,在其上洗牌 
delay.erl每一局游戏开始前的倒计时 
delayed_exit.erl游戏倒计时到正式开始前偷溜走的相关情况处理 
dmb.erl其中mb=multi bots,机器人。dmb指的是distributed multi bots 分布式 
dumbo.erl哑巴机器人 
exch.erl自定义behavior,也是一个gen_server,A stack of game modules:玩家&游客 
fixed_limit.erl自定义behavior,也是一个gen_server,A stack of game modules:玩家&游客 
g.erl  
game.erl每一局游戏,本质上是exch.erl。实现了开始,停止,自动计数,Watch the game without joining 
game.hrl游戏 
game_start.erl游戏直接开始 
game_wait_players.erl游戏等待其他玩家到齐后开始 
gateway.erl网关-负载均衡 
hand.erl用来计算牌型,例如:full housr 就是3带2. 
id.erl固定哈希函数的封装,用来产生进程ID与Key的唯一映射关系。目前没有被引用到。 
ircdb.dat.gz模拟玩家数据 
ircdb.erl模拟玩家数据 
ircdb.hrl  
lang.erl多语言处理入口,需要完善,目前只有英语 
limit.erl各种限制接口,各种limit限制判断主要在game.erl中调用 
login.erl登录 
mb.erl机器人,用于测试 
mbu.erl机器人,用于测试 
no_limit.erl一局游戏人数上下限 
observer.erl可以给机器人附加一个观察者职责,用来监视游戏活动状况的 
pickle.erl序列化 
player.erl玩家 
pot.erl貌似是奖池,也就是所有已下的赌注的集合。 
pot_limit.erl奖池中的加注、盲注限制 
pp.erl报文编码/解码 
pp.hrl  
restart.erlNO USE 
schema.erl初始化调度 
server.erl主服务进程 
showdown.erl摊牌  
stats.erl数据统计 
t.erldebug 
tcp_server.erl通用的tcp服务器程序,主要被gateway和server使用,另外也作为客户端连接用 
test.erl测试入口函数 
test.hrl  
texas.hrl游客相关处理机制,下同,可以暂时忽略 
tourney.erl  
tourney.hrl  
tourney_game_start.erl  
tourney_wait_players.erl  
tourney_wait_timer.erl  
util.erl提供3个公用函数: 1.判断进程死活;2.初始化“从”数据库;3. 返回一个随机的进程组成员进程。 
visitor.erl游客 

以上文件时对基于Erlang开发的分布式可扩展游戏框架openpoker源码文件清单的说明。主要是对文件和文件功能进行了说明,正在整理模块调度关系,持续更新中...

负载均衡网关节点工作原理示意图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据饕餮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值