仿KG Slots平台H5棋牌源码架构拆解

金币源码2026-08-26478 阅读
约 2,747 字 · 大约 9 分钟

工程结构与技术栈

拿到源码解压后,第一感觉就是大——wwwroot目录下超过8万个文件。但仔细看会发现结构比较清晰,大致分成这几块:

模块

技术

说明

游戏服务端

PHP 7.2 + Workerman/GatewayWorker

4组独立服务,WebSocket长连接

63后台管理

ThinkAdmin (ThinkPHP 6.0)

端口8788,46个管理功能页

728后台管理

ThinkPHP 5.0

含游戏控制、代理管理

TP接口层

ThinkPHP 5.0 (四套)

tp_63/tp_728/tp_jili/tp_mjhl

玩家前端

Cocos Creator → H5

cocos2d-js引擎,支持热更新

控制端

Cocos Creator → H5

标题"PG总控制端"

数据库

MySQL 5.7

4个独立库:63、728、jili、lhj

Web服务

Nginx 1.26

CentOS 7.6-7.9

源码里附带了完整的SQL文件(4个库合计约71MB),搭建教程也是现成的。比较少见的是这套系统没有用Redis做缓存,所有游戏状态直接由Workerman的Worker进程在内存中维护。

KG 登录注册页KG 绑定送金弹窗KG 首页大厅Slots游戏

登录注册页(KG Slots品牌Logo、账号/游客双登录)/ 绑定手机送金80000弹窗 / 首页大厅Slots游戏列表

前端是标准的Cocos Creator H5构建产物,分三套客户端(63、728、jili)对应不同的游戏服务端。底部导航栏固定四个入口:主页、钱包、客服、我的。值得注意的是前端界面文案全中文,包括游戏名、按钮、提示信息,面向的是中文市场。

四大分类近百款游戏

前端大厅把游戏按四个Tab分类:Slots(老虎机)、Lottery(百人场/彩票)、Board(棋牌)、Fishing(捕鱼)。滑动浏览下来,Slots一个分类就翻了五六屏,游戏数量相当多。

老虎机 / Slots

老虎机是这套平台的主力,由MJHL和JILI两个服务端提供,大部分是仿PG Soft风格的电子游戏:

服务端

游戏名

MJHL (仿PG系列)

麻将胡了、麻将胡了2、十倍金牛、金玉满堂、冰火双娇、比基尼天堂、夜醉佳人、赢财神、亡灵大盗、虎虎生财、赏金女王、寻宝黄金城、招财喵、斗鸡、赏金大对决、赏金船长、金龙送宝

JILI (仿JILI系列)

钻石派对、迦罗宝石、迦罗宝石2、功夫虎、黄金小丑、招财猫、火热辣椒、黄金之书、吉利财神、发发发、疯狂淘金、世界杯、美杜莎、雷神X、超级王牌、爱尔兰宾果、球好运、爱尔兰精灵

63/728 (经典系列)

九线拉王、水浒传、多福多财、寻宝乐园、铃铛游戏、血色之夜、烈火小恶魔、丛林战士、海鸥、刮刮乐、欢乐至尊

KG Slots老虎机第二页KG Slots老虎机第三页KG Slots老虎机第四页

Slots老虎机分类连续翻屏 -- 寻宝黄金城/赏金大对决/招财猫/斗鸡/夜醉佳人 到 发发发/疯狂淘金/世界杯/梅杜莎/雷神X

百人场 / Lottery

游戏名

类型

飞禽走兽

多人押注

百人牛牛

多人押注

红包雷

红包玩法

森林舞会

转盘押注

龙虎斗

二选一

奔驰宝马

转盘押注

欢乐30秒

百家乐变体

摇一摇

骰宝(Sicbo)

棋牌 / Board

游戏名

类型

抢庄三公

三公

抢庄牛牛

牛牛

二人牛牛(25牛)

牛牛

通比牛牛

牛牛

四人牛牛

牛牛

欢乐5张

梭哈

德州扑克

扑克

赢三张(炸金花)

扑克

十点半

纸牌

二十一点

纸牌

捕鱼 / Fishing

游戏名

说明

捕鱼达人

经典打鱼

大闹天宫

西游主题

大闹天宫2

续作

寻龙夺宝

冒险主题

李逵劈鱼

水浒主题

金蟾捕鱼

金蟾主题

KG Lottery彩票游戏KG 棋牌Board游戏KG 捕鱼Fishing游戏

三个非Slots分类 -- Lottery百人场(飞禽走兽/百人牛牛/红包雷)/ Board棋牌(抢庄三公/德州扑克/21点)/ Fishing捕鱼(6款捕鱼游戏)

四类加起来,前端可见的游戏约70款,服务端代码中还有一些未在前端展示的预留模块(如经典斗地主、二人雀神、温州麻将等),实际游戏模块目录总计96个。

Workerman游戏服务端架构

这套系统最值得关注的架构设计,是游戏服务端的分区管理方式。不是所有游戏塞进一个大进程,而是拆成四个完全独立的Workerman服务集群,每个集群有自己的Gateway、BusinessWorker和Register进程:

服务集群

管理的游戏

Gateway端口

数据库

63JHLM

经典棋牌+百人场+捕鱼+经典电子

16000

63

728

728系列棋牌+百人场+捕鱼

(独立端口)

728

JILI

JILI系列老虎机

(独立端口)

jili

MJHL

PG系列老虎机

(独立端口)

lhj

还有一个MJHL_AGENT进程专门处理代理系统的长连接通信。部署时需要依次启动这5个服务:

cd /home/63JHLM && nohup php start.php start -D &
cd /home/728 && nohup php start.php start -D &
cd /home/JILI && nohup php start.php start -D &
cd /home/MJHL && nohup php start.php start -D &
cd /home/MJHL_AGENT && nohup php start.php start -D &

每个start.php会扫描自己Applications/目录下的所有子模块并启动对应的Worker,比如63JHLM下有35个游戏目录,每个游戏一个BusinessWorker类,统一通过Gateway接入WebSocket连接。配置集中在各自的Config.php中,包括端口分配、数据库连接和进程数限制(默认单进程,房间上限150)。

KG Slots老虎机第五页KG 麻将胡了2加载页KG 冰火双娇加载页

Slots末页(多福多财/水浒传/寻宝乐园/铃铛游戏/血色之夜/烈火小恶魔)/ 麻将胡了2加载画面(PG Soft风格)/ 冰火双娇加载画面

前端通过Cocos Creator的H5客户端连接到对应的WebSocket端口。点击某个游戏时,客户端先加载该游戏的资源包(从res/热更新目录拉取),加载完成后建立WebSocket长连接进入游戏房间。加载页面带有"PG SOFT"品牌标识和权威机构认证Logo(Gambling Commission、MGA、BMM Testlabs),这些都是前端UI层的仿制元素。

游戏实机画面

进入游戏后,老虎机类的交互体验做得比较完整。以麻将胡了2为例,5轴6行的转轴布局,麻将牌面作为图标,有百搭符号(金色牌)、免费旋转、倍率递增(x1/x2/x3/x5)等玩法,底部显示余额、下注额和赢取金额,支持极速模式和自动旋转。

KG 麻将胡了2游戏中KG 麻将胡了2游戏画面

麻将胡了2游戏实机画面 -- 5轴6行转轴布局,金色百搭符号触发连消,2000路中奖组合

游戏逻辑由服务端的BusinessWorker类计算,结果通过WebSocket推送到前端,前端Cocos引擎负责动画渲染。这种前后端分离的架构意味着游戏结果完全由服务端控制,前端只做展示。

后台管理与运营体系

后台管理分两套系统。1_8788目录是基于ThinkAdmin 6.0的63后台,端口8788,覆盖用户管理、充提审核、游戏控制(每款游戏可独立设置上下分、库存、赔率)、代理管理等功能。api目录是基于ThinkPHP 5.0的728后台,功能类似但面向728系列游戏。两套后台共用一个前端控制端(aadmin目录,标题"PG总控制端")。

运营功能在前端也比较齐全:首充转盘、累积充值、绑定送金(绑定手机号送80000金币)、每日签到、在线福利等活动入口都在首页一字排开。钱包页面支持存入/取出,有10%/20%/50%/70%/最大的快捷按钮。个人中心页面包含充值提现记录、我的打码量、分享APP、音乐音效开关等常规功能。

KG 钱包充值页面KG 个人中心页面KG 在线客服页面

钱包存入页面(快捷比例+滑块)/ 个人中心(打码量/充提记录/分享APP/版本1.0.1)/ 在线客服(暂未开放)

部署流程

源码自带搭建教程和宝塔面板网站配置截图,部署环境要求明确:

组件

要求

操作系统

CentOS 7.6 - 7.9

Web服务

Nginx 1.26

PHP

7.2(需pcntl、posix扩展)

MySQL

5.7

端口

1-65535全开

部署步骤概要:

  1. 安装CentOS + 宝塔面板,配置Nginx、MySQL 5.7、PHP 7.2

  2. 上传源码到/www/wwwroot/,游戏服务端到/home/

  3. 创建4个数据库(63、728、jili、lhj),导入对应SQL文件(合计71MB)

  4. 全局搜索替换IP地址(教程中列出了需要改的7个文件路径,涵盖前端JS、热更配置和后端接口)

  5. 修改各数据库配置文件中的连接信息

  6. 配置Nginx站点(前台H5端口8082、后台端口81、多个WebSocket端口),添加CORS跨域头

  7. 设置目录权限chmod -R 777

  8. 逐个启动5个游戏服务进程

  9. 修改数据库jh_game_status表中的IP为新服务器地址

预计部署耗时:4-6小时。主要时间花在IP全局替换和5个服务的逐一调试上。宝塔面板简化了Nginx和MySQL的安装配置,但Workerman的多端口调通需要逐个验证。

二开评估

源码完整度:高。 所有PHP源码未加密未混淆,游戏逻辑、后台接口、配置文件全部可读。Cocos Creator前端是编译后的JS产物,虽然经过压缩但没有做深度混淆,改文案和配置可以直接改JS,大改UI需要Cocos Creator编辑器重新打开原工程编译。源码中res目录有完整的热更新资源包结构,意味着可以不重新打包客户端就推送资源更新。

可二开方向:

  • 换皮/品牌定制:前端Logo、配色、游戏名在JS和资源文件中修改,后台管理界面基于ThinkAdmin模板,改动成本低

  • 增减游戏:每款游戏是一个独立的Applications目录,新增或删除游戏只需增删目录并修改配置,不影响其他游戏

  • 支付对接:当前TP接口层有预留的充值回调接口,对接第三方支付网关需要在对应的tp_xxx目录中修改

  • 多语言:前端文案目前全中文硬编码在JS中,做多语言需要逐文件替换

二开注意事项:

  • 数据库配置文件中的root密码是明文硬编码的,上线前必须更换

  • 前端JS中有多处硬编码的服务器IP,全局替换不能遗漏

  • PHP 7.2已经停止官方支持,长期维护需考虑升级到7.4或8.x

  • Workerman版本偏旧,升级需要逐个测试每款游戏的兼容性

  • 四套TP接口层代码高度重复,如果要统一维护建议合并为一套

总体来看,这套仿KG Slots源码在棋牌类项目中属于体量较大的——四个独立服务端、近百款游戏、8万文件。PHP全栈的技术选型意味着服务端改动门槛不高,但前端Cocos Creator如果要深度改造,需要有引擎使用经验。分区管理的架构设计让单个服务端的复杂度可控,适合按游戏类型分工维护。

下载地址

本资源为付费内容,登录后可下载