是否有可能在两台不同机器上“同步”(缺少更好的词)随机数发生器?在两台机器上同步随机数发生器
背景:我有一个适用于iOS的网络多人游戏的纸牌游戏。两个同伴都需要能够访问卡片组。当牌组被洗牌时,我可以使用NSCoding将我的牌组对象序列化,并将它发送给另一个对等体,以使这些套牌同步,但是如果我只能指望两个对等体上的随机数生成器来发送更少的数据,生成相同的随机数。因为这是一款纸牌游戏,所以我需要最好的随机数字,所以我更喜欢使用arc4random(),它在第一次被调用时会自己种子。有没有,也许是手动种子的方法?
简单地发送卡片组对象是好的解决方案,但我打算使用OpenFeint的实现异步多,要做到这一点,我的比赛状态需要保持16K之下,只是我的卡甲板几乎是2K时序列化。 :)
谢谢!
这听起来像个坏主意。随机发生器状态可以被拦截。一个序列化的(52卡)卡座不应占用52个字节的空间。 – 2010-09-08 23:34:51