Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在创建一个棋盘游戏,其中 2 名玩家可以玩,其他人可以是旁观者(观众),所以当旁观者加入时,他会得到游戏的当前状态,从那时起,他只会得到每个玩家的动作制作(显然是为了保存数据)。
我的问题是:当观众第一次从服务器获取游戏状态时,我如何确保它实际上是同步的?我真的不知道他什么时候会得到状态,可能会在几分之一秒内发生变化,然后他每走一步得到的 Delta 就没有意义了。
我应该使用某种内部的吗?你会建议什么来确保一切都同步?
假设您的状态是用户操作的结果,并且仅是用户操作的结果,您可以将状态存储在具有自动递增整数 ID 的表格中。
在 move 事件中,您传递新 ID 和以前的 ID。如果接收者的最大 ID 小于前一个 ID,则您知道向服务器询问缺少的操作。