推饼游戏功能说明
1.术语说明
a)玩家:可以参与游戏的注册用户,玩家可以有一个或者零个上家;
b)管理员:管理玩家的金币和玩家的游戏状态,不可以参与游戏;
c)超级管理员:具有管理员的所有权限,还可以管理管理员,不可参与游戏;
d)金币:游戏中的虚拟资产,作为用户的游戏资本(单位:元,支持两位小数);
e)充值:增加用户的账户的金币(金额仅支持整数);
f)提现:减少用户的账户的金币(金额仅支持整数);
g)玩家账户:玩家的金币存储,可以为负;
h)A账户:存储收取玩家的折扣费用;
i)对战:一次发牌为一次对战;
j)对局:一轮对战(四或五次对战,最少四次)为一个对局;
k)注码:一个对局中,玩家从账户中扣除的金币;
l)游戏桌:玩家进行对局的场所;
m)游戏房间:摆放游戏桌的场所;
2.功能需求
2.1.概述
该系统分为两个重要组成部分:管理模块、游戏模块。管理模块是对玩家,账户等进行管理;游戏模块就是玩家进行游戏的地方。
2.1.2.管理模块
该模块只有管理员和超级管理员可以登录,管理玩家的信息和玩家的金币,查看玩家信息,管理游戏房间和座位;
l玩家管理:新增玩家,停用玩家,删除玩家,为玩家充值和提现,查看玩家的信息以及游戏记录,生成邀请二维码(邀请下级玩家);
l管理员管理:新增管理员,停用管理员,查看管理员的操作记录;
l对战历史:查看所有对战的历史(包括对战时间,参与人,结果),撤销对战(对该对战进行撤销,所有的金额冲正);
l游戏管理:查看所有正在对战的游戏桌信息,查看所有玩家的牌,控制某个玩家下一个对战的手牌;
l游戏房间设置:分为五个房间(普通场,初级场,中级场,高级场,至尊场),设置每个房间的游戏桌数量,每个房间的最低押注,以及对每个游戏桌进行的单独设置(比如密码,最低押注);
2.1.2游戏模块
所有登陆的玩家可以进行游戏,选择根据玩家的金币进入不同的房间。
游戏规则:
l游戏牌:麻将里面的1-9饼每种四个(代表1-9点)计36张+4个白板(白板没有点数,可以配任何牌组成对子)=40张牌;
l玩家:最少四个人(庄家,对家,下家,上家),其他的玩家为钓鱼,钓鱼最多为八个;
l庄家:负责赔付和收取金币的玩家;
l玩法:抓牌之前,四家(庄家,对家,下家,上家)首先压钱,然后用筛子决定谁先抓牌,每个人连着抓两张牌,抓过牌之后,当庄的与其他三个庄家比牌的大小,其标准为:两张牌一样的,大于两张牌不一样的,也就是说,两个九最大,而两张牌不一样时,把两张牌加起来然后减去十就是最后的大小,九最大,零最小。和庄家大小一样的,庄家赢;
l对战:对局开始,四家先下注,然后摇色子决定发牌顺序,顺时针每人发两张,然后开牌比大小;
l开牌:有两种开牌方式。第一种OneOne,庄家按照发牌的顺序一个一个的开牌比大小,比一个结算一个,如果庄家的注码用完了,可以选择下庄,也可以继续下注,如果下庄,如果继续下注,接着开下一个玩家的牌,下局对战仍然可以坐庄,如果下庄本次对战结束,继续下次对战;第二种ShowAll,庄家直接明牌,按照发牌顺序进行结算;
l对局:每个对局总共40张牌,分为五个对战;第一个对战,下注最多的人为庄家,其他顺时针依次为下家,对家,下家;之后的对战如果庄家在本局中赢钱,不能下庄;如果赔了可以选择下庄也许可不下;如果下庄,顺时针让庄,如果其他三人都不愿意坐庄,庄家需要坐庄,打完本局;
l结算:
- 对家,下家,上家,鸽子:每次对战结束进行一次结算,将玩家的剩余的注码添加到玩家的账户;
- 庄家:对局结束或者庄家下庄时进行结算,如果结算时庄家赢,则扣10%的纯盈利到A账户,剩余的返回玩家账户;
3.性能需求
部署环境:
系统:Ubuntu14.04 64位2核处理器 内存4G带宽1Mbps
数据库:使用Mysql或者Oracle;
要求:
支持100个游戏桌满负荷运行;
对网络断线有一定的处理;
网友评论