三、MMO多人在线游戏AOI算法 · Golang轻量级并发服务器框架zinx · 看云
## 三、MMO多人在线游戏AOI算法
游戏的AOI\(Area Of Interest\)算法应该算作游戏的基础核心了,许多逻辑都是因为AOI进出事件驱动的,许多网络同步数据也是因为AOI进出事件产生的。因此,良好的AOI算法和基于AOI算法的优化,是提高游戏性能的关键。
为此,需要为每个玩家设定一个AOI,当一个对象状态发生改变时,需要将信息广播给全部玩家,那些AOI覆盖到的玩家都会收到这条广播消息,从而做出对应的响应状态。
功能:
1. 服务器上的玩家或 NPC 状态发生改变时,将消息广播到附近的玩家。
2. 玩家进入NPC警戒区域时,AOI 模块将消息发送给NPC,NPC再做出相应的AI反应。
下面我们来创建一个mmo游戏,首先创建一个文件夹
> mmo\_game/
`mmo_game`作为我们服务端游戏应用的主项目目录