为了账号安全,请及时绑定邮箱和手机立即绑定

游戏开发,界面上其他玩家移动都可以实时看到,这个后端是如何实现的?

游戏开发,界面上其他玩家移动都可以实时看到,这个后端是如何实现的?

PHP
神不在的星期二 2019-03-15 14:01:19
如题 网络游戏如何保存用户角色的实时位置并同步? 现在设计一款结合实际地图的游戏 数据库采用mongoDB 数据表中有个位置字段 记录用户当前位置 以便他人获取周边在线玩家时可以获取到 但是用户移动是很频繁的,应该不是用户移动一下就update数据库吧 这里应该如何设计/实现呢? 只求思路!!!感谢!
查看完整描述

5 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

建议去了解一下:关键字《网络游戏同步方式(帧同步和状态同步)》

查看完整回答
反对 回复 2019-03-18
?
饮歌长啸

TA贡献1951条经验 获得超3个赞

没做过游戏,讲解一下我的理解,大牛勿喷
这种即时性的 游戏内 存数据库 redis 里面不就可以了。
这个 存数据库 不用 多即时,大概 1 ~ 2 s 存取一次,根据游戏来判断
只要最终一致就可以了
至于丢失问题,我个人觉得可能性较小且 丢失了 影响也不是特别大吧

查看完整回答
反对 回复 2019-03-18
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

建议看看socket 比如网页游戏使用的是websocket,这个和聊天室是一个原理,一个是广播的单一文字,一个广播的是用户角色等属性一体的数据包,你搜索 websocket 聊天室看看你就明白了

查看完整回答
反对 回复 2019-03-18
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

这肯定是socket...你那样
1 无论如何都不是实时
2 服务器压力....

查看完整回答
反对 回复 2019-03-18
?
守着一只汪

TA贡献1872条经验 获得超3个赞

长连接下,位置数据是广播的

查看完整回答
反对 回复 2019-03-18
  • 5 回答
  • 0 关注
  • 634 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信