Shrink packet header size

This commit is contained in:
derek.holloway committed 2026-07-01 20:30:05 -07:00
1 parent c3906e7d60
commit 7b58ca0338
10 files changed
+140 -115

No files matched your search

+2 -4
View File
@@ -14,14 +14,12 @@ namespace MistoxServer.Server {
public event EventHandler onReceive;
TcpListener Listener;
ServerMode ServerMode;
bool Alive;
int port;
public mTCPListener( int Port, ServerMode mode ) {
public mTCPListener( int Port ) {
port = Port;
Alive = true;
ServerMode = mode;
Thread ConnectionThread = new Thread(async () => await ListenerThread() );
ConnectionThread.Start();
}
@@ -33,7 +31,7 @@ namespace MistoxServer.Server {
TcpClient client = await Listener.AcceptTcpClientAsync();
Connection user = new Connection(){
slowClient = new mTCPServer(client, ServerMode),
slowClient = new mTCPServer( client ),
fastClient = new IPEndPoint( ((IPEndPoint)client.Client.RemoteEndPoint).Address, port )
};
+6 -17
View File
@@ -5,15 +5,13 @@ using System.Threading.Tasks;
namespace MistoxServer.Server {
public class mTCPServer : IDisposable {
public TcpClient slowClient;
ServerMode Mode;
public event EventHandler onReceived;
public event EventHandler onDisconnected;
public mTCPServer( TcpClient client, ServerMode mode ) {
public mTCPServer( TcpClient client ) {
slowClient = client;
slowClient.Client.NoDelay = true;
Mode = mode;
}
bool Alive = true;
@@ -24,13 +22,9 @@ namespace MistoxServer.Server {
byte[] StreamData = new byte[1024];
int bytesRead = await slowClient.GetStream().ReadAsync(StreamData, 0, StreamData.Length);
if( bytesRead > 0 ) {
if ( Mode == ServerMode.Passive) {
onReceived?.Invoke( StreamData.Sub( 0, bytesRead ), new EventArgs() );
} else if ( Mode == ServerMode.Authoritative) {
dynamic data = mSerialize.tReceive( StreamData.Sub( 0, bytesRead ) );
if( data != null ) {
onReceived?.Invoke( data, new EventArgs() );
}
dynamic data = mSerialize.tReceive( StreamData.Sub( 0, bytesRead ) );
if( data != null ) {
onReceived?.Invoke( data, new EventArgs() );
}
}
} catch( Exception ) {
@@ -42,13 +36,8 @@ namespace MistoxServer.Server {
}
public async Task Send<T>( T packet ) {
if( Mode == ServerMode.Authoritative ) {
byte[] byteData = mSerialize.PacketSerialize( packet );
await slowClient.GetStream().WriteAsync( byteData, 0, byteData.Length );
} else if( Mode == ServerMode.Passive ) {
byte[] byteData = packet as byte[];
await slowClient.GetStream().WriteAsync( byteData, 0, byteData.Length );
}
byte[] byteData = DataPacket.Serialize( packet );
await slowClient.GetStream().WriteAsync( byteData, 0, byteData.Length );
}
public void Dispose() {