游戏蛮牛学习群(纯技术交流,不闲聊):539178957
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2259

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 161|回复: 0

[liyonghelpme2] Moba游戏开发指南

[复制链接]  [移动端链接]

1

主题

1

帖子

3

积分

Rank: 9Rank: 9Rank: 9

UID
288553
好友
0
蛮牛币
9
威望
0
注册时间
2018-7-4
在线时间
1 小时
最后登录
2018-7-6
发表于 2018-7-6 08:14:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
Moba游戏相对于MMO游戏有以下这些特点:
1:基于一局一局的房间型游戏
2:每个房间容纳人数较少5V5
3:技能种类丰富,对技能同步准确性要求高
4:位置同步要求高

Moba游戏基本包含以下这些系统:
1:场景物理,客户端和服务器的2D网格物理系统,寻路系统
2:AI,用于NPC的控制
3:技能系统,能够准确同步的,基于追踪子弹和直线子弹的,易于扩展的子弹系统
4:角色状态机控制系统
5:服务器上的房间管理,和房间并发执行的系统
6:角色位置状态同步系统
7:道具系统
8:Buff的同步和管理系统
9:NPC的生成管理,移动控制系统

当然还有一些辅助的系统:
1:AB打包
2:lua热更新
3:AB资源更新
4:UI系统
5:网络系统

这些系统共同构成了一个基本的Moba游戏的结构

表面上看起来,这些系统似乎都很复杂,但实际上,只要了解了系统的核心设计思想,架构这些系统还是比较直接容易的

例如:服务器上的并发房间系统,可以参考经典的Actor设计思想,在erlang,java中都有类似设计用来参考;

而服务器客户端网络通信,基于TCP的网络流管理,流状态分包切割,protobuff协议工具,只需要了解如何基于状态来管理网络流,以及如何使用protobuff构造可扩展的协议,以及基于epoll 和 reactive模式的 网络模型,再加上对常见的网络异常的理解,就能构造高并发的网络通讯机制;

网络状态同步的核心,就是基于状态机的状态同步,其中主要分为两类,事件同步和状态同步,而从业务角度可以分为三类,位置同步,技能同步,和其它状态属性同步,了解这三类同步模型的具体实现,就可以写出不错的同步代码

基于实体组件的编程模型,也是非常重要编程范式,在游戏这种高扩展性的,需求变动强烈的系统中,非常重要

基于状态机,命令模式的AI和角色状态管理,是整个游戏的基石,状态机的应用在游戏中处处可见,它是控制游戏开发复杂度的非常关键的技术

客户端和服务器同时实现的2D网格的物理系统,是用来实现服务器和客户端子弹计算,移动计算,寻路等机制的基石

了解这些基础知识,基本上,就可以构建出一款Moba游戏的核心框架了

http://edu.manew.com/my/course/655






回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表