Getting error 32748 (user does not exist in game) when using room.playerTTL setter

Hi,

The game I'm working on has been working fine up to now using the room options playerTTL set to a specific value at room creation. Players disconnecting during game were saved and game would be rejoined upon reconnecting as expected.

After upgrading to 1.89, in order to solve timing matchmaking issues, I tried changing the playerTTL to 0 at room creation, then setting it to the correct value once matchmaking was successful (using room.playerTTL = value). Now, when players disconnect, they get the error 32748 and are unable to rejoin the game.

The debugger is showing the correct playerTTL value for the room on both clients and the other player is still active in the room.

Any idea? Thanks.

Answers

  • Worth noting: I restored the room creation playerTTL option to 300000 then called room.playerTTL = 0 at matchmaking time, and this resulted in the player being able to reconnect. It looks like room.playerTTL is not working as intended.
  • JohnTube
    JohnTube ✭✭✭✭✭
    Hi @alex_g,

    Thank you for choosing Photon!

    in changelog of version 1.88 you can read:

    Changed: The room option "CheckUserOnJoin" is now always used. This means you have to use UserIDs to be able to rejoin a room. This was enabled before in most cases but now it's mandatory. If you don't set a userID, the server will assign a temp one for the "session".


    So for PUN version >= 1.88 in order to rejoin a room, you will need to reuse the same UserID as before.
  • Hi JohnTube,

    Thank you for your quick answer. However, as far as I can tell, the userIDs stay the same.

    I'm getting a default userID at initialization. In one session (never quitting the application), I disconnect then attempt reconnecting.

    I printed PhotonNetwork.AuthValues.UserId at both initialization and at reconnect times, and the value was the same (97c20d32-c16e-428f-a726-ac9968f3f380). Am I missing something here?

    Thank you.


  • JohnTube
    JohnTube ✭✭✭✭✭
    edited May 2018
    Hi @alex_g,

    Are you using Photon Cloud or self-hosted Photon Server?
    Here is a self-contained test script that confirms that updating PlayerTTL and EmptyRoomTTL inside the room works as expected: https://hastebin.com/vadacaremu.cs

    PUN version used: 1.88.
    I update EmptyRoomTTL to test it and also to keep a room alive for a rejoin.
  • I'm getting a 32758 error running this script (game does not exist) whenever connected to the master, which leads me to believe once more that the EmptyRoomTtl is not taken into account.

    I will attempt re-importing a clean photon package after deleting my entire repository, see if there is something wrong with my install.
  • JohnTube
    JohnTube ✭✭✭✭✭
    hey @alex_g you did not answer my question:

    Are you using Photon Cloud or self-hosted Photon Server?

    If you are using self-hosted Photon Server then you should know that this feature is relatively new compared to the latest Photon Server SDK.
    The feature should be available in the next release but no ETA sorry.
  • I'm using Photon Cloud.

    I tried the sample code in a new project and it works as expected. Then I deleted from my main project every folder found in the test project, and copied the files over. I'm still getting the 32758 error (game does not exist.)

    The only difference is that we have some code override in NetworkingPeer.SetApp() to get an appID from our gameserver instead of the function parameter.

    At any rate, it seems to be somehow on our side. I'll dig some more and post updates if I find what is the cause.

    Thank you for your time.
  • JohnTube
    JohnTube ✭✭✭✭✭
    OK. Please keep us posted.
  • I found out the root of the issue.

    Our company is using an inside photon cloud. When receiving a server from that cloud, I get the results aforementioned. When I test with a default Exit Games server, it works as you described.

    Now that the issue is more clear, I will contact our official support channel. Thank you!
  • (and the 32758 error was unrelated, it was from a script running in the background that was destroying the room. I was however still reproducing the 32748 error using our inside photon cloud server.)
  • JohnTube
    JohnTube ✭✭✭✭✭
    Thank you for getting back to us about this and all the details.