Where to start with real-time multiplayer?

I’m just research options right now.

I’m planning a real time online multiplayer game which ideally will use Unity. Few questions about that.

  1. Does Unity come with any built in online multiplayer options? or does Unity offer any such services which will suit a real time game? are there any costs associated with this?
  2. If I don’t use any Unity based offering are there any server side technologies/services which have been known to work well with Unity?
  3. The targeted platforms for our game will be Windows and Mac (for hopefully a Steam release) when developing a multiplayer game with Unity would it being multiplayer mean different versions would be required for the Windows and Mac version? or they could be the same?

Thanks for any help.

I don’t know how experienced you are as a programmer or with Unity, but here’s my suggestion.

Firstly, Unity is able to create a network or lobby of players for you.

There are 3 main parts to it:

  • The MasterServer which works everything out(you hardly need to know about this apart from when you are setting up a network). The Unity guys have servers which you can use as a MasterServer but this is only for development, so if your going to publish your presumably brilliant game you will have to have your own MasterServer

  • The Server, which is one of the players, and will be used to set up a game

  • The Client, which is anybody that joins the servers network.

Full explanation of the MasterServer below:

https://docs.unity3d.com/Documentation/Components/net-MasterServer.html:

I would start off at looking at how you are going to connect your players in a network and start off by simply getting a server set up and a client joining and then just have a cube moving to see that your players are connected. After you have a network set up then you can start adding logic and leave graphics as last.

A good tutorial for this below (little outdated but it’s good for the basics):

http://cgcookie.com/unity/2011/12/20/introduction-to-networking-in-unity/

does Unity offer any such services which will suit a real time game?

Unity is just the developing environment I wouldn’t think that they provide you with a server or any similar payable service.
However, there are companies/websites that can provide you with a server with a monthly fee(don’t know how much it costs, but if your game sells well its worth it)

For your third question i’m not certain but I think that, as it says under your build settings, you will have to have different versions for Mac and Windows.
However… I presume that your players in a network are able to be on different platforms as long as your game is exactly the same on each platform.

Feel free to ask more questions.

Minchuilla