2016-04-25 46 views
0

我們需要創建一個10 + 1用戶的遊戲。 10名玩家將成爲真正的用戶 - 在這款多人在線遊戲中。 單人遊戲是一個經銷商,它將是應用程序軟件 - 誰會像經銷商一樣工作。 這位經銷商不會是真正的球員。這位經銷商將投擲DICE。如何在團結的光子在服務器端的代碼

我們如何在光子PUN中做到這一點?我們現在使用免費版本的光子 。

回答

1

根據您使用的Photon客戶端SDK,您應該回調主客戶端發生更改(應該是「OnMasterClientSwitched」)。 當服務器檢測到主客戶端斷開連接時觸發。 主客戶應該是演員編號最低的演員,但有強制主客戶端的方法(將其從客戶端更改)。 如果您將數據保存在房間屬性中或發送事件並緩存它們,那麼只要房間仍然「活着」,就不會有數據丟失的風險,因爲它會在那裏。當演員離開房間時,應該清理另一邊的演員屬性。

儘管一個棘手的情況是:當主客戶端沒有響應並且沒有明確斷開連接時,可能會有幾秒鐘(默認超時10秒),然後服務器檢測到該actor超時並切換到新的狀態。如果這種情況與您有關,例如您的目標是移動,我們可以討論可能的解決方案。

+0

感謝重播 一個棘手的情況,但:當主客戶端沒有響應,並沒有明確地斷開,有可能是幾秒鐘(默認超時10秒)服務器檢測之前是演員超時,並切換到新一。如果這種情況與您有關,例如您的目標是移動,我們可以討論可能的解決方案。 先生,如果出現這種情況,那麼哪些是可能的解決方案? 先生,我們可以嘗試光子服務器,使服務器可以成爲經銷商,但不知道如何設置光子服務器 –

相關問題