Skip to content

Choosing A Network

The core Dissonance package does not include any network - instead Dissonance relies on integrations with other network systems to send and receive data. This gives you a lot of flexibility in choosing how you want voice data to be sent over the network. If none of the existing integrations are suitable for you you can also write a custom network integration.

Free Integrations⚓︎

Dissonance has support for 10 network systems. All of these packages can be downloaded from the asset store for free and receive support as part of Dissonance.

There is also a community developed and maintained package for Fish Networking, available from GitHub.

My Application Already Has Networking⚓︎

If you already have a network system set up in your application then simply sending voice through that system is the easiest option. If there is an integration package listed above for your networking system it is recommended to use that.

However, if there is no available integration package then there are two options. The first option is to build your own custom network integration. Dissonance includes base classes which can be extended to create a new network integration relatively easily - all that is required is writing the code to send packets, receive packets and inform Dissonance about session events (leave/join/connect/disconnect etc). This requires that your networking system supports Unreliable & Unordered packets (e.g. UDP), TCP is not suitable for high quality voice chat.

The second option is to establish another network session just for voice, using one of the existing integrations. Any integration can be used for this.

My Application Does Not Have Networking⚓︎

If you do not have any network system already set up in your application then you can choose any supported network integration.

Which One To Choose?⚓︎

Mirror⚓︎

Mirror is a community built replacement for UNet. If you are just starting out with Unity networking, this is our recommendation.

  • Discord
  • Client/Server
  • No CCU limit

Fish Networking⚓︎

Fish Networking is a free open source, easy to use, feature rich networking library for Unity. Dissonance has support for Fish networking through a community developed integration package, available here.

Unity Netcode For GameObjects⚓︎

Netcode for GameObjects is the new multiplayer solution developed by Unity.

Forge Remastered⚓︎

Forge Remastered is a free networking system available on the asset store.

  • Discord
  • Client/Server
  • No CCU limit

Dark Rift 2⚓︎

Dark Rift 2 is a free networking system available on the asset store.

  • Discord
  • Client/Server
  • No CCU limit
  • Standalone server - does not require Unity on the server

TNet3⚓︎

TNet3 is a networking and serialization system available on the asset store.

  • Discord
  • Client/Server
  • No CCU limit

Photon Bolt⚓︎

Photon Bolt is a free (up to 20 CCU) networking system available on the asset store.

  • Discord
  • Client/Server
  • CCU Limit (20 free)

Photon Unity Networking 2⚓︎

Photon Unity Networking 2 is the upgrade to the very popular Photon Unity Networking asset. It is a free (up to 20 CCU) networking system available on the asset store.

  • Forum
  • Photon Cloud Hosting
  • CCU Limit (20 free)

Steamworks P2P⚓︎

Steamworks.Net is a free low level wrapper around the Steamworks SDK. This integration requires that all users are logged into a Steam account. If your game already uses Steam networking this can be a free and low latency way to set up voice. Setting this up to work with Dissonance requires a little extra scripting - first you must set up a network session with Steamworks.Net, please refer to the Getting Started tutorial for more details.

  • Full P2P
  • No CCU limit
  • Steam Only

WebRTC Video Chat⚓︎

WebRTC Video Chat is a p2p networking, voice and video chat application. This integration uses just the networking part of the asset to carry Dissonance voice traffic - it does not integrate in a way that allows WebRTC Voice Chat and Dissonance Voice Chat to understand each other. This can be used to quickly set up a fully p2p chat session requiring only a very lightweight session server (which carries no voice traffic).

  • Full P2P
  • No CCU limit

UNet HLAPI⚓︎

UNet is the deprecated Unity networking system. It is not recommended to use this for new applications.