Search Unity

  1. Unity 2019.1 is now released.
    Dismiss Notice

Noble Connect - Relays and Punchthrough

Discussion in 'Assets and Asset Store' started by thegreatzebadiah, Mar 15, 2019.

  1. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    Adds Relays and Punchthrough to UNet and Mirror

    Asset | Docs | API | FAQ | Website
    Introducing Noble Connect, a brand new solution designed to add relays and punchthrough to UNet and Mirror.


    The relays provide a guaranteed connection while punchthrough reduces latency and saves you money by connecting players directly whenever possible.

    The free version comes with 8 CCU and 24GB / mo of bandwidth over the relays, which should be sufficient for some substantial testing.

    We also have a paid Starter Pack that comes with 100 CCU/mo for 5 years, and includes our Match Up plugin for free.

    Additional monthly plans are also available on our website.

    Ease of Use
    Just drop it in and go. Your code could change as little as a few lines. Let us worry about the back end while you make your game as great as it can be!

    Competitive Pricing
    By including punchthrough with our relays, we are able to reduce bandwidth costs. This allows us to be less expensive than our competitors and pass the savings on to you.

    Direct Connect Whenever Possible
    Why waste your hard earned money using bandwidth on the relay servers if you don't have to? A direct connection means less lag and a better player experience.

    Guaranteed Connection
    Thanks to the Noble Connect Relays, your players will always be able to host and connect. Even when behind a very strict router or on a mobile network.

    Powered by Proven Technology
    Noble Connect implements ICE, STUN, and TURN. These technologies are industry standards for real-time data transfer applications like gaming, voip, and video messaging.

    Worldwide Automatic Region Selection
    We have servers worldwide to maintain the lowest ping possible. By default the best geographic region is selected automatically based on proximity. You can also manually choose which region to use.

    Load Balancing
    We automatically balance the load between all relay servers in a region so your players always have the smoothest experience possible. If your game hits a huge spike in popularity, we’ve got you covered.

    Cross-platform Support
    Build for Windows, OSX, Linux, Android, or iOS and connect across any combination of platforms.

    Example Scenes
    Example scenes are included with detailed comments that demonstrate using Noble Connect with the NetworkManager, lobbies, and running your own custom solution.

    Professional Support
    We have a consistent 5 star record of prompt and effective support. Contact us via email, forums, or Discord any time and we will work with you to resolve any issue.

    Right now only UNet and Mirror are supported out of the box but we will be looking to continue expanding. Let us know if there is a specific networking system you would like to see supported.

    Note: Web builds are not supported.
     
    Last edited: Apr 10, 2019
  2. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    Last edited: Mar 15, 2019
  3. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    Last edited: Mar 24, 2019
  4. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    Noble Connect 1.01 Released
    • Fixed broken scenes.
    • Reworked NobleServer to be static like NetworkServer.
    • Better explanations in Example scenes.
    • Improved README and docs.
    Nothing too exciting in this release. The NobleServer is a little easier to use now as it has been reworked to function more like the NetworkServer from UNet.

    Keep an eye out for our next release which should include Mirror support. The LiteNetLib and Ignorance transports are working, just need some clean up and testing and it will be ready to go.
     
  5. elasto

    elasto

    Joined:
    Mar 20, 2014
    Posts:
    18
    This looks brilliant!

    Rough ETA for Mirror support? Closer to a week or closer to a month?
     
    thegreatzebadiah likes this.
  6. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    @elasto We literally just submitted a new release to the Asset store with Mirror support. So it should just be a few days to a week.
     
    elasto likes this.
  7. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    Last edited: Mar 24, 2019
  8. elasto

    elasto

    Joined:
    Mar 20, 2014
    Posts:
    18
    Thanks!

    I opted to go with Ignorance for transport since I've seen its name thrown about on Discord, and I have the sample Mirror Network Manager example working locally, so all systems go so far..!
     
    thegreatzebadiah likes this.
  9. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    Noble Connect 1.02 Released
    • Mirror support is live! More networking systems coming soon as well.
    • Added support for Unity Engine 5.6, 2017.1, 2017.2 and 2017.3
    I'm really happy about the Mirror support, and it will only be improving in the future as I work with the transport devs to improve support. Thanks to the whole Mirror team and the LiteNetLib and Ignorance transport devs specifically who helped me out with a ton of questions.
     
  10. Fuestrine

    Fuestrine

    Joined:
    Feb 13, 2013
    Posts:
    382
    We've got a video! I'll be making a more detailed overview / tutorial video next so let me know if anyone wants to see anything specifically.

     
    Last edited: Apr 10, 2019
  11. thegreatzebadiah

    thegreatzebadiah

    Joined:
    Nov 22, 2012
    Posts:
    758
    Noble Connect 1.03 Released
    • Updated to support Mirror 3.4.9
    Sorry, kind of a boring release, but we are up date with latest Mirror now. More substantial updates are coming soon including support for additional network systems and a brand new landing page for the website.
     
  12. Martho42

    Martho42

    Joined:
    Oct 1, 2015
    Posts:
    7
    Looks great so far! Just what my game needs. A couple questions I have:

    If Noble Connect makes a direct or punchthrough connection, are the users still counted towards CCU?

    When using noble network managers, is it possible to do a regular LAN connection still? When running two instances on my computer, typing in 127.0.0.1 on the client gives errors. If I type in the external address and port provided by the host it does make a direct connection between the two instances, but typing them in every time will be pretty annoying for testing my game.
     
  13. Fuestrine

    Fuestrine

    Joined:
    Feb 13, 2013
    Posts:
    382
    @Martho42
    Yes, CCU counts when directly connecting. Some clarification though is that our punchthrough and servers are what's going to be the main reason for being able to direct connect in the first place. Which means that we work hard to provide a direct connection when possible, which is always going to be a lower latency connection for your players.

    For the local connection, setting up a matchmaking service is probably the best way to make it easy to connect. Any matchmaking solution will do, but we have Match Up which also comes free with the Noble Connect Starter Pack or any paid plan.

    Let me know if you have any other questions.
     
  14. Martho42

    Martho42

    Joined:
    Oct 1, 2015
    Posts:
    7
    @Fuestrine
    Thanks for the reply! It's fair, can't complain considering the great prices. I'll likely purchase the starter pack soon.

    In addition to the LAN testing convenience, I'm planning to make my game free for LAN use but with a small price for match making, so I do want my game to work over LAN still without adding to Noble Connect CCUs. Probably I will just make my code work polymorphically so I can use either a normal unet network manager for LAN or a Noble Connect manager for matchmaking. I expect it will be pretty easy to do.

    Another question: Is Noble Connect more likely to be able to create a direct connection than the NAT traversal asset, or are they practically the same? I'll probably go for Noble Connect either way, but I like to asses all options properly before deciding.
     
  15. Fuestrine

    Fuestrine

    Joined:
    Feb 13, 2013
    Posts:
    382
    @Martho42
    Noble Connect has better punchthrough and will be able to make more direct connections than the NAT Traversal Asset. We rewrote the entire punchthrough from the ground up with all that we learned from writing NAT Traversal and supporting it over the years. NAT Traversal is also based on RakNet which has limitations, while Noble Connect is custom built.
     
  16. Bonkahe

    Bonkahe

    Joined:
    Jul 11, 2013
    Posts:
    7
    Hey @Fuestrine I was wondering about your support for later versions of unity, what is the most current version of unity you support?
     
  17. Fuestrine

    Fuestrine

    Joined:
    Feb 13, 2013
    Posts:
    382
    @Bonkahe
    Any 2018 version is our latest. I think 2019 came out a couple days ago. We haven't gotten around to it yet but I think it should support it. We'll be putting out an official version for it soon.

    You can check out the "Supported Unity Versions" on the Asset Store page to see the full list of current supported versions.
     
    Last edited: Apr 19, 2019 at 4:45 AM
  18. greenbraygames

    greenbraygames

    Joined:
    Today
    Posts:
    1
    Hi I was wondering if using player's as a host would still incur costs such as the CCU and Data Limit like how the NAT Traversal Punch through would allow us smaller developers to avoid costs with using Unity's Servers

    Also how do we go about using this or removing just this plugin and code for our game on Xbox One and other consoles?
     
    Last edited: Apr 24, 2019 at 12:33 AM
  19. Fuestrine

    Fuestrine

    Joined:
    Feb 13, 2013
    Posts:
    382
    @greenbraygames
    Players are always hosts in any scenario unless you are using a dedicated server (with or without Noble Connect).

    Punchthrough / direction connection adds to CCU with Noble Connect but it only uses a small amount of data when connecting because it uses our servers to facilitate the punchthrough / direct connection. We work very hard to make it so you always have the best connection possible. That means making our punchthrough as good as it can be so that you end up with a direct connection a vast majority of the time (85-95% according to the scientific papers of the standards we implemented).

    For removing it for consoles, not too much of your code should be tied into Noble Connect as it's just used for connecting and disconnecting. So hopefully it's not too much of a pain to have pre-processor directives that you can set to switch between the two ways to connect / disconnect.

    Let me know if you have anymore questions.
     
    Last edited: Apr 24, 2019 at 5:29 AM