这是一套完整的直播互动游戏 API 服务端源码,内置四款实时多人在线游戏:Monkey Wheel、Wheel Half、Teen Patti、Lucky 77。后端采用 Go 语言开发,基于 WebSocket + JSON-RPC 协议实现客户端与服务端的实时双向通信,已对接 Cocos Creator 前端,可直接部署运营。四款游戏独立部署、独立端口、独立数据库,由 Nginx 统一域名入口按参数自动路由到对应后端,并配套完整的运营管理后台 API。
四款游戏介绍
- Monkey Wheel(猴子转盘):10 格转盘,玩家选格下注,转盘旋转开奖,命中按赔率结算,支持多档筹码、实时下注广播与历史开奖记录。
- Wheel Half(半轮转盘):8 格转盘变体,玩法类似 Monkey Wheel,但格子更少、节奏更快,适合短平快的直播互动场景。
- Teen Patti(三张牌):三区对比型卡牌,每轮发三手牌,玩家押注哪一区的牌最大,牌型含三条、同花顺、顺子、同花、对子、高牌六种,按赢家牌型决定赔率。
- Lucky 77(幸运77转盘):三区转盘,下注区为 Lemon、Seven、Xigua,10 个物理停点中 Lemon 占 5 格、Xigua 占 4 格、Seven 占 1 格,Seven 命中赔率最高达 x8。
技术架构
- 开发语言:Go 1.21
- HTTP 框架:Gin
- WebSocket:Gorilla WebSocket
- ORM:GORM
- 数据库:SQLite(零依赖嵌入式,单文件存储)
- 认证:JWT
- 配置:YAML + 数据库热加载
系统架构
客户端(Cocos) → WebSocket → Nginx(gameId路由) → 游戏服务端(Go)
│
┌─────────────────┼─────────────────┐
▼ ▼ ▼
WS Hub层 Game Room层 Admin API层
连接管理/分发 状态机/开奖/结算 配置/统计/风控
└─────────────────┼─────────────────┘
▼
SQLite (GORM)
四服务独立部署
| 游戏 | 端口 | gameId 参数 |
|---|---|---|
| Monkey Wheel | 8080 | monkey_wheel |
| Wheel Half | 8081 | wheel_half |
| Teen Patti | 8082 | in_teen_patti_half |
| Lucky 77 | 8083 | luck77_2_half |
核心功能
游戏引擎
- 状态机驱动游戏循环(开始 → 下注 → 结算 → 循环)
- 加权随机开奖算法,权重后台可配
- 管理员可强制指定结果(运营控制)
- 按玩家独立推送结算,每人只看到自己的输赢与余额
- 转盘精确停点控制(showArea 驱动客户端动画)
WebSocket 实时通信
- JSON-RPC 格式请求响应
- Bean 路由分发(游戏 Bean + 公共 Bean + 心跳 Bean)
- 全房间广播(下注动态、排行榜)与单播推送(按玩家结算)
- 断线检测与心跳保活
管理后台
- 赔率配置:每个下注区域独立赔率
- 权重配置:开奖概率权重
- 时间与筹码配置:各阶段时长、面额数组、最大最小限制
- RTP 统计:实时计算实际返奖率
- 强制结果:指定接下来 N 局开奖
- 商户管理与数据查询:开奖、下注、回调日志全记录
配置热加载
- 运营参数存于数据库 Setting 表
- 后台修改后原子替换内存配置,下一局自动生效、无需重启
- 赔率、权重、时间、筹码、停点全部可热改
商户对接
- 玩家连接时回调商户获取余额
- 结算完成后通知商户扣款/加款
- MD5 签名验证,回调日志全记录
适用场景
- 直播平台互动游戏
- API 游戏聚合平台对接
- 在线娱乐博弈系统
- 社交 App 内嵌小游戏
- 游戏平台快速上线新品
合规使用提示
涉及下注与博弈的功能在不同国家和地区监管要求差异较大。部署和运营前,请确认目标市场的法律法规与合规要求,在合法授权范围内使用本源码,并自行承担相应的合规与经营责任。
测试截图:
常见问题
Q:这套源码的技术栈是什么?
后端 Go 1.21 + Gin + Gorilla WebSocket + GORM,数据库采用零依赖的 SQLite,认证用 JWT,配置支持 YAML 加数据库热加载;前端已对接 Cocos Creator。
Q:包含哪几款游戏?
包含 Monkey Wheel(猴子转盘)、Wheel Half(半轮转盘)、Teen Patti(三张牌)、Lucky 77(幸运77转盘)四款实时多人在线游戏,均已可运营。
Q:四款游戏是怎么部署的?
每款独立部署、独立端口、独立数据库(8080-8083),通过 Nginx 统一域名入口按 gameId 参数自动路由到对应后端,互不影响。
Q:后台能配置哪些运营参数?
可配置赔率、权重、各阶段时长、筹码面额与限额,支持 RTP 实时统计、强制指定结果、商户对接等。参数热加载,修改后下一局自动生效、无需重启。
Q:怎么和商户系统对接?
玩家连接时回调商户获取余额,结算后通知商户扣款或加款,采用 MD5 签名验证,回调日志全程记录。




