Search Unity

So, what am I supposed to use now ?

Discussion in 'Multiplayer' started by Hoshiqua, Aug 22, 2019.

  1. Hoshiqua

    Hoshiqua

    Joined:
    Jul 22, 2016
    Posts:
    77
    Hey !

    I recently wanted to get back into networking on Unity, using the lowest level stuff there is to develop my own sort of "networking engine" on top of it for learning purposes.

    Last time I did that two years ago, the obvious choice was UNet's LLAPI, as it was also the official, built-in solution.

    However, it has been deprecated since then, and according to the timeline I saw on some FAQ about transitioning from UNet to what will come next, there should already be an Alpha / released version of the next official networking API. However, I couldn't find anything about it and I suppose it was pushed back.

    So... what do I use now ? I could stick to UNet's LLAPI but if it's deprecated already something tells me it's a bad idea. I want to avoid using third party solutions because, well, they're third party and I'd rather go for the official stuff.

    As such I'm posting here in an attempt to get some more information about all this... Are we in a sort of "interregnum" period where only third parties can be considered as non-deprecated usable code ?
     
  2. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,792
    Seeing Unity's track record with deprecating stuff without introducing new solutions, I don't really understand why you're hesitant to use 3rd party stuff.
     
    g_a_p and Joe-Censored like this.
  3. Hoshiqua

    Hoshiqua

    Joined:
    Jul 22, 2016
    Posts:
    77
    Fair point.
     
  4. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    There's currently no fully supported first party networking solution, so I would say the answer is Yes.

    To play devil's advocate, 3rd party networking solutions can lose support with even less notice than Unity's. But that is a risk when using any solution you haven't written yourself to handle any part of your project.

    Just as an example with my current network game, I originally started working on it back in the Unity 4.x days and chose 3rd party uLink for networking. The developers of uLink didn't even announce support ended, instead just going radio silent with the occasional comment that the project was alive and well. To my knowledge they never released another update to uLink again, nor ever admitted it was dead. Between that, using a database system from the same company, and realizing the project was too big for my skill set at the time I put the project on hold indefinitely.

    A couple years ago I picked it back up and rewrote it from scratch, this time using Unet because I thought using a 1st party networking solution would have better long term viability and bug resolution. Wrong again. After having to troubleshoot several low level bugs, even though low level Unet is basically a black box which meant doing so was taking a lot more time than one would think, I ended up deciding to write my own networking solution from scratch.
     
    AcidArrow likes this.
  5. Foestar

    Foestar

    Joined:
    Aug 12, 2013
    Posts:
    350
    Forget any networking solution Unity throws out. Just pick through the ones on the asset store. Mirror, Darkrift, Photon, etc.

    Personally, I feel Photon is the best option for most people as you can easily set up a connection, give a nickname/id, create and join rooms, and have views that track your rigidbodies, transform, etc. Fast, easy, tons of tutorials out there. It is harder to find the ones between PUN 1 and 2 at first. But if you have any questions I suggest Info Gamer or First Gear Games on Youtube to follow.

    Edit: was a fast post so I forgot to mention it's best for most because most are trying to make games that have rooms/lobby that hold 4-8 people. PUN will do that for you super easy and limit the amount of data wasted.
     
    Joe-Censored likes this.