Consolidar GameplayAbilitySystem na main (baseline cliente tudo funcionando 2026-06-16) #6
Reference in New Issue
Block a user
Delete Branch "GameplayAbilitySystem"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Consolida a branch
GameplayAbilitySystem(10 commits novos desde o PR #5) no estado validado in-game como baseline tudoAcompanha commit server 54f2f9a (P10-FIX-LEGACY). Resolve bug "vejo proxy de UM mas o outro NAO ve" + "proxy fantasma do proprio player" -- causado por server emitir S_SPAWN_PLAYER local=0 do proprio entityId via AOI re-emit (workflow wcyeqgrad finding). Source/ZMMO/Game/Network/ZeusWorldSubsystem.cpp ================================================ HandlePlayerSpawned guard novo logo apos EntityId==0 check: if (LocalEntityId != 0 && EntityId == LocalEntityId) { UE_LOG(LogZMMO, Verbose, TEXT("ignoring S_SPAWN_PLAYER for own LocalEntityId=%lld (bIsLocal=%d)"), LocalEntityId, bIsLocal ? 1 : 0); return; } Sem o guard, server re-emit S_SPAWN_PLAYER local=0 do proprio entityId (via AOI SetOnEnter callback em catch-up cross-server ou recompute pos- handoff) criava proxy fantasma do proprio player. GAS/HUD/PlayerArray roteava via fantasma e o pawn real perdia vinculo de identidade visivel pros outros players. Defesa em profundidade -- complementa fix server-side (AoiReplicationHelpers.cpp:28 SendSpawnPlayerToConn agora tem skip-self guard antes de construir payload) + SpawnKey dedupe sem IsLocal no plugin (ZeusNetworkSubsystem.cpp:949 removeu IsLocal do hash). Config/DefaultZeusV1.ini ========================= Config inicial para UZeusNetworkingClientSubsystem (P9-6/P9-7 plugin V1). Aponta para Gateway 127.0.0.1:7777 (fluxo padrao producao). Documenta alternativa de direct connect 9001 (debug only -- bug Windows multi-NIC loopback). bUseZeusNetworkingV1=True ativa V1 plugin em paralelo ao legacy (transport V1 hoje quebrado via Gateway -- channelId nao eh routing key, Phase 12 territory; gameplay continua via legacy ate la). Validado smoke 2 PIE 2026-06-08 20:32 ====================================== * SP_01: players=2 conns=2 + AOI players=2 maxSet=1 enters=5 hyst=92 stable * UE: [PIE0] e [PIE1] prefix funcionando (commit server 54f2f9a ZNET_PIE_PREFIX) * "S_SPAWN_PLAYER duplicate ignored" dedupe pegando re-emit (Batch 2) * S_CHAR_INFO trocado correto: PIE0 ve Olatudook, PIE1 ve Mateuus * Saida limpa: UnregisterViewer + Broadcast S_DESPAWN_PLAYER targets=1 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>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).- AZeusFrontierOverlayActor: paredes (ProceduralMesh, material de portal) em todas as fronteiras do grid; label DrawDebugString no centro de cada cell com notacao de quadtree ("Cell 0" / "Cell 0,2" pos-split) + nome do servidor. - UZeusAOIComponent: liga via toggle "Fronteiras (Mesh)" / CVar zeus.debug.frontier, spawna/atualiza o ator, re-pede o 6163 a cada 2s (reflete split/merge). - ZMMO.Build.cs: + ProceduralMeshComponent. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>