ProtocolCompatibility
Checks client protocol and game content versions against the gateway's supported range.
Nebula · Packages/com.1by3.nebula/Runtime/Protocol/CompatibilityWindow.cspublic static class ProtocolCompatibilityChecks client protocol and game content versions against the gateway's supported range.
The window is HelloMsg.MinProtocolVersion to HelloMsg.ProtocolVersion, which is 19 to 20 today. Gateway-to-worker and worker-to-worker connections require HelloMsg.ProtocolVersion exactly.
Methods
ClientProtocolAccepted
public static bool ClientProtocolAccepted(ushort version);Returns whether the client's protocol is within the gateway's inclusive supported range.
WindowText
public static string WindowText();Formats the supported protocol range for logs and refusal messages.
MinContentVersion
public static uint MinContentVersion(uint server, uint configuredMin);Returns the minimum accepted content version. A zero minimum or one greater than server uses the server's version, requiring an exact match.
ContentVersionAccepted
public static bool ContentVersionAccepted(uint client, uint server, uint configuredMin);Returns whether the client's content version is within the configured inclusive range. A server value of zero accepts every content version.
PortalsUpdate
A change to the portals a receiver knows (MsgId.Portals): records to add or replace, and ids to forget.
SessionReplacedMsg
Gateway -> client: the player this client signed in as connected again elsewhere, and that newer connection now holds the session and the pawn (NebulaConfig.SingleSessionPerPlayer).