我正在使用Game Center进行第一个实施。我正在尝试让玩家彼此发出GKScore挑战。我的游戏包括按随机顺序玩一定数量的关卡。 (比方说,一个游戏有9个级别,是从30个可能的级别中随机选择的。)
发布挑战时,我必须能够包括挑战玩家所玩的级别,以便接收玩家可以按相同顺序玩那些相同的级别。
[我知道我可以包含将传递回我的GKScore.context : UInt64
,但是我在弄清楚如何最好地编码我的等级信息以便传递时遇到了麻烦,并希望能找到一些指向示例或其他解决方案的指针/最佳做法。
我知道我可以使用按位标志来编码应包含在9级游戏中的级别,但是我不确定如果这样做的话,我也将如何包括顺序。
[我知道我可以使用GKScore.context
生成一个随机ID号,将游戏信息上传到我的服务器,然后使用相同的标识符将其取回,但是我真的不想添加服务器组件。该游戏应完全在设备上运行。我既不希望服务器负载也不希望服务器代码维护。
[在不依赖服务器组件的情况下,您还使用哪些其他选项与GKScore.context
一起发送质询信息?
生成一个适合64位的随机值。用它来播种随机数生成器,并按所需顺序生成任何级别的数字。将种子保存为上下文。对于有挑战的玩家,请从上下文信息中获取种子,并使用相同的种子初始化随机数生成器。您将获得相同的“随机”值序列,从而获得相同顺序的相同级别数。唯一的网络内容将是通过Game Center来传递挑战。