Hi,
We're working on a simple MOBA-like game where users can connect to a Lobby with other players, then once they've selected their character they will then load into the game itself. I've read a bunch of the other threads on here and I wanted to make sure I was on the right track. Obviously during development, we're restricted to one server at a time so production deployment could change.
Our plan is to develop a single executable game server that can take, let's say two game modes:
FreeForAllLobby (FFAL) and FreeForAll (FFA)
We matchmake our users into a FFAL session which starts our game server into the pure lobby session. Once all the character selection is done, we run a server call for StartGame to start our FFA server. We pass the necessary information to the users with the specific Lobby ID so they can join directly.
In a production environment, we'd treat these as separate builds, correct? This would allow us to load more lobby instances on a single server since they would not be as resource intensive.
Does this seem like a good approach going forward? I currently have an "all in one" solution that moves the user straight from the lobby into the game session without ever leaving - it works but it feels like it's more of a headache to develop with so far whereas that clean break of Lobby/GameSession seems like it'd be easier to deal with.
If you have any questions about the approach, please let me know.
Thanks!
Dave