Setting up matches

I looked at a few tutorials on match making. But nothing is close to what I’m thinking about.
Maybe someone would have more incite on this and where/what to start coding.

I want a game that sets up matches from a pool of players queued. Then starts a different game with only them players from the first server picked. Not even sure how to go about that …

Would the 1st server be a 1 player game? Would I need to make the 2nd sever private?
Is this something I would have to do with Places inside the same game?

1 Like

Ok, so if I understand you basically want a room (the server) with lots of players and you want to pick some players? (Or a queue, ex. the server will remember who joined the game in order and put those people in a separate match-making server?)

The other tutorials you were looking at would be good for everything but the player-selecting thing. (ex. Use the tutorial for making the separate server and teleporting but remove any of the selecting players from the tutorial)

A match maker that starts a game (a new private game) with the people queued to play. Not sure how that is set up … Or if the match maker itself could just be a 1 player game leading to the matches made.

So this would be not too difficult to achieve. Just have a server script in ServerScriptService that appends the player’s name to a list whenever they leave (or remove when they leave the game) and when enough players are in the game, take the first 6 players of the queue, and delete those player names from the list when they get teleported. (For testing I would turn on the local play test in studio, where you can get a couple of other clones of your characters to test the system out)

local Server = game.ServerID

local Player1 = game.Players:GetPlayerFromCharacter(Player.Character)

local Player2 = game.Players:GetPlayerFromCharacter(Player.CharacterOrNextCharacter)

server:Teleport(Player1, Server)

server:Teleport(Player2, Server)

If you’d like to get more technical and allow matchmaking for people in different servers, you should look into MemoryStoreService. It’s like DataStoreService, but with much faster read/write speeds/limits for these exact scenarios.

This video is a good visual as to how MemoryStoreService works and is a resource I personally used to learn how to use it.

Once you understand how it works, I’m sure you could quickly figure out how to make a queue system.