H5捕鱼-C++六进程服务端全套源码/Cocos Creator 2.4 H5客户端+C#

金币源码2026-08-27426 阅读
约 1,881 字 · 大约 6 分钟

这套H5捕鱼拿到手解压后有四个主目录:h5fish_client(客户端)、h5fish_server(游戏服务端)、h5fish_http(HTTP后台)、h5fish_Tools(工具集),结构清晰,各模块职责分明。

H5捕鱼 项目主目录结构
H5捕鱼 项目主目录结构

服务端:C++六进程协作架构

服务端是这套源码的核心,用C++写的,编译后产出六个独立的可执行文件,各司其职:

进程

职责

center.exe

中心调度,管理所有服务节点的注册与通信路由

gate.exe

网关,处理客户端WebSocket连接和消息转发

global.exe

全局服务,跨服活动、CDKey、空投等全局业务

world.exe

世界服务,玩家数据、好友、邮件、充值、任务等核心业务逻辑

logic.exe

逻辑服务,管理游戏房间分配和机器人调度

monitor.exe

监控进程,负责各服务健康检查

H5捕鱼 服务端六进程可执行文件
H5捕鱼 服务端六进程可执行文件

六个进程之间用Google Protobuf做序列化通信,协议定义文件都在server/protocol/里,涵盖center到world、logic到world、global到world等多组通信协议,连protoc.exe编译器都带着,改了proto文件可以直接重新生成。

服务端源码量非常大,server/目录下1745个C++源文件(809个.cpp + 936个.h),分布在center、gate、global、logic、monitor、world、games等模块。其中games/game_fishlord/是捕鱼玩法的核心实现,光这一个模块就有几百个源文件,覆盖了鱼群生成、子弹碰撞、命中算法、赔率计算、BOSS鱼逻辑、竞技赛/自由赛/大奖赛等竞技玩法、以及大量的活动系统。

H5捕鱼 服务端源码模块
H5捕鱼 服务端源码模块

数据库方面,项目自带MongoDB 3.4和Redis,都打包在bin/目录里可以直接启动。Redis分了多个配置:game_cfg.conf、global.conf、grand_prix.conf、qualify_prix.conf,按业务拆分存储。

客户端:Cocos Creator 2.4.3 + TypeScript

客户端是标准的Cocos Creator 2.4.3工程,project.json里标得清楚。整个前端用TypeScript开发,assets/Script/下690个ts文件,按功能分了Components、Config、Core、Data、Game、Guide、Match、Net、Scene、ThirdParty等模块。

H5捕鱼 客户端Cocos项目
H5捕鱼 客户端Cocos项目

从用户截图可以看到,大厅里有四个捕鱼场次(新手场、初级场、高级场、土豪场,入场门槛从0.1元到1000元),外加龙虎斗和百人牛牛两个非捕鱼玩法。底部功能栏齐全:充值、排行、提现、邮箱、VIP、奖励、APP下载,顶部有累积奖池显示。

H5捕鱼 大厅房间选择
H5捕鱼 大厅房间选择

进入捕鱼场景后,画面是经典的海底珊瑚场景,支持四人同屏,炮台在底部,有锁定和自动射击功能,右上角显示网络延迟。

H5捕鱼 捕鱼游戏场景
H5捕鱼 捕鱼游戏场景

H5捕鱼 个人信息面板H5捕鱼 充值面板

个人信息面板支持游客账号和手机绑定,有技能道具栏和VIP特权入口。充值面板接了支付宝、微信、银商三个通道,金额档位从50到250元。

HTTP后台:C# ASP.NET + 三套管理面板

HTTP层是一个Visual Studio解决方案(Http.sln),里面包了17个C#子项目,职责拆得很细:

  • HttpLoginFish5 / HttpServiceFish5:登录和游戏服务接口

  • HttpRecharge / HttpPayTrans:充值和支付流转

  • HttpApi / OpenApiV3:对外API和第三方开放接口

  • HttpSendCode:短信验证码

  • libWeiXinQR:微信二维码支付

  • WebManagerDWC_Fish3 / Fish3_yunwei / Fish4:三套后台管理面板(运营版、运维版、升级版)

H5捕鱼 HTTP后台项目
H5捕鱼 HTTP后台项目

后台管理面板用ASP.NET Web Forms写的,WebManager/下有完整的ASPX页面、后台代码、JS脚本和样式,覆盖玩家管理、数据统计、活动配置、充值记录等运营功能。

工具集

h5fish_Tools目录带了两个配套工具:

  • FishEdit:鱼编辑器,包含FishFormationEdit(鱼阵编辑)和FishRouteEdit(鱼路径编辑),用来可视化配置鱼群阵型和游动路线

  • ExeclExport:Excel配置导出工具,把Excel表里的数值策划数据转成代码可读的配置

bin/Config/目录下有200多个XML配置文件,覆盖鱼种参数、场景定义、出鱼规则、赔率表、活动配置、商店道具等几乎所有可调数值,策划改数值不用动代码。

部署条件与估时

项目

要求

操作系统

Windows Server(服务端是Windows C++ exe)

开发工具

Visual Studio 2019(编译服务端和HTTP后台)

客户端引擎

Cocos Creator 2.4.3(构建H5前端)

数据库

MongoDB 3.4 + Redis(项目自带)

运行时

.NET Framework 4.x(HTTP后台)

硬件建议

8核16G内存起步,六个C++进程+MongoDB+Redis常驻内存

部署流程大致是:装MongoDB和Redis(自带)→ 配置Redis多实例 → 编译或直接跑六个C++服务端进程 → VS编译部署HTTP后台到IIS → Cocos Creator构建H5客户端部署到Web服务器 → 修改客户端连接地址。项目自带BuildAll.bat一键编译脚本,已编译好的Release版exe也在bin/Release/里。全套跑通大约需要1-2天,主要时间花在环境配置和多个服务的联调上。

二次开发空间

这套源码的二开条件非常好:

  • 全源码交付:C++服务端1745个源文件全开源,TypeScript客户端690个脚本无加密,C#后台全部源码,没有黑盒DLL

  • 协议可改:Protobuf的.proto定义文件和protoc编译器都在,改通信协议直接重新生成

  • 数值可调:200多个XML配置文件覆盖了几乎所有游戏参数,策划独立调整不需要开发介入

  • 工具齐全:鱼阵编辑器、路径编辑器、Excel导出工具都有,改鱼种和阵型不用手写数据

  • 扩展接缝清晰:BuildServer.bat里注释掉了Jewel(宝石)、Crocodile(鳄鱼)、Fruit(水果)、Dice(骰子)、Baccarat(百家乐)、Cows(牛牛)等十多个游戏模块的编译入口,说明这套框架设计之初就支持插拔式加游戏,目前只启用了Fish和Game两个模块

之前拆过一套全民捕鱼的源码,那套也是C++服务端六个独立进程的架构,但走的是自定义二进制协议、数据库用的MySQL。这套走Protobuf+MongoDB的技术选型更现代一些,两套对比着看能看出同一类架构在不同技术栈下的取舍,那篇也放在文末了,感兴趣可以去看看。

功能清单

分类

功能点

捕鱼玩法

新手/初级/高级/土豪四档场次、鱼群阵型生成、子弹碰撞检测、命中赔率算法、锁定射击、自动射击

BOSS系统

巨鲨、龙宫、武装鲨鱼、传说鱼、神兽、猴王、筹码宫殿等多种BOSS玩法

竞技系统

竞技赛(ArenaMatch)、自由赛(FreedomMatch)、大奖赛(GrandPrix)、资格赛(Qualifying)

炮台系统

炮台升级、炮台合成、炮台技能、炮台翅膀、炮头更换

非捕鱼玩法

龙虎斗、百人牛牛

运营活动

国庆/春节/暑假/五一/万圣节/双十一等节日活动、充值返利、签到、抽奖、红包、刮刮乐

社交系统

好友、聊天、邮件、排行榜、喇叭广播

付费系统

支付宝/微信/银商充值、VIP等级、月卡周卡、成长基金、商城

账号系统

游客登录、手机绑定、实名认证、QQ平台对接

机器人系统

AI机器人自动打鱼、机器人名字库、机器人行为模拟

延伸阅读1 篇

下载地址

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