Typhon.Protocol 1.0.0-alpha.1

This is a prerelease version of Typhon.Protocol.
dotnet add package Typhon.Protocol --version 1.0.0-alpha.1
                    
NuGet\Install-Package Typhon.Protocol -Version 1.0.0-alpha.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Typhon.Protocol" Version="1.0.0-alpha.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Typhon.Protocol" Version="1.0.0-alpha.1" />
                    
Directory.Packages.props
<PackageReference Include="Typhon.Protocol" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Typhon.Protocol --version 1.0.0-alpha.1
                    
#r "nuget: Typhon.Protocol, 1.0.0-alpha.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Typhon.Protocol@1.0.0-alpha.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Typhon.Protocol&version=1.0.0-alpha.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Typhon.Protocol&version=1.0.0-alpha.1&prerelease
                    
Install as a Cake Tool

Typhon.Protocol

The wire protocol of Typhon Subscriptions, and the attributes that declare what replicates.

Typhon Subscriptions replicate engine state to remote clients — game clients, browsers, bots — and drain their typed commands back into the server's tick. This package holds what a server and its clients must agree on, and nothing else: the typhon.3 framing and codecs, the catalog model, and the replication attributes with their source generator.

⚠️ Alpha. APIs and the wire format may still change between releases.

When to reference it

  • A contracts assembly shared by a server, its .NET clients and its bots: commands and events as [ReplicatedMessage] structs. It references only this package — no engine.
  • You rarely reference it directly otherwise: the Typhon engine package and the Typhon.Client SDK both depend on it.
using Typhon.Protocol;

[ReplicatedMessage]
public partial struct Attack
{
    [EntityRef] public uint Target;                  // the netId the client knows
    [Codec(CodecKind.U16)] public int Damage;
    [Quant(-8192, 8192, 24)] public double X;        // quantized on the wire
}

The bundled generator implements IReplicatedMessage for every [ReplicatedMessage] type, so the server and the client describe the same fields in the same order.

Targets net10.0 and netstandard2.1: a contracts assembly shared with a Unity client targets netstandard2.1 and is built with the .NET SDK (the generated code is C# 8).

Learn more

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Typhon.Protocol:

Package Downloads
Typhon

Typhon is a real-time, low-latency ACID database engine built on an ECS architecture with MVCC snapshot isolation, targeting microsecond-level performance. This package bundles the engine with its profiler and schema-definition APIs; the wire protocol is the Typhon.Protocol dependency. Alpha — expect breaking changes.

Typhon.Subscriptions.AspNetCore

Hosts Typhon Subscriptions in ASP.NET Core: the WebSocket endpoint for browser and .NET clients (MapTyphonSubscriptions) and the catalog endpoint (MapTyphonCatalog). Alpha — expect breaking changes.

Typhon.Client

The .NET client SDK for Typhon Subscriptions: connects to a Typhon server over TCP or WebSocket, decodes its catalog-driven stream into a columnar world store, extrapolates motion, sends commands and subscribes to groups. Alpha — expect breaking changes.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-alpha.1 47 10/19/2026