From c0f6d32d95ef2676a8bd8dd7231c8ad230bdf26a Mon Sep 17 00:00:00 2001 From: Mateus Rodrigues Date: Thu, 11 Jun 2026 18:01:32 -0300 Subject: [PATCH] feat(zmmo-client): logs AOI categorias + K4 cfg recv Rodando sem Jitter visivel. - DECLARE/DEFINE LogZeusHandoff/AOI/Proxy/HaloTransition no modulo ZMMO (nao no plugin) por causa do adaptive non-unity build do UBT que usa git status do repo do cliente -- plugin em outro repo nao dispara rebuild quando edit so o header dele. - ZeusAOIComponent::HandleAoiConfig loga raios recebidos do server pra cruzar com Net.AOI server-side ("AOI cfg recv interestCm=6000 (60m) despawnCm=8000 (80m)"). - Parte da milestone 2026-06-11: proxy/PIE estaveis apos fix de double-emit AOI no server (AOIRegistry::ForceTickNow). --- Source/ZMMO/Game/Network/ZeusAOIComponent.cpp | 7 ++++++ Source/ZMMO/ZMMO.cpp | 10 +++++++- Source/ZMMO/ZMMONetLog.h | 24 +++++++++++++++++++ 3 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 Source/ZMMO/ZMMONetLog.h diff --git a/Source/ZMMO/Game/Network/ZeusAOIComponent.cpp b/Source/ZMMO/Game/Network/ZeusAOIComponent.cpp index 4ef4005..abcb5b6 100644 --- a/Source/ZMMO/Game/Network/ZeusAOIComponent.cpp +++ b/Source/ZMMO/Game/Network/ZeusAOIComponent.cpp @@ -3,6 +3,7 @@ #include "ZeusAOIComponent.h" #include "ZeusNetworkSubsystem.h" // plugin ZeusNetwork: OnDebugAoiInfo + SendDebugAoiRequest +#include "ZMMONetLog.h" // Batch 2.5: LogZeusAOI (categoria do modulo ZMMO) #include "DrawDebugHelpers.h" #include "Engine/GameInstance.h" @@ -107,6 +108,12 @@ void UZeusAOIComponent::HandleAoiConfig(float InterestCm, float DespawnCm) { InterestRadiusCm = InterestCm; DespawnRadiusCm = DespawnCm; + // K4: log AOI cfg recebido do server (paridade com Net.AOI server-side + // "config_applied ZI=... ZD=..."). Cold path (1 por sessao). + UE_LOG(LogZeusAOI, Display, + TEXT("AOI cfg recv interestCm=%.0f (%.0fm) despawnCm=%.0f (%.0fm)"), + InterestCm, InterestCm / 100.0f, + DespawnCm, DespawnCm / 100.0f); } bool UZeusAOIComponent::ResolveOverlay(EZeusAOIOverlay Overlay) const diff --git a/Source/ZMMO/ZMMO.cpp b/Source/ZMMO/ZMMO.cpp index a6afa61..a680f89 100644 --- a/Source/ZMMO/ZMMO.cpp +++ b/Source/ZMMO/ZMMO.cpp @@ -1,8 +1,16 @@ // Copyright Epic Games, Inc. All Rights Reserved. #include "ZMMO.h" +#include "ZMMONetLog.h" #include "Modules/ModuleManager.h" IMPLEMENT_PRIMARY_GAME_MODULE( FDefaultGameModuleImpl, ZMMO, "ZMMO" ); -DEFINE_LOG_CATEGORY(LogZMMO) \ No newline at end of file +DEFINE_LOG_CATEGORY(LogZMMO) + +// Batch 2.5 — categorias vivem no modulo ZMMO (nao no plugin) por causa +// do adaptive non-unity build do UBT (ver ZMMONetLog.h). +DEFINE_LOG_CATEGORY(LogZeusHandoff) +DEFINE_LOG_CATEGORY(LogZeusAOI) +DEFINE_LOG_CATEGORY(LogZeusProxy) +DEFINE_LOG_CATEGORY(LogZeusHaloTransition) \ No newline at end of file diff --git a/Source/ZMMO/ZMMONetLog.h b/Source/ZMMO/ZMMONetLog.h new file mode 100644 index 0000000..6cccc12 --- /dev/null +++ b/Source/ZMMO/ZMMONetLog.h @@ -0,0 +1,24 @@ +// ============================================================================= +// ZMMONetLog.h — categorias UE_LOG do CLIENTE ZMMO (modulo Game), nao do plugin. +// +// Por que aqui e nao no plugin ZeusNetwork? +// UBT usa `git status` em Clients/ZMMO/ pra adaptive non-unity build. O plugin +// ZeusNetwork mora em Server/Plugins/Unreal/ZeusNetwork/ (OUTRO repo git), +// entao UBT nao enxerga mudancas la e pula o rebuild do plugin. Resultado: +// adicionar DECLARE_LOG_CATEGORY_EXTERN no header do plugin nao funciona +// sem rebuild manual do plugin (Build.bat). Solucao: categorias que vivem +// no proprio CLIENTE moram aqui — UBT enxerga e linka direto. +// +// Setup -logcmds="LogZeusHandoff Verbose, LogZeusAOI Verbose, LogZeusProxy Verbose" +// pra filtrar Output Log seletivamente. +// +// DEFINE_LOG_CATEGORY correspondente em ZMMO.cpp. +// ============================================================================= +#pragma once + +#include "CoreMinimal.h" + +DECLARE_LOG_CATEGORY_EXTERN(LogZeusHandoff, Log, All); +DECLARE_LOG_CATEGORY_EXTERN(LogZeusAOI, Log, All); +DECLARE_LOG_CATEGORY_EXTERN(LogZeusProxy, Verbose, All); +DECLARE_LOG_CATEGORY_EXTERN(LogZeusHaloTransition, Log, All);