oops framework + tsrpc 全栈解决方案
此产品实现了MOBA类游戏网络层基础功能,可用于二次开发扩展协议实现自定义逻辑或学习全栈游戏开发。
产品前后端全采用TypeScript语言实现,同时业务代码使用同一套ECS框架设计,前后端代码风格接近,便于理解学习。
前端框架采用 oops framework 做为业务框架。
后端框架采用 tsrpc 框架,使用这套框架前后端通讯协议就不需要在学习其它中间协议语言,全自动工具生成协议代码,底层二进制传输数据,可把精力关注到游戏业务逻辑设计上,提高开发效率。(感谢 tsrpc 作者提供优秀的技术资源)
DEMO 体验地址传送门
产品价值
- 有一套成形的解决方案提高学习效率
- 在框架的支持下,学习前后端开发更容易
- 学习如何让代码更容易复用、扩展、维护、易读
- 添加自定义玩法,直接可商用项目开发
功能介绍
- 玩法功能
- 创建房间
- 随机匹配加入一个房间
- 获取当前在线房间列表,可加入个人数未满的房间
- 玩家加入房间
- 玩家退出房间
- 摇杆控制角色移动同步
- 触摸地图目标点控制移动同步
- 弱网移动同步策略
- 基础战斗同步逻辑
- 客户端功能模块
- 游戏公共模块
- 游戏初始化模块
- 摄像机管理模块
- 轨道摄影机
- PC平台鼠标滚轮调整镜头距离
- 地图管理模块
- 房间管理模块
- 角色管理模块
- MOBA类攻击前摇后摇,实现走A效果,手机上遥感方便操作出来
- 移动、攻击、死亡、复活
- 技能系统模块
- 弓箭类技能
- 服务端功能模块
- 支持 HTTPS、WSS
- 匹配服务器
- 服务器初始化
- 房间服务器加入并进入工作状态
- 获取在线的游戏房间列表
- 创建一个房间
- 在人数所少房间服务器创建
- 匹配一个房间,如果在超时前没匹配到则创建一个新房间进入
- 房间服务器
- 服务管理模块
- 服务器初始化
- 申请加入匹配服务器,等待授权进入工作状态
- 登录权限验证
- 断线逻辑
- 玩家断线自动离开房间
- 与匹配服务器断线,无限尝试连接匹配服务器直到恢复正常后继续提供服务
- 空房回收策略
- 聊天业务处理
- 加入房间业务处理
- 离开房间业务处理
- 房间管理模块
- 房间数据状态管理
- 房间内玩家状态广播
- 玩家管理模块
- 玩家数据状态管理
- 玩家玩法协议代码分离设计
- 玩家移动状态同步
- 玩家移动广播
- 玩家攻击广播
- 玩家离开房间广播
- 服务管理模块