Skip to content

Commit

Permalink
Merge pull request #202 from InvalidArgument3/live-server-triage
Browse files Browse the repository at this point in the history
no keep that idiot
  • Loading branch information
InvalidArgument3 authored Oct 27, 2024
2 parents fc1c03f + 24c5437 commit 1a86794
Showing 1 changed file with 24 additions and 12 deletions.
36 changes: 24 additions & 12 deletions Dynamic Asteroids/Data/Scripts/DynamicAsteroids/MainSession.cs
Original file line number Diff line number Diff line change
Expand Up @@ -439,20 +439,32 @@ private void OnSecureMessageReceived(ushort handlerId, byte[] message, ulong ste
return;
}

try {
var batchPacket = MyAPIGateway.Utilities.SerializeFromBinary<AsteroidBatchUpdatePacket>(message);
if (batchPacket != null) {
ProcessBatchMessage(batchPacket);
return;
}
// Handle zone updates
if (handlerId == 32001) {
ProcessZoneMessage(message);
return;
}
catch {
var asteroidMessage = MyAPIGateway.Utilities.SerializeFromBinary<AsteroidNetworkMessage>(message);
if (!MyAPIGateway.Session.IsServer) {
ProcessClientMessage(asteroidMessage);

if (handlerId == 32000) {
try {
// Try to process as batch update first
var batchPacket = MyAPIGateway.Utilities.SerializeFromBinary<AsteroidBatchUpdatePacket>(message);
if (batchPacket != null) {
ProcessBatchMessage(batchPacket);
return;
}
}
else {
ProcessServerMessage(asteroidMessage, steamId);
catch {
// If batch deserialization fails, try single message
var singleMessage = MyAPIGateway.Utilities.SerializeFromBinary<AsteroidNetworkMessage>(message);
if (singleMessage != null) {
if (!MyAPIGateway.Session.IsServer) {
ProcessClientMessage(singleMessage);
}
else {
ProcessServerMessage(singleMessage, steamId);
}
}
}
}
}
Expand Down

0 comments on commit 1a86794

Please sign in to comment.