Room Visibility / ConnectReytryInterval

We've got Photon Server running on our server, can connect and create rooms fine. The problem is that from the master server the created room is intermittently not visible, making it difficult for others to join the room.

I noticed that it would be visible for 15 seconds, not visible for 15 seconds, then visible again for 15 seconds, then not visible for 15 seconds, etc. So I edited the value of the "setting" node with the "name" attribute set to "ConnectReytryInterval" in the Photon.LoadBalancing.dll.config file for GameServer1 and GameServer2 in deploy/Loadbalancing, changing it to 4. I re-started Photon and sure enough, the room visibility now cycles with a frequency of 4 seconds.

My questions are:
1. Can I make the value 0 and have the room always visible, and if so are there any negative effects to performance, etc.?
2. Does the value have to be an int or can it be a float - if 0 is bad could I do 0.5?
3. Is there some other approach I should take to ensuring room visibility from the master server?

Thanks in advance for insights anyone can share.

Comments

  • Room visibility does not have to do with the ConnectRetryInterval. Something else is going on here.
    When clients create a room on the master, they are asked to switch to the game server. If they connect there, the room gets created and is visible in the list (unless you make it invisible).
    Are you sure the clients arrive on the game server?

    The game server's config has to be adjusted to your server's IPs.
    viewtopic.php?f=17&t=1102&p=5470&hilit=LoadBalancing.dll.config#p5470
  • Tobias

    Thanks for the reply. I've got the config files set so that all clients can connect to the master server. I can have a client successfully create a room. I toggles visible/not visible to the other clients connected to the master server at the frequency, in seconds, matching the setting in ConnectReytryInterval - currently 1.

    <setting name="ConnectReytryInterval" serializeAs="String">
    <value>1</value>
    </setting>


    In Unity I have the client written so that if it tries to connect to the room and it doesn't exist it tries again in 0.5 seconds; an inelegant but working solution. That is okay for now because I only ever have the one room name because I'm testing, but ulitmately I want clients to be presented with a list of rooms to choose from but I don't want rooms popping in and out of that list.

    In Photon.LoadBalancing.dll.config I've got the following set:

    <setting name="PublicIPAddress" serializeAs="String">
    <value>OUR_SERVER_IP_ADDRESS</value>
    </setting>


    I've also got

    <setting name="MasterIPAddress" serializeAs="String">
    <value>OUR_SERVER_IP_ADDRESS</value>
    </setting>


    instead of 127.0.0.1 because rooms are never visible on the master server otherwise.

    What do you think the issue is causing the room to show/hide?
  • I'm sorry but I'm out of ideas.
    There is no "visible for 15sec, then invisible for 15sec" happening in them. If a room is invisible or full, it will be removed from the list. Else it is on the list.

    Can you please use one of the provided demos to check how everything is supposed to work? We show how to list rooms, etc.
  • Tobias

    The included DemoWorker behaves the same as what I wrote. The room room name and "JOIN" button next to it will show for 1 second, then the room name goes away and "..no games available.." shows for 1 second, then the process repeats. I've experimented, and the toggle frequency always matches whatever I've set as the value for

    <setting name="ConnectReytryInterval" serializeAs="String">
    <value>1</value>
    </setting>


    in Photon.LoadBalancing.dll.config under C:\PhotonServer\deploy\Loadbalancing\GameServer1\bin and C:\PhotonServer\deploy\Loadbalancing\GameServer2\bin.

    I've re-booted the server computer and Photon, still does the same thing.

    The room itself doesn't seem to be dropping, I can walk the demo guy around while the room visibility toggles and once a client joins the room they are fine. It's just the room isn't always showing in GetRoomList(). It's darn peculiar, and more than a little frustrating.

    I can see the toggling in the logs; these same snippets are repeated over and over at the end of the following:

    MSMaster.log
    2012-06-28 10:24:54,795 &#91;31&#93; DEBUG Photon.LoadBalancing.LoadBalancer`1 &#91;(null)&#93; - new min server is GameServer(3cabf765-9b88-4f77-a18a-1aa3472f8974) at 67.23.114.59:4531/67.23.114.59:5056 with load 0 - old one had load 
    2012-06-28 10:24:54,795 &#91;31&#93; INFO  Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - OnDisconnect: game server connection closed (connectionId=57, serverId=db79730e-0e69-4dbd-9470-0d421ba28219, reason=ManagedDisconnect)
    2012-06-28 10:24:55,809 &#91;26&#93; DEBUG Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - UpdateGameServer - from LoadLevel Lowest to Normal, PeerCount 3
    2012-06-28 10:24:55,809 &#91;26&#93; DEBUG Photon.LoadBalancing.LoadBalancer`1 &#91;(null)&#93; - updated current min load to 2
    2012-06-28 10:24:55,809 &#91;19&#93; DEBUG Photon.LoadBalancing.MasterServer.MasterApplication &#91;(null)&#93; - Received init request from game server
    2012-06-28 10:24:55,809 &#91;19&#93; INFO  Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - game server connection from 67.23.114.59:58295 established (id=59)
    2012-06-28 10:24:55,809 &#91;26&#93; DEBUG Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - OnOperationRequest: pid=59, op=1
    2012-06-28 10:24:55,809 &#91;26&#93; DEBUG Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - Received register request: Address=67.23.114.59, UdpPort=5056, TcpPort=4531, WebSocketPort=0, State=Normal
    2012-06-28 10:24:55,809 &#91;26&#93; DEBUG Photon.LoadBalancing.LoadBalancer`1 &#91;(null)&#93; - new min server is GameServer(db79730e-0e69-4dbd-9470-0d421ba28219) at 67.23.114.59:4531/67.23.114.59:5056 with load 0 - old one had load 
    2012-06-28 10:24:55,809 &#91;26&#93; INFO  Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - OnDisconnect: game server connection closed (connectionId=58, serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974, reason=ManagedDisconnect)
    2012-06-28 10:24:56,823 &#91;16&#93; DEBUG Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - UpdateGameServer - from LoadLevel Lowest to Normal, PeerCount 7
    2012-06-28 10:24:56,823 &#91;16&#93; DEBUG Photon.LoadBalancing.LoadBalancer`1 &#91;(null)&#93; - updated current min load to 2
    2012-06-28 10:24:56,823 &#91;19&#93; DEBUG Photon.LoadBalancing.MasterServer.MasterApplication &#91;(null)&#93; - Received init request from game server
    2012-06-28 10:24:56,823 &#91;19&#93; INFO  Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - game server connection from 67.23.114.59:58296 established (id=60)
    2012-06-28 10:24:56,823 &#91;25&#93; DEBUG Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - OnOperationRequest: pid=60, op=1
    2012-06-28 10:24:56,823 &#91;25&#93; DEBUG Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - Received register request: Address=67.23.114.59, UdpPort=5056, TcpPort=4531, WebSocketPort=0, State=Normal
    2012-06-28 10:24:56,823 &#91;25&#93; DEBUG Photon.LoadBalancing.LoadBalancer`1 &#91;(null)&#93; - new min server is GameServer(3cabf765-9b88-4f77-a18a-1aa3472f8974) at 67.23.114.59:4531/67.23.114.59:5056 with load 0 - old one had load 
    2012-06-28 10:24:56,823 &#91;25&#93; INFO  Photon.LoadBalancing.MasterServer.GameServer.IncomingGameServerPeer &#91;(null)&#93; - OnDisconnect: game server connection closed (connectionId=59, serverId=db79730e-0e69-4dbd-9470-0d421ba28219, reason=ManagedDisconnect)
    

    GSGame1.log:
    2012-06-28 10:24:51,753 &#91;26&#93; INFO  Photon.LoadBalancing.GameServer.GameApplication &#91;(null)&#93; - Reconnecting to master at 67.23.114.59:4520, serverId=db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:51,753 &#91;21&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - connection to master at 67.23.114.59:4520 established (id=57), serverId=db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:51,753 &#91;26&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Registering game server with address 67.23.114.59, TCP 4531, UDP 5056, WebSocket 0, ServerID db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:51,753 &#91;26&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Successfully registered at master server: serverId=db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:52,767 &#91;24&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - connection to master closed (id=57, reason=ClientDisconnect, detail=), serverId=db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:53,781 &#91;28&#93; INFO  Photon.LoadBalancing.GameServer.GameApplication &#91;(null)&#93; - Reconnecting to master at 67.23.114.59:4520, serverId=db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:53,781 &#91;21&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - connection to master at 67.23.114.59:4520 established (id=59), serverId=db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:53,781 &#91;28&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Registering game server with address 67.23.114.59, TCP 4531, UDP 5056, WebSocket 0, ServerID db79730e-0e69-4dbd-9470-0d421ba28219
    2012-06-28 10:24:53,781 &#91;28&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Successfully registered at master server: serverId=db79730e-0e69-4dbd-9470-0d421ba28219
    

    GSGame2.log
    2012-06-28 10:24:52,767 &#91;24&#93; INFO  Photon.LoadBalancing.GameServer.GameApplication &#91;(null)&#93; - Reconnecting to master at 67.23.114.59:4520, serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:52,767 &#91;20&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - connection to master at 67.23.114.59:4520 established (id=58), serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:52,767 &#91;24&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Registering game server with address 67.23.114.59, TCP 4531, UDP 5056, WebSocket 0, ServerID 3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:52,767 &#91;24&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Successfully registered at master server: serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:53,781 &#91;28&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - connection to master closed (id=58, reason=ClientDisconnect, detail=), serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:54,795 &#91;31&#93; INFO  Photon.LoadBalancing.GameServer.GameApplication &#91;(null)&#93; - Reconnecting to master at 67.23.114.59:4520, serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:54,795 &#91;20&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - connection to master at 67.23.114.59:4520 established (id=60), serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:54,795 &#91;31&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Registering game server with address 67.23.114.59, TCP 4531, UDP 5056, WebSocket 0, ServerID 3cabf765-9b88-4f77-a18a-1aa3472f8974
    2012-06-28 10:24:54,795 &#91;31&#93; INFO  Photon.LoadBalancing.GameServer.OutgoingMasterServerPeer &#91;(null)&#93; - Successfully registered at master server: serverId=3cabf765-9b88-4f77-a18a-1aa3472f8974
    

    Do these logs shed any light on the situation?

    Thanks
  • Huzzah! we installed v3-0-37-3631 today, the room dropping issue has gone away. :D

    Install and configuration via LoadBalancing IP Config was a breeze, we were up and running almost immediately. Thanks!