Let's put that I'm making a moba game. Whenever there are 10 players queuing, a new game room (instance) will be created and they will be sent into that new game room just like a typical online game. So if there are 30 concurrent players, there will be a total of 3 game rooms running. right?

Can someone pls explain me in general how the process of creating a new room (instance) and putting the players there works. I'm struggling to find tutorials online as most of the tutorials are about client => host connections. Btw, I'm using Unity and MLAPI to study.

Here is my idea. Please clarify me if the idea is the correct and efficient approach. There will be a lobby server to which all the players will connect to queue the game. If the queue has reached 10 players, a new game instance with gameplay scene loaded will be run with some command line arguments, a new server connection will start there and the 10 players will be removed from lobby server connection and will have to connect to the new instance's connection.

  • \$\begingroup\$ One of the best ways to find out whether or not your idea is "correct" is to try it. If it works with no problems, then it's correct enough for your present needs. If you do encounter a problem, then you can ask a more specific question focused on solving that particular problem. \$\endgroup\$
    – DMGregory
    Jul 10 at 19:18
  • \$\begingroup\$ My bad I didn't mention it well in my post. What I really want to know is, is my idea the correct approach just like other developers are doing. My idea must be working, but if the method is not correct and efficient, I want to know the correct and efficient approach. I have edited my post to reduce the confusion anyway. \$\endgroup\$
    – Big Daddy
    Jul 10 at 19:25
  • 1
    \$\begingroup\$ I generally advise against asking "is my approach good/correct?" on this site. It's not as informative a question as it might seem. There's very rarely one "correct" approach in games, or one obvious optimum in terms of efficiency. Different games will optimize for efficiency along different metrics — things like server load, matchfinding time/latency, scalability, various ways of evaluating match quality, etc... What matters is "is your approach good enough for your game's needs", and you are in the best position to evaluate that. \$\endgroup\$
    – DMGregory
    Jul 11 at 12:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.