我已经搜索并阅读了很多文章并查看了GKTank的苹果样本(无法查看有关我的问题的任何细节,似乎会在事件发生时处理)但我无法看到似乎回答以下的示例或教程
在蓝牙/互联网的多人游戏中(也许)你如何同步玩家互动,以便在考虑延迟等情况下发生正确的游戏结果......
例如:
向每个玩家A& A显示一个按钮。 B在通过蓝牙连接的两个独立设备上
玩家A按下按钮(玩家A正在托管游戏,因此延迟不是问题) 玩家B在玩家A之前按下按钮,但他与玩家A设备的连接至少有200毫秒的网络延迟
问题:即使玩家A的触摸请求首先到达游戏代码,游戏也需要知道玩家B先被按下 - 即对主办方没有任何好处。
我知道触摸事件有时间戳,因此我可以确保将播放器的实际时间从播放器B发送到游戏代码......但不确定这是否是正确的方法以及是否可以去哪里从那里..
我希望答案在于一些游戏时间周期,其中触摸不是立即处理,而是在游戏周期内...
对此的任何帮助或指向教程的指针或处理此问题的特定源代码都将受到赞赏。
亚当
答案 0 :(得分:2)
您可能想在https://gamedev.stackexchange.com/上提出这个问题,因为这是关于多人延迟或延迟的一般性问题,而不是特别针对iPhone。
您可以使用时间戳来订购操作消息。我认为iPhone与AT& T维护的日期时间服务器同步。
答案 1 :(得分:1)
我没有创建多人游戏的实际经验。但正如大多数游戏开发问题的情况一样,我认为没有错误或正确,所以一些逻辑思维应该可以解决问题。
以下是您可能需要考虑的一些想法:
到目前为止,我的2美分; - )