Hello!
Looked over the API (I am using the turnbased SDK) and the Cached Events Doc to try to get cached events implemented in our game for players that leave and rejoin, but it seems to only work partially? I'll get 2 events triggered upon a rejoin out of the 8-10 that triggered with "ExitGames.Client.Photon.Lite.EventCaching.AddToRoomCacheGlobal" as the caching option.
For the game itself, I am leaving via:
Then rejoining via:
re-using the actorID assigned to the client upon joining originally. One thing I wasn't clear on via the API was how fast the cached events arrive. I know they arrive in order, but are they just blasted at the client right after the Join event? Do they come under some other 'event code' (wrapped) or should they come as-is?
My symptom is that when i remove caching from the relevant event, I get nothing on rejoin (as expected). But once I enable it, I'll have 10-11 events supposedly cached, but only the first 2 I ever receive on rejoin via the OnEvent() method.
Other potential complications:
- I connect into the game room via 1 unity scene, and then load another unity scene after the join msg. during the load time I've got a background thread doing a 'SendAcksOnly()' on the loadBalancingPeer until the new scene is fully loaded. Could cached events be potentially dropped during this time or will the client buffer the events?
Looked over the API (I am using the turnbased SDK) and the Cached Events Doc to try to get cached events implemented in our game for players that leave and rejoin, but it seems to only work partially? I'll get 2 events triggered upon a rejoin out of the 8-10 that triggered with "ExitGames.Client.Photon.Lite.EventCaching.AddToRoomCacheGlobal" as the caching option.
For the game itself, I am leaving via:
this.OpLeaveRoom (true);
Then rejoining via:
OpJoinRoom(room.Name, actorID);
re-using the actorID assigned to the client upon joining originally. One thing I wasn't clear on via the API was how fast the cached events arrive. I know they arrive in order, but are they just blasted at the client right after the Join event? Do they come under some other 'event code' (wrapped) or should they come as-is?
My symptom is that when i remove caching from the relevant event, I get nothing on rejoin (as expected). But once I enable it, I'll have 10-11 events supposedly cached, but only the first 2 I ever receive on rejoin via the OnEvent() method.
Other potential complications:
- I connect into the game room via 1 unity scene, and then load another unity scene after the join msg. during the load time I've got a background thread doing a 'SendAcksOnly()' on the loadBalancingPeer until the new scene is fully loaded. Could cached events be potentially dropped during this time or will the client buffer the events?