TNet: Tasharen Networking
Discord | Archive | Documentation | Asset StoreTNet 3 is a powerful Unity Editor extension that handles game state persistence (save game functionality) as a free side-effect of networking. |
- Easy-to-use networking: sending a message is as simple as calling a function.
- Built 100% in C# and with its core not relying on Unity at all. Comes with full source code. No DLLs.
- Tiny in size: server builds into a ~165 kb executable that runs natively on Windows and via Mono on OSX and Linux. The server can run anywhere. Even on a Raspberry Pi!
- Battle-tested in games on both mobile and desktop platforms. I shipped 3 games of my own that use TNet, and am working on the 4th.
- Multiple channel support. Have a global channel for communication, then join/leave regional channels around the player while exploring the world. Objects in channels will be created when you join and destroyed when you leave them as you would expect.
- Full persistence support. No need to save the game. When TNet is used properly, the game is saved in real-time. You can even use TNet in a single player game (without any sockets) to add real-time save game functionality.
- Powerful Serialization functionality with its DataNode class. Think JSON/XML, but smaller, and capable of natively serializing to/from plain text, binary and LZMA-compressed formats at will.
- The same DataNode class can even be used to export entire Game Object hierarchies or prefabs similar to how Asset Bundles work (but with some additional benefits) — for ultimate modding tools.
- Variety of built-in handy features, such as DataNode-based object and player data that automatically syncs across the network (think player inventory), ability to save and load files on the server (server-side player saves), settable per-server and per-channel DataNodes, ban/admin lists, and much, much more.
- Various developer tools — from convenience extensions such as object.Invoke(“function”) and object.SetFieldOrPropertyValue(“name”, value), to modding and run-time C# code compilation tools.
- Multiplayer is easily scale-able to support many players. When Windward launched, there were over 300 players connected to TNet running on a dev machine off a regular household broadband connection (20 Mbit up). CPU usage was between 2-4% and memory usage was about 250 MB!
- Need more information? Check the Documentation page, watch the beginner’s tutorial, or join our discord and ask!