Hey Guys. Sorry if this question has been asked and answered before (please flick a link and i will shut up). Recently, i have been looking into creating a Multiplayer game. Specially since i heard about the Unity 5.x networking library (UNet? is that what its called? well, im going to refer to it as UNet for now), i wanted to give it a go. I tried out UNet (few tutorials and playing around on my own), and my first impressions were great, very easy to start off and very logical for complex things. But my second impressions pretty much convinced me that it was completely unusable for production level... not yet atleast. Maybe their scheduled 2nd or 3rd iteration when all the necessary bits and pieces gets released? For LAN games though, UNet would be great. The reason i say that is, UNet documentation is very unclear, the tutorial games/projects that were released simply didnt work (on the latest unity version), no real guides, and the matchmaking server was too laggy (simply didnt work with latest unity) and no real alternatives to the matchmaking server. Since then i have been looking around, and was interested in looking more into Bolt and PUN. My Requirements: Make an ONLINE multiplayer game. Sort of like a co-op map. 4 or maybe 8 players at max? Use Diablo or counterstrike as an example. minimal centralized servers or relaying messages (as this will increase lagg). Im aware you need to have a middle man server relaying messages due to NAT etc, but there is no need to have the server processing stuff. Simply one of the clients can act as a Host. Matchmaking. player 1 creates game. Player 2, 3, looks at a list of created games and finds player 1s game and joins, player 1, 2, 3 plays together. Scene changes while in the game. Transform and animation syncing (i probably wont use mecanim for movement, thats just asking for trouble). Ease of use/integration, and logical. For context, i found UNet to be super easy and logical, even the complex stuff (though it didnt meet my requirements). Decent support/tutorial/guides to get me off the ground. So my main questions are: Is there any other good alternatives besides UNet/Bolt/PUN/Forge? Is it practical to make your own? I have seen few guides/tutorials/examples of using a nodejs server etc. If so, do you have any pointers/guides or anything i should look at? What do people actually use these days? That is production ready, and compatible with range of devices/routers/conditions/lagg etc. What are the pros/cons of the options mentioned in 1 and 2. What can/cant they do? Ease of use, ease of integration, reliability etc. Thanks in advance.