Best solution for low bandwidth multiplayer game

Hi, I’m building a puzzle game which will have multiplayer (with matchmaking) and I’m looking for best solution for it. There’s a lot of going on with Unity Multiplayer (FPS especially) but I got a feeling I might get away with something really simple but I want someone more experienced people thoughts on this.


Let’s say game is similar to Pentominos (see image) where user needs to fill all grid with given puzzle pieces. Essentially this a singleplayer game but if we take it to multiplayer level, each player would be filling their own grids as fast as they can. Who does it first - wins. Main network traffic - each player would need to see other players grid 157938-game-example.png.

That’s basically it, I’m looking for guidelines (or maybe some examples?) how would you implement this? I already have my own dedicated server that has all players info like “coins, rank, etc” so I assume I could use it as “matchmaking server” too?

Key points:

  • Matchmaking on your own dedicated server. How to? Brief guidelines?
  • Connecting two players to share low bandwidth data. How to? Brief guidelines?

I’ve decided to try Mirror asset due to the following reasons:

  • It seems it has high level API, built in
    KISS principle which should make
    it easy to use.
  • It can do everything I would need for this project (double checked with people on Mirror’s discord chat)
  • Also this asset is constantly being updated with all changes Unity is currently making to their networking, which is really promising.
  • There are many people using it so there is really low chance of this going to deprecate
  • Really high ratings on Unity
  • It’s completely free

If anyone doesn’t seem to like Mirror, I would suggest to try @dajohnso solution, that he described on his reply to my question. I would go for that one if not Mirror.