Questions about networking system for Unity3D

Hi guys, I am a newbie, and I am currently developing a Unity 3D defense game. The game features are as follows:

  • Players from different countries should be able to play together through a matchmaking system.
  • When each player presses the multiplayer button, a game loading popup should appear, and they should wait while the number of users joining the room is counted. When the required total number of players is met, the game should start.
  • When the game starts, assuming a total number of 4 players, 4 floating islands should appear, and each player should be placed on their own island. They should not be able to interfere with each other, but just observe.

Here are my questions:

  • What solution should I use to develop such a system?
  • Is it correct that a dedicated server is not necessary for a game like this?
  • I am considering solutions like Fishnet, Mirror, and Photon. I don’t mind if it’s paid, so please recommend the best solution for my game!

Thank you in advance!

Which platform(s) do you aim for?
A defense game is usually a great fit for Photon Quantum. It is deterministic, exchanges only input and works really well on mobile, too.