From 6b08ca51cc346df53a1ccb920874fd2840e4606f Mon Sep 17 00:00:00 2001 From: Chris Miles Date: Tue, 7 Feb 2023 21:23:24 -0600 Subject: [PATCH] [Logging] Add raw opcode when emu translated opcode is not found (OP_Unknown) via (C->S) (#2847) --- loginserver/client.cpp | 3 ++- ucs/clientlist.cpp | 3 ++- world/client.cpp | 3 ++- zone/client_packet.cpp | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/loginserver/client.cpp b/loginserver/client.cpp index c862538cb..97eb2a0dc 100644 --- a/loginserver/client.cpp +++ b/loginserver/client.cpp @@ -26,10 +26,11 @@ bool Client::Process() { EQApplicationPacket *app = m_connection->PopPacket(); while (app) { + auto o = m_connection->GetOpcodeManager(); LogPacketClientServer( "[{}] [{:#06x}] Size [{}] {}", OpcodeManager::EmuToName(app->GetOpcode()), - m_connection->GetOpcodeManager()->EmuToEQ(app->GetOpcode()), + o->EmuToEQ(app->GetOpcode()) == 0 ? app->GetProtocolOpcode() : o->EmuToEQ(app->GetOpcode()), app->Size(), (LogSys.IsLogEnabled(Logs::Detail, Logs::PacketClientServer) ? DumpPacketToString(app) : "") ); diff --git a/ucs/clientlist.cpp b/ucs/clientlist.cpp index dd4220bd7..2886edee3 100644 --- a/ucs/clientlist.cpp +++ b/ucs/clientlist.cpp @@ -643,10 +643,11 @@ void Clientlist::Process() while (KeyValid && !(*it)->GetForceDisconnect() && (app = (*it)->ClientStream->PopPacket())) { EmuOpcode opcode = app->GetOpcode(); + auto o = (*it)->ClientStream->GetOpcodeManager(); LogPacketClientServer( "[{}] [{:#06x}] Size [{}] {}", OpcodeManager::EmuToName(app->GetOpcode()), - (*it)->ClientStream->GetOpcodeManager()->EmuToEQ(app->GetOpcode()), + o->EmuToEQ(app->GetOpcode()) == 0 ? app->GetProtocolOpcode() : o->EmuToEQ(app->GetOpcode()), app->Size(), (LogSys.IsLogEnabled(Logs::Detail, Logs::PacketClientServer) ? DumpPacketToString(app) : "") ); diff --git a/world/client.cpp b/world/client.cpp index 3d142b2ef..150e3724c 100644 --- a/world/client.cpp +++ b/world/client.cpp @@ -1010,10 +1010,11 @@ bool Client::HandlePacket(const EQApplicationPacket *app) { EmuOpcode opcode = app->GetOpcode(); + auto o = eqs->GetOpcodeManager(); LogPacketClientServer( "[{}] [{:#06x}] Size [{}] {}", OpcodeManager::EmuToName(app->GetOpcode()), - eqs->GetOpcodeManager()->EmuToEQ(app->GetOpcode()), + o->EmuToEQ(app->GetOpcode()) == 0 ? app->GetProtocolOpcode() : o->EmuToEQ(app->GetOpcode()), app->Size(), (LogSys.IsLogEnabled(Logs::Detail, Logs::PacketClientServer) ? DumpPacketToString(app) : "") ); diff --git a/zone/client_packet.cpp b/zone/client_packet.cpp index f08c38303..31a5aa361 100644 --- a/zone/client_packet.cpp +++ b/zone/client_packet.cpp @@ -446,10 +446,11 @@ void ClearMappedOpcode(EmuOpcode op) // client methods int Client::HandlePacket(const EQApplicationPacket *app) { + auto o = eqs->GetOpcodeManager(); LogPacketClientServer( "[{}] [{:#06x}] Size [{}] {}", OpcodeManager::EmuToName(app->GetOpcode()), - eqs->GetOpcodeManager()->EmuToEQ(app->GetOpcode()), + o->EmuToEQ(app->GetOpcode()) == 0 ? app->GetProtocolOpcode() : o->EmuToEQ(app->GetOpcode()), app->Size(), (LogSys.IsLogEnabled(Logs::Detail, Logs::PacketClientServer) ? DumpPacketToString(app) : "") );