I’m working on a local co-op game, where I’d like players to leave and enter areas without other players forcing to do so as well. I.e. one player can stay in a house, while the other player is outside of that house, but the house and the “outside” would be different maps.
That’s called CO-OP.
If it’s multiplayer, then there’s definitely Server/Client structure. The “HOST”, typically Player 0 [far left split] is also the server. All other connected players are Clients.
Yet, It’s still Multiplayer which requires a server (Player 0). There may not be any “Network” involved other than DHCP Local Host, Yet there’s always a Host/Server.
The server is the authority. Without an authority entity all clients can do as they wish without bounds. Without server syncing clients in an authoritative world, each could be in different locations, rotations, states on each screen and in each split.
Something has to sync and control it, thus a server… Authoritative Body.
Problem with all these solutions is, that we’re operating in one instance. There is no such thing as hiding the level. There is no client and no particular “network”-owner. And I don’t know how to tell a camera to hide certain elements (especially a whole level (and collision would still be active)), if that’s what you’re suggesting.
Currently I’m working with level instances and moving them (in a big level) around so for the player it looks like they’re in another instance, but for more flexibility I would rather not have ALL level instances in one big level. This will probably get messy over time.
There are so many games that you can play with other people on one machine. The term ‘Multiplayer’ is independent of being CO-OPerative or competitive. You don’t need a server (by definition) for something like a Tekken or Bomberman match that happens with two gamepads in front of a TV.
The only reason why I’m bringing this up is, that if I had a server/client (commonly used) structure it would mean, that I would probably have at least two instances running and it would be a non-issue to travel to different maps.
I’m not referring to more than one machine when I say client 0 is also the server. Nor am I saying that multiplayer has to be networked.
Mario Kart, Two buds on a couch, split screen. Player 1 is client 0 and server, Player 2 is client 1.
Server is not synonymous with physical hardware. It most often refers to software that is the authority of the game simulation.
Game Mode (GM) only resides on the server. GM initializes Game State (GS). The GS initializes the Player State.
If there’s no server you have no Game Mode, Game State, Player State. Much Less Game Session in which other players can join. Join doesn’t exclusively mean over a network.