The Photon Forum
is Closed Permanently.

After many dedicated years of service, we have made the decision to retire our Forum and switch to read-only: we´ve saved the best to last! Your search result can be found below. Plus, we offer support via these channels:

Try Our
Documentation

Please check if you can find an answer in our extensive documentation on PUN.

Join Us
on Discord

Meet and talk to our staff and the entire Photon-Community via Discord.

Read More on
Stack Overflow

Find more information on Stack Overflow (for Circle members only).

Write Us
an E-Mail

Feel free to send your question directly to our developers.

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

alex_g
2018-05-24 12:49:17

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.

Comments

alex_g
2018-05-24 13:11:28

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
2018-05-24 13:13:27

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.

alex_g
2018-05-24 13:55:01

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
2018-05-25 10:29:45

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.

alex_g
2018-05-25 13:05:21

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
2018-05-25 13:33:48

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.

alex_g
2018-05-25 15:55:03

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
2018-05-28 13:15:15

OK. Please keep us posted.

alex_g
2018-05-28 14:43:52

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!

alex_g
2018-05-28 14:48:09

(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
2018-05-28 15:12:06

Thank you for getting back to us about this and all the details.

Back to top