I started up 3 clients in rapid succession on my machine and they all tried to join the same matchmaking room at nearly the same time close to each other. I repeated this many times for testing purposes, and during one of the tests, I got two players being assigned the same player.Id, even though their player.ConnectUserId's are different. This shouldn't be possible right? Do I need to check for this condition in UserJoined()?
- Code: Select all
=====[ Room Started: MatchMakingRoom ]===
>User 69b890f7-284e-4b11-8bb9-d34f32089946 (1): Joined game
>User 621a27a1-d822-4628-b17a-c43f9d2b026c (1): Joined game
>User 60b286c6-f0bd-41dc-8217-05049a3d7105 (2): Joined game
My client connect code was pretty standard, unless I overlooked something. All variables were assigned appropriately.
- Code: Select all
client.Multiplayer.CreateJoinRoom(
roomID,
roomType,
isVisibleInLobby,
null,
null,
delegate(Connection connection)
{
playerIOConnection = connection;
playerIOConnection.OnMessage += AddToServerMessagesQueue;
},
delegate(PlayerIOError error)
{
Debug.LogError(error.ToString());
}
);
Also on the development server window the top player kept flickering on each screen update. I assume it's writing the first (1) and quickly rewriting with the second (1), since I only see the data for the second (1).
I used Secure Basic Authentication with a hash, if that matters at all.