BUG: What causes OnReceivedRoomListUpdate to refresh?
Options
Hey,
BUG: I've noticed that, once a client (Client 1) joins a lobby, they will not receive room updates via
Repro 100%. Running on a Quantum internal development cluster (via Erick) in EU region. Tested with two clients (different devices), and 5 clients (running as different instances on the same PC). I'm using the
Q1: Is this intended behavior or a bug?
Q2: Will you ever include a server-side auto-refresh? I.e. On an interval, only when the room info has changed?
Q3: Will you ever include a client-side manul refresh button?
Q4: EDIT: Do you have plans to fix the issue where
Thanks,
BUG: I've noticed that, once a client (Client 1) joins a lobby, they will not receive room updates via
OnReceivedRoomListUpdate
AT ALL until they re-join the lobby, despite the fact that another client (Client 2) could have created a room inside the same lobby. Repro 100%. Running on a Quantum internal development cluster (via Erick) in EU region. Tested with two clients (different devices), and 5 clients (running as different instances on the same PC). I'm using the
PhotonNetwork.JoinLobby();
method with no arguments, autoJoinLobby is false. Q1: Is this intended behavior or a bug?
Q2: Will you ever include a server-side auto-refresh? I.e. On an interval, only when the room info has changed?
Q3: Will you ever include a client-side manul refresh button?
Q4: EDIT: Do you have plans to fix the issue where
OnReceivedRoomListUpdate
is called >4 times when you first enter a lobby?Thanks,
0
Best Answer
-
Thanks for responding. With your info, I've found the problem:
RESOLUTION
Because I want to support offline mode, I need to manually handle eachPhotonNetwork.connectionStateDetailed
. I do this in update in a big switch/case.
As it turns out, this resulted in callingPhotonNetwork.JoinLobby();
multiple times (up to 7 times) before connection was established. I assumed that JoinLobby would change the connectionStateDetailed state to a different enum value, but it does not.
This is why I received way more notifications than normal on room enter, AND whyOnReceivedRoomListUpdate
was NOT getting received afterwards.
My suggestion to you: When you call PhotonNetwork.JoinLobby, please enter a new state or have some kind of status flag that indicates you are "busy" doing so. Right now, you simply remain in state:ClientState.ConnectedToMaster
.
My assumption is that @Akrosh has the same issue.
Thanks for your help!1
Answers
-
@niki_walker_ubisoft thanx for reporting this but even from last 4 days em talking to photon for fixing this issue of not getting room list in lobby via
OnReceivedRoomListUpdate
do you go any work around for now to fix it?0 -
Hi @niki_walker_ubisoft,Q1: Is this intended behavior or a bug?
I have tried to reproduce the issue but haven't been able to do so. I have tested this on the Public Cloud as well as on the Cluster you have mentioned. Do you have any chance to share some code snippets you are using in the project like joining the lobby or creating the room with its RoomOptions?Q2: Will you ever include a server-side auto-refresh? I.e. On an interval, only when the room info has changed?
As far as I know the updated room list is sent to clients as soon as there has something changed on the server. So updates are sent to new players as soon as they have joined lobby and whenever an update for that room list is available.Q3: Will you ever include a client-side manul refresh button?
I won't say never, but in my opinion we currently don't need such a feature because the server sends an up to date room list to each client as soon as an update is available. If you have a certain use case for such a feature, please let me know.Q4: EDIT: Do you have plans to fix the issue where OnReceivedRoomListUpdate is called >4 times when you first enter a lobby?
I honestly haven't had this issue during my tests.
Hi @Akrosh,
I will have a look at your thread as well.0 -
Hi @niki_walker_ubisoft,
Thank you for choosing Photon!
Maybe there is an issue with the client not dispatching incoming commands properly, for example during scene loading, commands get buffered...0 -
Thanks for responding. With your info, I've found the problem:
RESOLUTION
Because I want to support offline mode, I need to manually handle eachPhotonNetwork.connectionStateDetailed
. I do this in update in a big switch/case.
As it turns out, this resulted in callingPhotonNetwork.JoinLobby();
multiple times (up to 7 times) before connection was established. I assumed that JoinLobby would change the connectionStateDetailed state to a different enum value, but it does not.
This is why I received way more notifications than normal on room enter, AND whyOnReceivedRoomListUpdate
was NOT getting received afterwards.
My suggestion to you: When you call PhotonNetwork.JoinLobby, please enter a new state or have some kind of status flag that indicates you are "busy" doing so. Right now, you simply remain in state:ClientState.ConnectedToMaster
.
My assumption is that @Akrosh has the same issue.
Thanks for your help!1 -
0