Thoughts on MP Game Design

I have been learning Panda3d for a bit now and have went through some tuts so I’m a total expert now :slight_smile: ha…

However, I wanted to take the panda3d tutorial (Panda Chan) and make it ‘multiplayer’ as a beginning shell for my game idea.

Which got me to a overall design question regarding server-client architecture and would be curious for anyone’s input if they have experience.

I see three scenarios for this game idea. I would not be super keen on the idea of paying for dedicated servers for my first time creating a small 3-4 player MP game. I thought most of these small rogue like 3-4 player games (Risk of rain, for example) use one of the players as the ‘server’ for the game.

So I see this as two possible scenarios for me then but am curious if I am wrong on players being the hosts for small multiplayer games.

I have provided my thoughts in the images below to explain better.

Just curious about the implementation- It seems treating the host as a client that connects to the server would be easier to code, I wonder about resources if the host then has to have two copies of everything in memory. Also, how much of the panda3d engine is needed to handle game logic vs. game rendering. Is there a convenient decoupling strategy for servers that don’t render?

It seems in someways better for system resources for the host to run a single client that serves as the ‘authoritative’ client and dictates to the other players. I am curious about details of implementation when I treat one client differently.

Curious if anyone here has experience or thoughts on this? Am I off base on how these things are done? I’m only made it to the end of comp sci before I convinced myself chemistry was a better degree. (Spoilers - it’s probably not)

How I think I want to do it…
server-client

Maybe better?

Probably the most ‘secure’ but definitely not what I want to do as an amateur…
dedicated