Skip to content

Commit bde6d8f

Browse files
authored
Enabled CRC for packets and use native sockets (latter only server-side) (SubnauticaNitrox#2661)
1 parent 8dd2b1f commit bde6d8f

2 files changed

Lines changed: 7 additions & 3 deletions

File tree

Nitrox.Server.Subnautica/Models/Communication/LiteNetLibServer.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
using System.Buffers;
22
using System.Collections.Generic;
33
using LiteNetLib;
4+
using LiteNetLib.Layers;
45
using LiteNetLib.Utils;
6+
using Nitrox.Model.Core;
57
using Nitrox.Model.DataStructures;
68
using Nitrox.Server.Subnautica.Models.GameLogic;
79
using Nitrox.Server.Subnautica.Models.GameLogic.Entities;
@@ -37,8 +39,9 @@ public LiteNetLibServer(PacketHandler packetHandler, PlayerManager playerManager
3739
this.options = options;
3840
this.logger = logger;
3941
listener = new EventBasedNetListener();
40-
server = new NetManager(listener)
42+
server = new NetManager(listener, NitroxEnvironment.IsReleaseMode ? new Crc32cLayer() : null)
4143
{
44+
UseNativeSockets = true,
4245
IPv6Enabled = true
4346
};
4447
}

NitroxClient/Communication/NetworkingLayer/LiteNetLib/LiteNetLibClient.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@
44
using System.Threading;
55
using System.Threading.Tasks;
66
using LiteNetLib;
7+
using LiteNetLib.Layers;
78
using LiteNetLib.Utils;
9+
using Nitrox.Model.Core;
810
using NitroxClient.Communication.Abstract;
911
using NitroxClient.Debuggers;
1012
using NitroxClient.MonoBehaviours;
1113
using NitroxClient.MonoBehaviours.Gui.Modals;
1214
using Nitrox.Model.Networking;
1315
using Nitrox.Model.Packets;
14-
using Nitrox.Model.Subnautica.Packets;
1516

1617
namespace NitroxClient.Communication.NetworkingLayer.LiteNetLib;
1718

@@ -47,7 +48,7 @@ public LiteNetLibClient(PacketReceiver packetReceiver, INetworkDebugger networkD
4748
};
4849

4950

50-
client = new NetManager(listener)
51+
client = new NetManager(listener, NitroxEnvironment.IsReleaseMode ? new Crc32cLayer() : null)
5152
{
5253
UpdateTime = 15,
5354
ChannelsCount = (byte)typeof(Packet.UdpChannelId).GetEnumValues().Length,

0 commit comments

Comments
 (0)