Hey @SkankHunt1000
Before we start, here’s a quick explanation:
- StandAlone: This is when you open the game without listening for incoming connections. Most games start in this mode until a player logs in or creates a session.
- ListenServer: When you create a session, your game becomes a ListenServer, allowing other clients to connect.
- Client: A player who joins a session as a participant, connecting to a ListenServer or a dedicated server.
- Dedicated Server: This is used for hosting matches without an active client playing on the server. It’s common in competitive games where authority is managed by a remote server, preventing players from modifying data and cheating. In contrast, a ListenServer player could potentially alter data.
In editor:
When you play as StandAlone in the editor, it creates a game where no one can join. So, if you launch with two players in StandAlone mode, it will create two separate “game instances” —one for each player. They won’t be connected or share the same game world, essentially playing two independent sessions.
When you play as a ListenServer with two players, one of them (usually the viewport in the editor) will act as the server, while the other will be a client connected to it.
On the other hand, if you start as a ListenServer with only one player, it will function similarly to StandAlone mode, with the key difference being that other players can join your game, whereas in StandAlone mode, they cannot
Finally, if you play as a Client, the editor will launch a dedicated server in the background. Regardless of whether you have one player or more, all of them will be clients connected to this background dedicated server.
A. It’s not that common; you switch when you want to test a standalone connection flow between one client and another. In your case, I would use ListenServer, first playing with one player to test single-player, and then with two players to test multiplayer.
B. It depends. If you plan to support dedicated servers, you should test using Dedicated for multiplayer. If the idea is to let one player host, you should test using ListenServer with at least 2 players. If you plan to have both (like the game Ark), you should test both. If multiplayer support is critical for your game, I recommend testing it from the beginning, as late-stage development may require major refactors due to the different initialization flows for clients and servers.
I think its all, but let me know if i miss something, have a great day!.