我正在研究ios转基础游戏(游戏中心)。问题是:我什么时候需要保存游戏数据?当然,当玩家转向并且应用程序进入后台或在玩家的移动被传递给其他玩家之前终止,但是还有其他场景应该保存游戏数据吗?
答案 0 :(得分:1)
通常,对于任何客户端 - 服务器应用程序(游戏或其他),只要用户采取服务器需要了解的操作,客户端就应该将数据保留回服务器。
换句话说,如果用户采取行动并且服务器从不知道它将导致问题,则需要保留它。
例如,如果用户执行X然后他们的手机爆炸,那么当他们在新手机上打开应用程序时,X还没有完成,会不会有问题?如果答案是“OMG当然会成为问题!!! 1”,那么X应该是持久的。
通常,我始终假设客户端上执行的每个操作都应该保留在服务器上(如果可能的话)。这可能在有意义的时候异步发生,但服务器的应用程序状态记录是唯一真正重要的事情。
答案 1 :(得分:0)
据我所知,在使用游戏中心的turnBased API(假设我还没有结束)时,在服务器上保留数据的唯一方法是使用以下内容:
[myTurnBasedMatch endTurnWithNextParticipant:me matchData:data completionHandler:^(NSError *error)];
在更新数据时将转向自己。这样可以正常工作,但是使用相同游戏中心帐户登录的所有其他设备都会收到通知,说“轮到你了”,有人知道解决这个问题吗?