对Go做体检
Go语言在游戏服务器方向的开发,起步比较晚。有必要考察下使用Go来实现,该怎么去做,会遇到什么问题,以及怎么克服。这里把使用Go语言开发MMO RPG游戏作为考察对象,对Go做一次体检。
MMO RPG最小功能清单
首先,罗列下开发一个MMO RPG必须具备的功能。目标是实现这些功能后,玩家能登录游戏,在地图上跑动,能相互看到对方。若能很好的实现这些功能,各项运行指标达标。那么,我们就可以罗列更多的功能清单,来丰富它。按照这样的方式,经过多次迭代后,最终达到一个完整MMO RPG的水平。
以下是个人认为MMO RPG游戏服务端 必备功能。
主要功能:
- 如何与Unity3D交互
- 网络层
- 定时器、事件投递
- 多任务系统
- 数据持久化方案
- 配置文件及热配置
- 引擎与应用逻辑框架
- 服务发现机制
- 服务器架构实现
- 帐号与角色
- 登录流程(包括登出、重登陆)
- 世界场景搭建
- 移动、寻路及同步
- AOI算法实现