I am making a round-based cartoony minigame.
[Option #1] The current model works like this:
- Players join the game and spawn in lobby
- Game waits for enough players to start intermission
- If there are enough players, start setting up the round
- Start the round
- Round ends
- Present results
- Repeat
That model works, however I have been considering a different approach which I’ve seen used by @PlaceRebuilder that uses the TeleportService (I think) to teleport ready players to a place with pre-loaded assets.
[Option #2] This is how the new model could work:
- The start place has a max player count of 1
- Player joins the game
- Gui pops up which shows the menu (settings, shop, etc)
- Player can click start match at any time
- This puts the player into a queue with other players
- Player is sent to a place that needs more players OR Player and other ready players are grouped together and are sent to a place
- Upon joining, the place does pre-round checks then starts the round
- Round ends
- Presents results
- Player can choose to party up with the current players or go back to the lobby (start place) or vote for a rematch
Questions:
-
Which is the better option?
-
What caveats does each approach bring?
-
What limitations are there?
-
How tough is it to implement option #2?
-
What effect does option #2 have on player data (player stats in data stores)?
If you have any advice for me please do let me know.