Search Unity

Which network library is the best at the moment?

Discussion in 'Multiplayer' started by TiToMoskito, Oct 12, 2017.

  1. TiToMoskito

    TiToMoskito

    Joined:
    Jan 28, 2014
    Posts:
    66
    I want to make a game, where up to 6 players can play together and one if them should be the server/host.
    So i need a Matchmaking and a Nat Punchthrough service. I want to host them by myself.
    I also plan to make an console release.

    Is there any good network library, which i can use?

    UNet seems to be not updated anymore and when you take a look at the bug tracker/forum, it seems to be full of bugs.

    Bolt has removed their Zeus MasterServer and now you need to use their services. And if you plan to make an console release you need to contact them. (No one knows, what this means)
    And if you make more than 100k, you need to contact them...

    Forge Networking was a paid Asset and is now for free on Github. This say's a lot! The Asset Creator are not interested in their product anymore.

    TNet is good, but the support from ArenMook is not the best.
     
  2. hasanbayat

    hasanbayat

    Joined:
    Oct 18, 2016
    Posts:
    630
  3. TiToMoskito

    TiToMoskito

    Joined:
    Jan 28, 2014
    Posts:
    66
    It's to expensive for me, so Photon is no option for me.
     
  4. hasanbayat

    hasanbayat

    Joined:
    Oct 18, 2016
    Posts:
    630
  5. xVergilx

    xVergilx

    Joined:
    Dec 22, 2014
    Posts:
    3,296
    Unet is buggy in it's HLAPI department.

    LLAPI is great, and updated frequently. As for the HLAPI part - it can be completely replaced by HLAPI Pro (it's free, search on the forum). It fixes all bugs that HLAPI has.

    Photon is pricy and has no real way to scale it by yourself. Cloud is great, but no thx.

    Bolt, Forge (Free) is bit obsolete. Forge (Paid) on the other hand is great AFAIK.
    Haven't tried the rest.
     
    perevezentsev likes this.
  6. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,315
    none is better than the other one but all have specialty. so it depend on the type for game you wanna make
     
  7. TiToMoskito

    TiToMoskito

    Joined:
    Jan 28, 2014
    Posts:
    66
    Correct, im not a friend of this cloud services. I want to host the most by myself.

    I dont understand what you mean with "Forge (Paid) on the other hand is great" Forge is now on Github and cant be bought anymore and why is it great?

    It's an roundbased game with up to 4-6 players and i need something that uses rooms or where players can start an server by themself without open ports (Nat Punchtrough needed)
     
  8. xVergilx

    xVergilx

    Joined:
    Dec 22, 2014
    Posts:
    3,296
    My bad, last time I checked there was two versions of Forge, free and Remastered one (that was about 70$ or something).

    If the previous version that was paid is free now and open source I would've picked that one up. Because why not? It's great afaik.

    If you need support - well, you can ask here on the forum, or try hitting their discord.

    Try building a simple prototype with it, if it works and suits your needs - then go with it.
     
  9. TwoTen

    TwoTen

    Joined:
    May 25, 2016
    Posts:
    1,168
    Steam P2P is another option. But that's not really going to work to well if you proceed with your console release.
     
  10. neubiole

    neubiole

    Joined:
    Oct 15, 2017
    Posts:
    14
    It's hard to host on our own so it would be better to find a reliable network library to trust. Photon and cloud are viable options to consider.
     
  11. Fuestrine

    Fuestrine

    Joined:
    Feb 13, 2013
    Posts:
    590
  12. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,205
    If that were the case the asset on the store would no longer be receiving updates. Last update was this month.

    https://www.assetstore.unity3d.com/en/#!/content/38344

    Additionally the Github repository itself shows some activity after that date.
     
  13. Deleted User

    Deleted User

    Guest

    I would suggest LiteNetLib. I am currently using it. But you have to write something on top of it, because it is complete LLAPI lib. I use protobuf for serialization / deserialization, so my messages payload are not huge as well as latency for these techniques.
     
  14. peterpantss

    peterpantss

    Joined:
    Sep 24, 2014
    Posts:
    13
    This seems to be the most promising method. Can you explain how to use litenetlib? I place the scripts in my unity project and go from there? Since it's low level, I need to write my own networkmanager, identifies, network transforms, etc?

    I use bolt but don't think it has changed all that much in years. My favorite feature is the server authoritative movement. They no longer grant source code access though. I build my project expecting to replace bolt in the future.

    I also tried smoothsync from the asset store but wasn't sure how to make it authoritative. It seems like a good asset though. I have never heard of hlapi pro, thanks for mentioning it!
     
    recon0303 likes this.
  15. Deleted User

    Deleted User

    Guest

    There is LiteNetLibSample Unity project, it contains basic code for running / connecting to a server. And yeah, I am writing my own abstract HLAPI so it can be used with any llapi libs that supports simple byte[] transmission.
    https://github.com/RevenantX/LiteNetLib/tree/master/LiteNetLibSampleUnity
     
  16. AndLucLive

    AndLucLive

    Joined:
    Jul 13, 2018
    Posts:
    4
    Hi man.
    I'm developing a multiplayer network lib that supports all kind of games.
    It does some work for you like Nat Punch-through that you mentioned.
    I made it capable of working through TCP and UDP channels simultaneously so you can decide which messages should go through which channel.
    I'm still working on it but I have already a game, also in development, being made on top of this lib.
    It is working very well.

    If you want to give it a look here is the repo:
    https://github.com/andersonlucasg3/game-networking-lib-csharp

    There is no release yet, but it's coming soon (I think until August).
    So the updated code is in the develop branch.

    Hope it helps.
     
    Joe-Censored likes this.