I’m currently running into an issue with my UNet multiplayer game. I’m making use of the Unity matchmaker for the server browser functionality, but I’m wondering how to update matchmaking service with the current state of the game?
In my game there is a Lobby state of the game where players are free to join. After leaving this phase, nobody should be able to join the game until the game returns to the Lobby state. I can force disconnect new players when they connect (like the NetworkLobbyManager does) but I would much rather hide servers that are in this state from the server browser in the first place.
The CreateMatchRequest contains a flag for whether a server is advertised, which is basically what I want but I need to be able to update this during the lifespan of a match rather than when it is first creating it. If I destroy the match then everyone is kicked out of the match which is also not what I am after!
It seems like this would be a needed feature for any game with a server browser, for updating any dynamic server state such, as lobby state, current map etc, but I couldn’t find anything about it.
Hi, I am interested in this as well. Can someone answer this please?
Also, I can’t get more than two players to join a match, once the second player joins, the match disappears from match list. match list request returns empty on the third client.
I spent a lot of time trying to figure out how these things worked.
I think these features are just not ready yet. Too soon, can’t rely on documentation.
I tried to build my own master server, using NetworkServer / NetworkClient and basic messages.
This is not 100% finished but working good for the moment.
I found this way easier than breaking my brain against obsolete doc, and also I learned a lot.
@Zadirion
In your lobby or network manager > Advanced config, there is a Max Connections option. You must have more connections than real player (dedicated server is a connection for example).
Then window > services > multiplayer, there is a link to dashboard on unity website, with your project configuration. There is also a max connection field that should be filled with the same value.
I went to the network manager and set the connection to 20. In dashboard, there is a max players per room field, couldn’t find any max connection field. In any case, I set that to 20 just to test. The problem still persists. Are you sure this is the solution? Where is the max connections in the dashboard?
“Where is the max connections in the dashboard?” => it was max players per room
Do you have any errors, like CCU exceeded ?
Unity matchmaking is buggy, if you start and stop a game with 20 slots, these 20 slots won’t be cleared until hours…
In the dashboard you can have (a little) more info about current users.
I found the issue. Unity Pro needs to be activated for it to accept more than 2 player rooms for the game. This is weird, I saw nowhere this limitation documented. I’m using Unity Personal and don’t have a Pro license of my own, I had to test it with my workplace’s. Can anyone clarify this situation please?
FLX, thanks for all the help. It was odd. I reverted back to personal edition and it started working.
So, going to personal license->pro edition->personal license fixed it. Also, it worked after I cleared all the build data (library and obj). So I’m assuming clearing the project build data is actually what fixed it.