Guidance Needed on Multiplayer Development with Unity

TLDR: I want to create a game like Lethal Company/Content Warning. I have a fair bit of game dev experience but no previous multiplayer game dev experience (using Unity). What would the roadmap and tech stack be?

Hey everyone, I will get straight to the point. I have two years of game development experience with Unity (a couple of game jams, projects, and internships), but nothing too ambitious.

I have a game idea resembling Lethal Company and Content Warning (in terms of multiplayer and gameplay), but I have never worked with multiplayer, so I did extensive research. I didn’t take any networking classes during my CS degree, so that’s that.

What I want is the following functionality:

  • Players can host a session/lobby for other players to join. I believe this can be satisfied with Client-Server network architecture (?). I also want to use Steam for this purpose, but I got lost quickly looking that up.
  • I also want voice chat (proximity) and text chat, but I think this part is more straightforward.

I was inclined to use Netcode for GameObjects. However, I see a LOT of tech stack all over the place. Would appreciate any advice on this, thank you for your time.

“Looking stuff up” isn’t really how gamedev is done.

Yes, you do look stuff up once you have something going and run into an issue.

But you need to have something going first.

What you list as requirements are just basic multiplayer needs, something you can do with any tech stack.

Additionally, what user A says is the greatest tech stack will be the tech stack that user B hates with a passion. Who knows how you’d feel about it?

About the only thing you can look up is to get a rough feeling for how well-supported a particular tech stack is, how many tutorials there are, do those tutorials actually work for you, how many people use it, how often they post about issues, how well those issues are resolved.

And even then it will only be a distant proxy for your own struggles ahead doing the type of game you want once you push through to game completion.

If you really are paralyzed with fear about picking a wrong tech stack, pick two or three and go do an intro tutorial for each one, take notes about your experiences so you can compare afterwards, then base your choice on that experience.

Two steps to tutorials and / or example code:

  1. do them perfectly, to the letter (zero typos, including punctuation and capitalization)
  2. stop and understand each step to understand what is going on.

If you go past anything that you don’t understand, then you’re just mimicking what you saw without actually learning, essentially wasting your own time. It’s only two steps. Don’t skip either step.

1 Like

I appreciate the effort and the guidance. I am already working full-time, and I have other things going on that eat up my time. Hence, I get very little time to work on my game development, thus was the need to ask for which tech stack would be “better” in terms of its ease of use to someone who has never touched networking or anything related at all.

“What you list as requirements are just basic multiplayer needs, something you can do with any tech stack.” - I was unsure of the very fact that whether you can do these with “any tech stack.” Sure, one can argue that you can find whether or not the tech stack you are going for would support your needs by a simple Google search. However, the reason forums like this exist should be to guide/tell their own experiences of one to another, so it would at least be “leading” in some way, no? That way, I would spend less time on which one to pick by testing them all.

Perhaps I was unclear about what I was asking for in my initial post. I was looking for a simple response like:

“X is better for this and easier in this aspect, and Y is better if you are going for that.”. Regardless, thank you for your effort to help, I appreciate it.

Product Manager for Multiplayer Onboarding here :raised_hand_with_fingers_splayed:

Hi @brkyldrn, we’ve made this process quite simple now for new multiplayer developers. I strongly suggest you read this quick overview of what new tools and services can help you understand the basic tech stack and set up you’d need for your game. The Multiplayer Center does a lot of this homework for you.

After which I highly recommend you review our Getting Started with Netcode for GameObjects Learn Course and our Bitesize Samples repository. Here, you can also find our experimental samples such as the Multiplayer Use Cases sample that will guide you through specific API or systems commonly used in Netcode for GameObjects.

If you already have a good idea about what game you want to create and the tech stack you want to use to start prototyping, feel free to download our Small Scale Competitive Multiplayer Template in the Unity Hub and get started on your game design.

1 Like

I’m writing up my journey to Write Better Netcode if you want to tag along.

This is for advanced users to showcase what’s needed for game production, specifically including all those things tutorials don’t even consider.