Profile Image
3
Josephin DoeTyping . .
Profile Image
1
Lary Doeonline
Profile Image
Aliceonline
Profile Image
1
Alia10 min ago
Profile Image
Suzen15 min ago
Profile Image
3
Josephin DoeTyping . .
Profile Image
1
Lary Doeonline
Profile Image
Aliceonline
Profile Image
1
Alia10 min ago
Profile Image
Suzen15 min ago
Profile Image
3
Josephin DoeTyping . .
Profile Image
1
Lary Doeonline
Profile Image
Aliceonline

New Group

New Contact

Profile Image

Josephin Doei am not what happened . .

Profile Image
Lary DoeAvalable
Profile Image
Alicehear using Dasho
A
AliaAvalable
Profile Image
SuzenAvalable
JD
Josephin DoeDon't send me image
Profile Image
Lary Doenot send free msg
Desktop settings

You get latest content at a time when data will updated

Application settings

Automaticaly take backup as par schedule

System settings

Allow to show public user message

Josephin Doe
Profile Image

hello tell me something

about yourself?

8:20 a.m.

Ohh! very nice

8:22 a.m.

Profile Image
Profile Image

can you help me?

8:20 a.m.

oops framework + tsrpc 网络游戏全栈解决方案

文章详情

此产品实现了MOBA类游戏玩法基础功能,可用于二次开发或学习全栈游戏制作技巧。

产品前后端全采用TypeScript语言实现,同时业务代码使用同一套ECS框架设计,前后端代码风格接近,便于理解学习。

前端框架采用 oops-framework 做为业务框架。

后端框架采用 tsrpc 框架,使用这套框架前后端通讯协议就不需要在学习其它中间协议语言,全自动工具生成协议代码,底层二进制传输数据,可把精力关注到游戏业务逻辑设计上,提高开发效率。(感谢 tsrpc 作者提供优秀的开源技术资源)

产品获得Cocos官方2022年社优秀游戏资源

开发环境
引擎版本:Cocos Creator 3.8.3(需要Cocos Creator 3.x低版本购买后联系作者获取)
编程语言:TypeScript
已适配平台
H5 微信小游戏 Android原生 iOS原生 抖音小游戏 OPPO小游戏 vivo小游戏
✔ ✘ ✔ ✘ ✘ ✘ ✘
本资源仅保证支持作者已测试通过平台,其他平台理论上是支持的,其它平台兼容问题请自行适配或加入交流群与作者交流
有其它定制需求的开发者可加入交流群与作者交流
解决问题
如果无同类解决方案,使用此产品二次开发网络游戏可省至少二个月的自研开发成本
学习 oops-framework 实战开发技巧,里面包含客户端框架中大多技术的应用
学习 tsrpc 实战开发技巧,里面包含服务器框架中大多技术的应用
学习网络游戏程序设计技巧
学习技能系统程序设计技巧
应用案例
daolink 论坛贴
daolink 官网
功能介绍
玩法功能
账号功能
游戏区服
房间管理
创建
加入
选择加入
匹配加入
退出
网络即时战斗玩法
摇杆控制角色移动
触摸地图控制角色移动
弱网移动同步策略
网络即时战斗系统
角色数值系统
技能系统
技能释放前摇与后摇
木桩类打靶NPC
死亡后3秒后服务器复活角色
客户端功能模块
游戏登录模块
游戏公共模块
游戏初始化模块
摄像机管理模块
轨道摄影机
PC平台鼠标滚轮调整镜头距离
地图管理模块
房间管理模块
角色管理模块
遥感控制移动
触摸地图控制移动
角色动作移动、攻击、死亡、复活
角色数值系统
技能系统模块
可自定义类扩展技能框架
技能配置表
技能数值计算框架
自动选目标
验证技能是否满足触发条件
技能效果对角色数值的影响计算
技能动画播放框架
立即触发效果类技能
远程射击技能
瞬发回复技能
全体连锁闪电技能
位移类技能
持续触发效果类技能
持续伤害
持续控制(新增)
持续光环类范围影响技能(新增)
持续陷阱类范围影响技能(新增)
服务端功能模块
支持 HTTPS、WSS
支持 数据加密
服务器与服务器之间通讯白名单
网关服务器
账号登录
账号注册-数据库中没帐号会自动注册
登录权限-未登部分协议无法使用
匹配服务器
服务器初始化
房间服务器加入并进入工作状态
获取在线的游戏房间列表
创建一个房间
在人数所少房间服务器创建
匹配一个房间,如果在超时前没匹配到则创建一个新房间进入
房间服务器
服务管理模块
服务器初始化
申请加入匹配服务器,等待授权进入工作状态
登录权限验证
断线逻辑
玩家断线自动离开房间
与匹配服务器断线,无限尝试连接匹配服务器直到恢复正常后继续提供服务
空房回收策略
聊天业务处理
房间管理
创建
加入
选择加入
匹配加入
退出
房间管理模块
房间数据状态管理
房间内玩家状态广播
房间内战斗逻辑管理
服务器同步验证验证客户端技能计算结果
服务器只广播技能触发命令,不广播技能结果的状态,减小数据包
服务器验证逻辑与客户端同一套技能框架代码,减小开发成本
玩家管理模块
玩家数据状态管理
玩家玩法协议代码分离设计
玩家移动状态同步
玩家移动广播
玩家攻击广播
玩家离开房间广播
角色数值系统
工程结构与第三方库下载
公共配置 ShareConfig.ts
开启https与wss
传输协议是否使用加密功能
是否用二进制数据传输
客户端
assets 资源与脚本目录
使用 vscode 打开 cocos creator 3.6.0 项目
使用 vscode 中的终端(Ctrl + `),运行 npm install -d
连接服务器配置文件 GameServerConfig.ts,默认连接外网作者的服务器,本地调试可修改为本地IP
服务端
tsrpc_server 脚本目录
使用 vscode 打开 tsrpc_server 目录
使用 vscode 中的终端(Ctrl + `),运行 npm install -d
配置文件 Config.ts
调试与部署
安装软件

安装 MongoDB 官网地址:https://www.mongodb.org/downloads, 选择操作系统及位数,进入下载页
调试环境

npm run dev:gate 启动网关服务器
npm run dev:match 启动匹配服务器
npm run dev:room 启动房间服务器
npm run dev:room2 再启动一个房间服务器测试分布式
npm run build 构建发布
生产环境

npm install pm2@latest -g 安装工具
pm2 start ecosystem.config.js –env production 启动生成环境
pm2 start ecosystem.config.js –env develop 启动调试环境
pm2 delete all 停止所有服务器

Tags:

发表评论