Hello, Nakama community, I’ve been struggling for a while on which open-source tech stack should I use for my multiplayer game client-server backend architecture, I’m using the Unity game engine to build the game and I’ve come across multiple solutions for the server side including Mirror, Darkrift2, Fish-net, and Nakama, of all the solutions I’ve found Nakama is the only complete solution for a multiplayer game, however, I haven’t yet decided to use Nakama because I have few questions and I hope that the community will provide me with satisfying answers, but first I would like to give you an idea about the game I’m building.
I want to build a multiplayer battle royal mobile video game similar to PUBG and Call of Duty mobile. There are two modes of playing the game, the first mode is 5 players against 5 players which means there are 10 players per match, and the second mode is battle royal where there are 100 players per match consisting of 25 teams 4 players per team.
The first mode 5 against 5 is not difficult to accomplish because there are only 10 players and the map is small compared to the battle royal mode which means there aren’t too many objects to sync between players, the second mode however (Battle royal) is the problem because there are 100 players a match, the map is huge, and there are too many objects to sync between players including vehicles.
Now my questions:
-
Does Nakama support the rUDP protocol (Reliable UDP)? PS: am using Unity to build the client (The game).
-
Does Nakama provide the performance and latency required for smooth gameplay regarding the first mode of my game (5 players against 5 players)?
-
Is Nakama a good choice for a battle royal game where there are 100 players, a huge map, and vehicles (the second mode of the game)?
-
Does Nakama provide all real-time multiplayer capabilities, including synchronization of game objects, collision detection, and physics simulation?
Notes regarding the fourth question:
I’m curious how multiplayer networking with physics is implemented in Nakama. In the case of a battle royal game, I have a physical world with a large number of players and objects including large collections of weapons and vehicles controlled by different people. I’m anxious about hits, collisions, and physics, I would like to know how Nakama solves this issue.
Most games tackling this challenge will simulate the collision and physics world on the server, and have the clients predict movement.