hi . i am new to unity networking and i started with unet to learn . What is a best way to perform following condition for an online game? players in my game click on battle button and then an algoritm picks tow players and makes a match for them . players will not see any game (room) list and all process must be automatic . how it should be develope ? i think i must have a server that just manage all algoritms and network match making. but what is the limitation for this purpose ? is there unet limitation or server hardware limit for too much player ? is there any useful tutarial or guide to develope such things?
This is a huge question that cannot possibly have a simple answer. I suggest making a very simple matchmaking work first, and trying to build from that, instead of trying to do it right in one go without any experience in matchmaking whatsoever…
So, how did you do that?
I am trying to do this as well (1v1 auto-matching Clash Royal-style system). I started by making a custom NetworkManager with a flag for Host vs Search (this can be randomized and automated as well down the line) but I am not sure how to control the minimum number of players in the game, and the game starts automatically with just one player (the host).
Looking at the Unity Network Meteoroid example, I learned that there are a lot of the variables and virtual or overloaded callbacks that I think I need in the NetworkLobbyManager subclass (minPlayers, etc.) and the NetworkLobbyPlayer (SendReadyToBeginMessage() etc.). But I don’t need any gui at all…
So I guess my questions to the community (and Unity networking team members if you’re reading these forums) are:
-
When is it appropriate or ideal to subclass the NetworkManager directly vs. the NetworkLobbyManager?
-
Is the NetworkLobbyPlayer useful / designed to be subclassed for my specific situation, where I don’t need a list of players or any gui really?
-
What other classes within the UnityEngine.Networking might be useful or necessary for my specific setup?
Cheers and thank you,
Arun