一个适合朋友私下娱乐的实时积分制网页游戏合集。首页可选择德州扑克、看四张抢庄牛牛、炸金花或斗地主;无需注册,创建房间后复制链接即可邀请好友入座。
npm install
npm run dev打开 http://localhost:3000。分享链接给同一网络中好友时,需要把 localhost 换成这台电脑可被访问的地址;部署到公网后,邀请链接会自动使用线上域名。
- 游戏合集首页,可分别进入德州扑克、看四张抢庄牛牛、炸金花和斗地主
- 四种游戏使用独立房间链接和状态,不会互相影响
- 2–8 人私人房间与 6 位房间码
- 可配置起始积分、大小盲和人数上限
- 服务端洗牌、发牌和操作校验
- 翻牌前、翻牌、转牌、河牌与摊牌
- 弃牌、过牌、跟注、加注和全下
- 牌型判断、平分底池与边池结算
- 同一赢家的边池奖金合并展示,未被跟注的下注自动退回
- All-in 后公共牌按时间间隔逐张发出,并带翻牌动画
- 短码 All-in 不足一个完整加注时,只要求已行动玩家补齐差额,不重新开放加注
- 每位玩家实时查看自己的“底牌 + 公共牌”组合牌型
- 断线重连、房主移交、牌局动态和文字聊天
- 房主暂停/恢复牌局、调整盲注、修改玩家积分和剔除玩家
- 房主可开启结算展示 5 秒后自动开始下一手
- 玩家持续离座与“我回来了”状态(返桌后从下一手发牌)
- 默认 1000 积分,玩家首次入座前可自行填写入座积分
- 邀请链接采用两步入座:先查看 8 个座位并选择空位,再填写昵称和积分
- 已占座服务端锁定,断线重连保留原座位,剔除后座位自动释放
- 牌局进行中也可立即入座,当前手旁观并从下一手自动加入
- 默认 30 秒服务端行动倒计时,超时优先自动过牌,否则自动弃牌
- 加注支持滑杆和手动输入目标金额,按 Enter 可直接确认
- 邀请链接单击直接复制,并兼容 HTTP/微信浏览器的复制限制
- 弃牌玩家显示红色“已弃牌”标签,本手结束后自动公开所有参战底牌
- All-in 时立即公开争夺底池的玩家底牌,并随公共牌实时更新胜率
- 玩家聊天与系统牌局动态使用独立页签,互不刷屏
- 侧栏默认打开聊天页,发言会在玩家头像旁显示 6 秒临时气泡
- 每个客户端以自己为中心旋转牌桌视角,自己的座位始终显示在底部正前方
- 积分归零自动释放座位,可重新选座并累计显示同房间重坐次数
- 一副去掉大小王的 52 张牌,支持 2–6 人
- 每位玩家先看自己的 4 张牌,再选择不抢或 1–4 倍抢庄
- 四张牌按时间间隔逐张发出,第五张同样带翻牌动画
- 最高倍数定庄(同倍随机),闲家选择 1/2/3/5/10/15 倍下注
- 同倍最高抢庄时显示候选庄家跑马灯,最终结果由服务端随机确定
- 抢庄和下注各有默认 30 秒倒计时,超时自动选择最低倍数
- 积分达到底注即可选择任意抢庄/下注倍数;积分低于底注时释放座位
- 下注完成后发第 5 张牌,服务端自动拼牌、比牌和结算
- 支持无牛、牛一至牛牛、五花牛、炸弹牛、五小牛及对应倍率
- 同牌型按最大牌点数和黑桃/红桃/梅花/方片顺序比较,五小牛同牌庄家胜
- 单局输赢不超过带入积分;庄家资金不足或封顶时按理论输赢比例分配
- 复用选座、进行中入座下一局、聊天气泡、离座、房主管理、积分归零重坐
- 支持房主开启结算展示 5 秒后自动开始下一局
- 流式响应式桌面/H5 界面,支持小屏、大屏和手机横竖屏
- 2–5 人私人房间,开局统一支付底注并随机坐庄
- 从庄家开始逆时针发三张暗牌,庄家下家首先行动
- 随时看牌、暗牌/明牌差异跟注、每轮一次加注、弃牌与第二轮起自由比牌
- 比牌支付双倍跟注费用,其他玩家看不到双方牌面,同牌主动比牌者负
- 最多 15 轮,达到上限后从庄家下家开始依次强制比牌
- 豹子、顺金、金花、顺子、对子与散牌完整比较,支持 A23 最小顺子及非同花 235 反杀豹子
- 服务端行动倒计时、断线自动弃牌、积分守恒和暗牌隔离
- 复用选座、聊天气泡、离座、房主管理、自动下一局与手机响应式界面
- 经典三人房间,54 张牌,每人 17 张并保留 3 张底牌
- 随机首叫,支持不叫与 1/2/3 分竞叫,三家不叫自动重新发牌
- 地主获得并公开三张底牌,地主先出,农民协作对抗地主
- 支持单张、对子、三带、顺子、连对、飞机、四带二、炸弹和王炸
- 服务端校验牌型与压制关系,连续两家不出后自动回到领出玩家
- 炸弹与王炸令结算倍数翻倍,地主/农民阵营积分守恒结算
- 行动倒计时、断线重连、暗牌隔离、结算公开、聊天和房主管理
- 自动下一局、积分不足离桌及桌面/手机响应式界面
服务端只向每位玩家发送自己的底牌。其他玩家(包括房主)在本手进行中看不到未公开底牌;本手结算后会公开所有参战玩家(包括已弃牌玩家)的底牌。项目不包含隐藏看牌入口或房主作弊后门。
先启动服务,再在另一个终端运行:
npm run test:smoke
npm run test:niuniu
npm run test:zjh
npm run test:doudizhu
npm run test:regressions脚本会按游戏需要创建 2–3 个实时客户端并完整打完一局,检查底牌隔离、积分守恒、行动规则、断线重连和关键结算流程。