是否有可能在兩臺不同機器上「同步」(缺少更好的詞)隨機數發生器?在兩臺機器上同步隨機數發生器
背景:我有一個適用於iOS的網絡多人遊戲的紙牌遊戲。兩個同伴都需要能夠訪問卡片組。當牌組被洗牌時,我可以使用NSCoding將我的牌組對象序列化,並將它發送給另一個對等體,以使這些套牌同步,但是如果我只能指望兩個對等體上的隨機數生成器來發送更少的數據,生成相同的隨機數。因爲這是一款紙牌遊戲,所以我需要最好的隨機數字,所以我更喜歡使用arc4random(),它在第一次被調用時會自己種子。有沒有,也許是手動種子的方法?
簡單地發送卡片組對象是好的解決方案,但我打算使用OpenFeint的實現異步多,要做到這一點,我的比賽狀態需要保持16K之下,只是我的卡甲板幾乎是2K時序列化。 :)
謝謝!
這聽起來像個壞主意。隨機發生器狀態可以被攔截。一個序列化的(52卡)卡座不應占用52個字節的空間。 – 2010-09-08 23:34:51