这是一套完整的直播互动游戏 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 签名验证,回调日志全程记录。