Crossplatform Windows and Andriod. Clients wont connect to the same room.

Options
Hello,

I am developing an application in Unity and I am using PUN 2 for multiplayer networking. I want the Windows client and the Android client (Oculus quest 2) to be able to join the same room. I made sure to sync the region, appid and version in both projects but both clients still end up in different rooms when I run ConnectUsingSettings() with the same roomToJoin. The clients of the same platform have no problem connecting to the same room.

I don't know if it is relevant but the projects are running different rendering pipelines(HDRP and URP) so the players are technically in different scenes since we had to make different versions of the scene for the different pipelines. Another thing I have noticed is that in the supportlogger messages, the GameServer value is slightly different in the clients of different platforms. For example: one would be x.xxx.xxx.10 and the other would be x.xxx.xxx.8 .

I would be grateful if anybody has an idea why this might be happening.

Comments

  • JohnTube
    JohnTube ✭✭✭✭✭
    Options
    Hi @Earith,

    I'm quoting my reply via email as I see you have also opened a duplicate support channel there also, but from now on, let's continue here.

    Thank you for you understanding and cooperation.
    Using different rendering pipelines or different scenes does not affect matchmaking.
    The difference in GameServer address is a good hint.

    If the SupportLogger from both clients show the same Region, AppId and AppVersion yet different servers I would check:

    - room name (PhotonNetwork.CurrentRoom.Name), maybe you are joining different rooms? SupportLogger should log this.
    - cluster (PhotonNetwork.CurrentCluster), you could force the default one by appending '/default' to FixedRegion. SupportLogger does not log this so I would add it and maybe we should. Although it's highly unlikely this is happening on the public cloud but who knows.

    How do you enter room by the way? Which method do you call?
  • Earith
    Options
    Hi @JohnTube,

    Thank you for your swift response. I checked the room names, and I am 100 percent sure they are the same. I added /default to the FixedRegion but that did not solve the issue.

    I am assigning the roomToJoin variable and then using PhotonNetwork.JoinOrCreateRoom(GameSettings.roomToJoin, null, TypedLobby.Default); line to join the room.
  • JohnTube
    JohnTube ✭✭✭✭✭
    Options
    Hi @Earith,

    Are you mixing different PUN versions and using different Unity project per platform?
    Please share the logs from the two clients (we need SupportLogger output + CurrentCluster).
  • Earith
    Options
    Hi @JohnTube ,

    We are using different projects for the different platforms.
    The PUN versions are:

    PC: Pun: 2.22 Photon lib: 4.1.4.5
    Oculus: Pun 2.26 Photon lib: 4.1.4.8

    Here are the logs for the clients:

    PC:
    [22.437] SupportLogger OnCreatedRoom(Room: '1e47af60-f19b-4afe-8052-b67583a075da' visible,open 1/0 players.).  GameServer:5.188.110.10:5056
    [22.438] SupportLogger OnJoinedRoom(Room: '1e47af60-f19b-4afe-8052-b67583a075da' visible,open 1/0 players.).  GameServer:5.188.110.10:5056
    [32.48] SupportLogger Rtt(variance): 22(6). Since receive: 2ms. Longest send: 1ms. Stats elapsed: 9sec.
    Longest delta between Send: 145ms Dispatch: 509ms. Longest callback OnEv: 255=2ms OnResp: 226=3ms. Calls of Send: 190 Dispatch: 493. Ping min/max: 15/23
    CurrentCluster: default
    

    Oculus:
    [27.684] SupportLogger OnCreatedRoom(Room: '1e47af60-f19b-4afe-8052-b67583a075da' visible,open 1/0 players.).  GameServer:5.188.110.8:5056
    [27.685] SupportLogger OnJoinedRoom(Room: '1e47af60-f19b-4afe-8052-b67583a075da' visible,open 1/0 players.).  GameServer:5.188.110.8:5056
    [37.568] SupportLogger Rtt(variance): 19(10). Since receive: 23ms. Longest send: 1ms. Stats elapsed: 10sec.
    Longest delta between Send: 138ms Dispatch: 466ms. Longest callback OnEv: 255=3ms OnResp: 226=4ms. Calls of Send: 300 Dispatch: 500. Ping min/max: 14/20
    CurrentCluster: default
    
  • JohnTube
    JohnTube ✭✭✭✭✭
    Options
    You need to use the same PUN version or modify PhotonNetwork.PunVersion as it's suffixed to the AppVersion by design automatically. Read more here.