多人游戏在服务器端与客户端的UI状态

时间:2020-02-23 06:59:04

标签: server state-management real-time-multiplayer

我正在开发多人策略游戏,并且遇到以下情况:

  • 有很多服务器,这说明了其中一台服务器发生的情况
  • 玩家完成了一项任务,最后将显示一个弹出窗口
  • 即使客户端刷新页面,该弹出窗口也必须保留

替代项A:

  • 保存在服务器端

问题:

  • 慢一点
  • 更难管理
  • 边缘情况:播放器在台式机上加入,但随后在移动设备上恢复播放。目前,所有桌面弹出窗口都与移动窗口兼容...但是可能不会永远这样。
  • 所有弹出状态将与其他播放器共享(那里有些带宽浪费...)
  • 某些弹出窗口与服务器无关,例如主菜单/注册/登录弹出窗口是否打开。

替代项B:

  • 保存在本地存储或类似位置

问题:

  • 1个播放器可以在同一服务器上拥有2个页面,同步更加复杂
  • 服务器不知道您是否真的打开了弹出窗口并根据该弹出窗口进行某些操作

你们怎么看?我真的很尴尬地将每个用户的弹出状态置于服务器端...


 popups:{
   user1: ['pop1', 'pop2']
 }

这就是服务器端的ui状态。

0 个答案:

没有答案