From 3192cc8b00c55f68742bef3e7a4ff72724f336ce Mon Sep 17 00:00:00 2001 From: Evil Factory <36804725+evilfactory@users.noreply.github.com> Date: Sat, 28 Feb 2026 16:47:18 -0300 Subject: [PATCH] Remove need to define custom network header in upstream --- .../LuaCs/Services/NetworkingService.cs | 8 ++--- .../LuaCs/Services/NetworkingService.cs | 10 +++--- .../LuaCs/_Services/NetworkingService.cs | 31 +++++++++++++++++++ .../SharedSource/Networking/NetworkMember.cs | 3 -- 4 files changed, 40 insertions(+), 12 deletions(-) diff --git a/Barotrauma/BarotraumaClient/ClientSource/LuaCs/Services/NetworkingService.cs b/Barotrauma/BarotraumaClient/ClientSource/LuaCs/Services/NetworkingService.cs index 49acd7436..0e4a1eb38 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/LuaCs/Services/NetworkingService.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/LuaCs/Services/NetworkingService.cs @@ -18,7 +18,7 @@ partial class NetworkingService : INetworkingService, IEventServerConnected, IEv public void OnReceivedServerNetMessage(IReadMessage netMessage, ServerPacketHeader serverPacketHeader) { - if (serverPacketHeader != ServerPacketHeader.LUA_NET_MESSAGE) + if (serverPacketHeader != ServerHeader) { return; } @@ -46,7 +46,7 @@ partial class NetworkingService : INetworkingService, IEventServerConnected, IEv if (GameMain.Client == null) { return; } WriteOnlyMessage message = new WriteOnlyMessage(); - message.WriteByte((byte)ClientPacketHeader.LUA_NET_MESSAGE); + message.WriteByte((byte)ClientHeader); message.WriteByte((byte)ClientToServer.RequestSync); GameMain.Client.ClientPeer.Send(message, DeliveryMethod.Reliable); } @@ -55,7 +55,7 @@ partial class NetworkingService : INetworkingService, IEventServerConnected, IEv { var message = new WriteOnlyMessage(); - message.WriteByte((byte)ClientPacketHeader.LUA_NET_MESSAGE); + message.WriteByte((byte)ClientHeader); if (idToPacket.ContainsKey(netId)) { @@ -86,7 +86,7 @@ partial class NetworkingService : INetworkingService, IEventServerConnected, IEv if (GameMain.Client == null) { return; } WriteOnlyMessage message = new WriteOnlyMessage(); - message.WriteByte((byte)ClientPacketHeader.LUA_NET_MESSAGE); + message.WriteByte((byte)ClientHeader); message.WriteByte((byte)ClientToServer.RequestSingleNetId); NetId.Write(message, netId); diff --git a/Barotrauma/BarotraumaServer/ServerSource/LuaCs/Services/NetworkingService.cs b/Barotrauma/BarotraumaServer/ServerSource/LuaCs/Services/NetworkingService.cs index 756b29c83..895628f75 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/LuaCs/Services/NetworkingService.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/LuaCs/Services/NetworkingService.cs @@ -19,7 +19,7 @@ partial class NetworkingService : INetworkingService, IEventClientRawNetMessageR { var message = new WriteOnlyMessage(); - message.WriteByte((byte)ServerPacketHeader.LUA_NET_MESSAGE); + message.WriteByte((byte)ServerHeader); if (idToPacket.ContainsKey(netId)) { @@ -35,9 +35,9 @@ partial class NetworkingService : INetworkingService, IEventClientRawNetMessageR return message; } - public void OnReceivedClientNetMessage(IReadMessage netMessage, ClientPacketHeader serverPacketHeader, NetworkConnection sender) + public void OnReceivedClientNetMessage(IReadMessage netMessage, ClientPacketHeader clientPacketHeader, NetworkConnection sender) { - if (serverPacketHeader != ClientPacketHeader.LUA_NET_MESSAGE) + if (clientPacketHeader != ClientHeader) { return; } @@ -134,7 +134,7 @@ partial class NetworkingService : INetworkingService, IEventClientRawNetMessageR private void WriteIdToAll(ushort packet, NetId netId) { WriteOnlyMessage message = new WriteOnlyMessage(); - message.WriteByte((byte)ServerPacketHeader.LUA_NET_MESSAGE); + message.WriteByte((byte)ServerHeader); message.WriteByte((byte)ServerToClient.ReceiveNetIds); message.WriteUInt16(1); @@ -147,7 +147,7 @@ partial class NetworkingService : INetworkingService, IEventClientRawNetMessageR private void WriteSync(Client client) { WriteOnlyMessage message = new WriteOnlyMessage(); - message.WriteByte((byte)ServerPacketHeader.LUA_NET_MESSAGE); + message.WriteByte((byte)ServerHeader); message.WriteByte((byte)ServerToClient.ReceiveNetIds); message.WriteUInt16((ushort)packetToId.Count()); diff --git a/Barotrauma/BarotraumaShared/SharedSource/LuaCs/_Services/NetworkingService.cs b/Barotrauma/BarotraumaShared/SharedSource/LuaCs/_Services/NetworkingService.cs index afa9c7e7c..a3d4262f5 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/LuaCs/_Services/NetworkingService.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/LuaCs/_Services/NetworkingService.cs @@ -6,6 +6,7 @@ using FluentResults; using System; using System.Collections.Concurrent; using System.Collections.Generic; +using System.Linq; using System.Security.Cryptography; using System.Text; @@ -48,6 +49,36 @@ internal partial class NetworkingService : INetworkingService ReceiveNetIds } + private ClientPacketHeader? clientHeader = null; + public ClientPacketHeader ClientHeader + { + get + { + if (clientHeader == null) + { + byte lastHeader = (byte)Enum.GetValues(typeof(ClientPacketHeader)).Cast().Last(); + clientHeader = (ClientPacketHeader)(lastHeader + 1); + } + + return (ClientPacketHeader)clientHeader; + } + } + + private ServerPacketHeader? serverHeader = null; + public ServerPacketHeader ServerHeader + { + get + { + if (serverHeader == null) + { + byte lastHeader = (byte)Enum.GetValues(typeof(ServerPacketHeader)).Cast().Last(); + serverHeader = (ServerPacketHeader)(lastHeader + 1); + } + + return (ServerPacketHeader)serverHeader; + } + } + private ConcurrentDictionary netVars = []; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs index c33e87c57..1b4402d9e 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs @@ -46,7 +46,6 @@ namespace Barotrauma.Networking TOGGLE_RESERVE_BENCH, REQUEST_BACKUP_INDICES, // client wants a list of available backups for a save file - LUA_NET_MESSAGE } enum ClientNetSegment @@ -105,8 +104,6 @@ namespace Barotrauma.Networking UNLOCKRECIPE, //unlocking a fabrication recipe SEND_BACKUP_INDICES, // the server sends a list of available backups for a save file - - LUA_NET_MESSAGE } enum ServerNetSegment {