Reduce overhead of every single order/sync frame by 162/222 bytes
This commit is contained in:
@@ -275,8 +275,13 @@ namespace OpenRA.Server
|
|||||||
// Assign the player number.
|
// Assign the player number.
|
||||||
newConn.PlayerIndex = ChooseFreePlayerIndex();
|
newConn.PlayerIndex = ChooseFreePlayerIndex();
|
||||||
newConn.AuthToken = token;
|
newConn.AuthToken = token;
|
||||||
SendData(newConn.Socket, BitConverter.GetBytes(ProtocolVersion.Version));
|
|
||||||
SendData(newConn.Socket, BitConverter.GetBytes(newConn.PlayerIndex));
|
// Send handshake and client index.
|
||||||
|
var ms = new MemoryStream(8);
|
||||||
|
ms.WriteArray(BitConverter.GetBytes(ProtocolVersion.Version));
|
||||||
|
ms.WriteArray(BitConverter.GetBytes(newConn.PlayerIndex));
|
||||||
|
SendData(newConn.Socket, ms.ToArray());
|
||||||
|
|
||||||
PreConns.Add(newConn);
|
PreConns.Add(newConn);
|
||||||
|
|
||||||
// Dispatch a handshake order
|
// Dispatch a handshake order
|
||||||
@@ -533,10 +538,12 @@ namespace OpenRA.Server
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
SendData(c.Socket, BitConverter.GetBytes(data.Length + 4));
|
var ms = new MemoryStream(data.Length + 12);
|
||||||
SendData(c.Socket, BitConverter.GetBytes(client));
|
ms.WriteArray(BitConverter.GetBytes(data.Length + 4));
|
||||||
SendData(c.Socket, BitConverter.GetBytes(frame));
|
ms.WriteArray(BitConverter.GetBytes(client));
|
||||||
SendData(c.Socket, data);
|
ms.WriteArray(BitConverter.GetBytes(frame));
|
||||||
|
ms.WriteArray(data);
|
||||||
|
SendData(c.Socket, ms.ToArray());
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user