Update [11th April 2019]: As promised, we have been following closely, and building our new Connected Games solution, alongside your feedback. We’ve updated the FAQs below to address the concerns we’ve seen most feedback about, like transition timing. Read on to find out more, including on our decision to extend UNet LLAPI critical support for an additional year from the original plan.
Feedback about Unity's plans for Connected Games?
Post here in the Connected Games sticky posts.
Why is UNet being deprecated?
UNet, Unity’s legacy multiplayer solution, does not meet the needs of many multiplayer game creators. To reach the performance, scale, and security goals of Unity creators, we’ve reached the difficult decision that completely new technology is required, including lightweight and fast networking, and a dedicated game server model.
What is being deprecated?
1) The High Level API (HLAPI) and the Low Level API (LLAPI) that work with the editor.
2) The P2P Relay Service (Not to be confused with the newer UGS service)
3) The legacy Matchmaker service (Not to be confused with the newer UGS service)
What will the deprecated UNet features be replaced with?
The HLAPI and LLAPI will be replaced with a new networking layer, with development focused first on a fast and minimal transport layer. The P2P Relay service will be replaced with a Game Server Hosting service, enabling server-authoritative games. A new matchmaking service will replace the legacy Matchmaker and work seamlessly with the Game Server Hosting service.
The Game Server Hosting service and integrated matchmaking service will be provided by Multiplay, which has been running game servers for over 20 years, and is now part of the Unity family. For clarity, you will always be able to choose the approach that you think suits you best. You will be able to build with the new networking stack, and host game servers on your own infrastructure, if you like.
Beyond simply depreciating a legacy solution, we are at the start of an exciting journey to deliver an end-to-end solution for Connected Games. We have, for example, recently added Vivox to the family, delivering voice and text chat for multiplayer games.
What is the deprecation plan for UNet features?
The HLAPI will no longer be shipped after 2018.4 (LTS), and will be supported for two years after this release. The LLAPI will no longer be shipped after 2019.4 (LTS), and will be supported for two years after this release. The Relay Server and legacy Matchmaker services will operate for at least three years following 2018.4 (LTS) (expected 2022).
Below is a depreciation plan and high-level roadmap for upcoming features and services. Stay tuned to our blog and forums for more details about upcoming features and services.
Will I still be able to use the High Level and Low Level APIs?
Yes, but the HLAPI and LLAPI will no longer work with Unity after 2018.4 (LTS) and 2019.4 (LTS) respectively.
Is there a migration path from the existing HLAPI and LLAPI, and the new networking layer?
The LLAPI functions similarly to the new transport layer, and the migration will be intuitive if you are using this API.
The capabilities provided in the HLAPI will move from a one-size-fits-all API to more of a collection of tools tuned to work well with a certain game type. For example, our initial focus is on the client-side prediction model used commonly in FPS games, with other archetypes like RTS and fighting games to come. It will probably have a steeper learning curve, but we are focused on good documentation and examples. We have released an FPS sample that includes open-source implementations of lag compensation, forward prediction, etc., that can be reused for similar games.
Get access, or learn more here.
For clarity, the HLAPI will support both the LLAPI and the new transport (once it reaches a sufficient feature set) throughout the HLAPI transition period till Spring 2021. We feel confident that before 2021, the new networking stack will be a much more performant solution than the HLAPI, and we strongly recommend developers move over by this date.
What can I look forward to with the net networking stack?
We’re building the new networking stack with these key principles in mind:
- Transparency: The new networking stack will be provided as a package with full source for debugging and extending. We will also be able to ship rapid updates as previews outside the four-month release cycle.
- Modularity: Monolithic libraries add unnecessary overhead for features you likely don’t need. Each new feature beyond the baseline transport will be separate and optional, so you can integrate only the features needed for your game. For example, there may be one package for the base unreliable transport, one optional "Reliable" package, another optional "Sequenced Reliable" package, etc (caveat - not final names).
- Performance and scalability: We are ensuring that, from the beginning, networking will scale to the needs of modern games. For example, the new networking stack will be DOTS-compatible. This means it will work with ECS, Job System (for multi-threading), and Burst Compiler. It also does not require you to use DOTS for everything. Most of your game can still be written in classic Unity if you prefer that.
- Archetype specificity: We now understand that there is no single solution that is ideal for all game types. So instead, we will create different solutions for common network archetypes used in games, such as FPS, RTS, and fighting games.
Will a “self-service” version of the P2P Relay Server or Matchmaker service be made available?
We do not have plans to do so at this time. Well before 2022, we will provide a clear transition plan to new technology.
What should I use if I am making a multiplayer game today or have already shipped a multiplayer game?
- Already launched: If your game has shipped and uses our Relay service, it will continue to run as expected until at least Spring 2024. By that time, we will either extend the Relay service or provide a clear transition plan to new technologies. It’s our goal not to harm games that depend on this tech. Please see this forum post for alternatives.
- To be shipped in the next 0-6 months: If you’ve already completed most of the work on your multiplayer game using the LLAPI or HLAPI, it is okay to ship it using the 2018.4 (LTS) or prior versions of Unity. If you’re using the LLAPI, it is even okay to ship using the 2019.4 (LTS), but we do not recommend this if you have sufficient time to transition (see below). P2P architectures of all forms struggle with scalability, inconsistent connection quality, and hackable clients, so we recommend most games move to a dedicated server model if possible.
- To be shipped in 6+ months: You should consider moving to dedicated servers to determine what it will take to create a server-authoritative version of your game. We believe the new tech stack enables longer term success.
While the initial release of the new tech stack will necessarily be “preview” or “experimental” in some form, we are committed to moving out of preview as soon as possible -- the current goal is within 2019.
We deeply appreciate those who are working through this transition with us and ask that you provide feedback every step of the way. Each component of the new tech stack will remain in preview until we have confidence that real games can successfully launch using it, based on feedback from the community. Stay tuned to our blog and forums for more details soon about the upcoming Preview packages to build your game with the new networking stack, server runtime, dedicated servers, and integrated server hosting and matchmaking service matchmaker.
What can you tell me about pricing?
Multiplay’s current game server hosting service is based on a consumption model. The service is production-ready today, but primarily large-game focused and providing custom hosting solutions. Actual consumption turns on how the game is specifically hosted.
As part of the Connected Games initiative, we are working to provide a more automated workflow and thereby wider access to Multiplay’s hosting and scaling tech. We are still working through the pricing for this scenario, and unfortunately cannot share more concrete details at the time.
In the meantime, we'll continue to focus on reducing the overhead of the headless server runtime to reduce the costs of servers, and the Multiplay-based orchestration tech will ensure servers are only running and consuming resources when your players need them.
Where can I learn more about the new features and services that will replace UNet?
Visit the learn more section in our real-time multiplayer page. We are also hoping to post more frequent updates about the upcoming features and services -- stay tuned.
In case you missed it, we welcome all feedback on our Connected Games sticky posts, and respond to these as frequently as we are able to.
Comments
10 comments
That's sad Unity abandoning UNet. Although it's not the best multiplayer solution with many missing features, I still find that it's easy to learn and best fit for fast-pace multiplayer games, and hoping Unity can complete it by adding features like Host Migration in relay server.
Seems like the only solution in the market is Photon in the future.
EDIT: Well they just added the new dedicated server product to replace UNet, at least they not abandoning multiplayer features... We will see how the new product compete with Photon...
Wow this is pitiful.
Anti-P2P?
my answer is no thank you
While yes a dedicated server will basicly always be the better option tech wise. For indies being dependent on dedicated servers will nearly always be a pain point for your community. You need to support a simple, zero cost lay man can set it up connection method at the very least as a fall back option.
Steam, Discord (soon so I hear), etc. know this and have relay servers, matchmaking services, lobbies, chat services, etc. as do consoles all available all the time for zero cost in most cases on the PC anyway. Thus dedicated server only makes since if your game deals with large populations and or is competative and has some way to monitize over the life of it. Otherwise its a nice to have and can be a hendrance to your project if its the only option you make available as your community will expect that you wont be able to maintain the servers for as long as they would want and thus wont give you a chance.
Now if part of this is that Unity is going to provide some basic level of server hosting free of charge (or damn near) along with the assurance that it will be there tomarow then please disregard the above and take my money till then provide support for direct conneciton please otherwise I will just have to build it my self and ignore all your hard work.
No p2p is a shame.
Unet's only advantage was that it could be P2P, something many developers want for LAN only or for serverless multiplayer (big advantage for indie titles)
If you drop that then why not just use photon or some other third party that's going to be consistently supported unlike unet is?
Makes no sense to use Unet anymore.
As an aspiring indie developer, I am saddened to hear that Unity is abandoning P2P.
As a gamer, I have always hated when game developers shut down their hosted services, thus making their game effectively dead in the water. In contrast, I have always appreciated when games had self-hosted peer to peer architecture, thus extending the life span of the game until no one actually wants to play it anymore.
For my games, I wanted to make sure that the decision to no longer be able to play the game rested on the end user rather than me. They bought it, so they should be able to determine how long they can use it.
I was stressed about having to write my own network code, but was overjoyed when I learned about uNet. Now to discover that it's being dropped with no P2P replacement is very unfortunate. Learning the entire development pipeline for game design has been difficult enough. Now I will need to learn network architecture, design and security as well?
I hope the Unity dev team can look towards a P2P replacement instead of just dropping it entirely. Especially if they wish to continue to be one of the top game engines for indie developers that don't have access to all of the same resources as established game studios.
Hi All - thanks for the feedback. As a heads-up, we primarily monitor and respond to questions and feedback in sticky forums posts here:
https://forum.unity.com/forums/connected-games.26/
With respect to P2P, we certainly will never block developers from using this topology, and there's no reason the new transport will be incompatible.
However, we are focused first on hosted dedicated servers because they provide consistent connection quality, server authority, no host advantage, and much greater scale potential. In short, we learned that most devs were unable to succeed with P2P (even when their game was popular), and it was the underlying P2P topology that ultimately limited their success.
HOW DO U START PROGRAMING!?
I WANT TO START PROGRAMING BUT ALL I GET IS TEXT!?
Noooooooo! That's sad to ear.
Personally I found unet really good for what I need and simply create lan applications.
Compared to photon I got really few troubles with unet and I hoped they'll improved it ... not deprecating it.
When is the new implementation coming? It was going to be available last summer..
Article is closed for comments.