开心互娱H5棋牌-Egret+Java编译服务端/10款斗牛炸金花麻将/带ThinkPHP后台源码可二开

房卡联盟2026-09-02288 阅读
约 2,252 字 · 大约 8 分钟

文章摘要: 这是一套交付形态很典型的H5棋牌平台——客户端和游戏服务端是编译产物,运营后台却是完整明文源码。它走微信公众号网页授权登录,主打房卡+俱乐部的熟人局模式。下面从代码结构、技术栈、游戏清单、部署到二开空间逐项说清楚。


一、先看清楚拿到的是什么

解压后整包约 345MB,根目录很干净,就三块东西加两个数据库:egret(H5前端)、java(游戏服务端)、两个 .sql 数据库文件,外加一份 搭建教程.docx 和 yum源安装jdk.rtf。

开心互娱 全套目录总览
开心互娱 全套目录总览

品牌这一层套了好几皮:压缩包叫“开心互娱”,示例部署里应用顶栏显示的是“九州互娱”,而数据库 server 表里游戏描述又写着“关公棋牌”。往下扒到代码层,Java 包名是 com.vequn、PHP 入口 APP_NAME 定义为 Vequn——所以它真正的底层框架是 vequn(维群) 这套 H5 棋牌框架,上面那些名字都是运营方换皮改出来的。对二开来说,认准 vequn 这个底子就够了。

这套的交付形态是混合的,这一点直接决定了它的价值和改造难度:

组成部分

交付形态

能不能改

Egret H5 客户端

编译发布版 JS

只能换资源皮肤

Java 游戏服务端

可执行 jar + class

编译产物,深改难

ThinkPHP 运营后台/接口

明文 PHP 源码

可以直接改

MySQL 数据库

完整两套库

数据结构齐全

二、三层架构拆解

它是标准的“前端 — 游戏服务端 — 运营后台”三层分离,各跑各的,靠数据库和 WebSocket 串起来。

H5 前端(Egret 白鹭引擎)。 每款游戏在 egret 目录下占一个独立文件夹(ddz 斗地主、zjh 炸金花、shisanshui 十三水、tdouniu 斗牛……),里面是 main.min.js + resource 资源包的发布结构,没有 .ts 工程源码。也就是说前端是白鹭导出的运行版,改图片、音效、皮肤没问题,想改玩法交互逻辑就得啃压缩过的 JS,不现实。玩家进大厅点某款游戏,实际是跳到该游戏文件夹的 index.html。

游戏服务端(Java)。 这是整套的核心,一个大厅服 + 十一个游戏服,每个都是能独立跑的 jar:vequn.lobby.jar 管大厅,vequn.game.ddz.jar、vequn.game.niuniu6.jar、vequn.game.cqxzmj.jar 等各管一款游戏。大厅服通过反射加载 com/vequn 下的一百多个 class(Role、Room、MessageNet、Work 这些一看就是自研的房间/角色/消息/定时任务框架),对外开了 WebSocket 9001、TCP 9003、HTTP 9002 三个端口,H5 客户端就是连 9001 打实时通信的。

开心互娱 Java编译游戏服务端目录
开心互娱 Java编译游戏服务端目录

启动逻辑写在 run.sh 里,很直白——先把大厅拉起来 sleep 30,再挨个 nohup java -jar 把各游戏服起到后台;stop.sh 则按进程名批量 kill。部署路径写死的是 /www/wwwroot/java/...,一眼就是宝塔面板的 Linux 环境。

运营后台(ThinkPHP)。 这是全套里唯一给了明文源码的部分,藏在 egret/vequn 目录,是一套 ThinkPHP 的 CMS,模块划得很全:Admin(后台)、Api(前端接口)、Member、Order、Shop、Goods 都在。光 Admin/Action 一个目录就 27 个控制器,代理、支付、玩家、配置、点控一应俱全,全是可读可改的 .php。

开心互娱 ThinkPHP后台控制器源码
开心互娱 ThinkPHP后台控制器源码

其中 AgentAction(代理)三万多字节、PayAction(支付)三万六,还带着 .bak 备份文件,说明代理返佣和充值这块逻辑写得不算薄,二开时能直接在这上面动刀。

两套 MySQL 库分工明确。 dazhong_lobby 是游戏主库,Java 服务端连的就是它,关键表包括 player(玩家)、server(游戏服务器列表)、roomtype(房间类型)、gameRecord(战绩)、openRoomRecord(开房记录)、agent(代理)、pay(支付)、还有一张 cheat 表(点控/输赢干预)。另一套 dazhong_lobbyht 是后台运营库,表名统一 vcm_ 前缀,vcm_agent、vcm_agent_pay、vcm_config、vcm_article 一路排下来,就是 ThinkPHP 那套 CMS 的数据。

三、游戏清单

从 server 表读出来、大厅里实际挂着的一共 10 款,按类型归一下:

类型

游戏

前端目录

服务端 jar

牛牛/斗牛

12人牛牛

tdouniu

game.nn12

牛牛/斗牛

9人牛牛

nineniu

game.niuniu9

牛牛/斗牛

6人牛牛

sixniu

game.niuniu6

扑克

斗地主

ddz

game.ddz

扑克

12人三张牌(炸金花)

zjh

game.zjh2

扑克

三张牌(6人炸金花)

sixzjh

game.zjh6

扑克

十三水

shisanshui

game.ssd

扑克

双扣

shuangkou

game.shuangq

麻将

扣点麻将

kdmj

game.koudianmj

麻将

血战到底

xzmj

game.cqxzmj

除了这 10 款,代码里还留着 mingq、hjnn2up 等几个前端目录和服务端 jar,属于框架预留、示例大厅没挂上去的,想扩游戏可以从这里接。

四、玩法与功能:房卡+俱乐部的熟人局

进大厅是清一色的“创建房间”,没有金币场自由匹配——这套走的是房卡俱乐部路子,房主开局、朋友输房号进来一起打。

开心互娱 游戏大厅房间列表
开心互娱 游戏大厅房间列表

创建房间时不同游戏能配的参数不一样,粒度做得挺细:麻将能选普通场/风耗子场、胡牌类型、局数、首张随庄这些;斗牛能配底分、喜金、顶注、首轮必闷/不闷、比牌底分。付费模式统一是房主支付或 AA 制,消耗房卡,且注明“房费发牌后才扣除”。

开心互娱 创建房间玩法设置
开心互娱 创建房间玩法设置

加入房间是一个手动输房号的键盘面板,牌桌则是围坐式的多人桌,斗牛这类还会在桌面标出牌型倍数(同花顺、五炸弹、五花牛、葫芦牛……),人数不够会提示“人数不足,不能开始游戏”。

开心互娱 加入房间与斗牛牌桌
开心互娱 加入房间与斗牛牌桌

十三水、双扣这些走的也是同一套牌桌框架,房间号、场次、对局数都在侧边标着,房主一个“开始”键发牌。

开心互娱 十三水与游戏牌桌
开心互娱 十三水与游戏牌桌

个人中心这块该有的运营入口都有:我的开房记录、最近游戏、活动中心、联系我们,还有一个“推广中心”挂着代理加盟——配合后台的 AgentAction 和 vcm_agent 系列表,代理裂变、返佣、充值这条运营线是打通的。

开心互娱 个人中心与开房记录
开心互娱 个人中心与开房记录

登录走的是微信公众号网页授权(OAuth):index.html 里写死了公众号 AppID,Java 大厅配置里也要填 AppID/AppSecret,所以这套只能挂在认证过的微信公众号下跑 H5,这一点部署前要想清楚。

五、部署:宝塔 Linux 一条龙

搭建教程写得比较实在,环境和步骤都给全了。环境是 CentOS7 + 宝塔面板 + JDK + Nginx + PHP5.6 + MySQL5.6(JDK 单独附了一份 yum 源安装文档)。

大致流程:

1. 装宝塔、装 JDK,建 Nginx+PHP5.6+MySQL5.6 环境
2. 导入两套库 dazhong_lobby 和 dazhong_lobbyht(默认库名即账号,密码见配置文件)
3. 改 egret/index.html 里的 appid 和 redirect_uri 域名,换成自己公众号和域名
4. 改 java/lobby/config 下 server_config.properties、weChat_config.properties 的 appId/appSecret
5. 微信公众号后台配好业务域名、JS接口安全域名、网页授权域名、IP白名单
6. 改 dazhong_lobby 库 server 表的 address 字段,指向自己的域名
7. 进 java 目录执行 ./run.sh 拉起所有服务
8. 宝塔里把网站默认文档的 index.php 提前,放开 1-60000 端口
后台:http://域名/index.php?m=Public&a=login(admin)
前端:http://域名/?skin=0&platform=1

不改代码的话,数据库账号密码用默认的就能跑;会改的可以把源码里所有 DB 账号密码换成自己的。整个环境搭好、导库、改配置,熟手一两个小时能落地,真正卡时间的往往是微信公众号那几个域名认证,公众号资质不到位会一直卡在授权登录。前端地址里的 skin 和 platform 两个参数,也印证了它设计上是支持多皮肤、多平台切换的。

开心互娱 全套压缩包内容
开心互娱 全套压缩包内容

六、二开空间:改运营顺手,改玩法碰壁

一句话概括:运营层随便改,游戏核心改不动。

能改的部分:ThinkPHP 后台和 API 是明文源码,代理层级、返佣比例、充值、点控参数、公告活动、玩家管理这些运营向的东西,直接在 Modules 里动手就行;游戏的开关、名称、跳转靠 server 表配置,加减游戏、换域名都是改数据;前端换皮(图标、背景、音效、界面资源)也没门槛,替 resource 里的素材即可。

改不动的部分:11 款游戏的服务端是编译好的 jar,只有 class 没有 .java,虽然 class 能反编译出来读,但想改发牌逻辑、赔率、胡牌算法这类核心规则,工作量和风险都很大;Egret 客户端的游戏主逻辑压在 main.min.js 里,同样只能换资源、动不了玩法。

所以这套的定位很清楚——拿来换个皮、接上自己的公众号、把代理和点控配起来就能开运营的房卡棋牌平台;但它不适合当作“改玩法、出新游戏”的开发底座,因为最值钱的游戏逻辑源码(Java 和 Egret 工程)恰恰没给。想清楚这条边界,再决定要不要上手。

下载地址

会员免费

本资源为会员专享,登录后可下载