Files
ZMMO/Source
Mateus Rodrigues 6968ac4656 fix(client): catch-up de presenca + wire helpers compartilhados
ZMMOWorldSubsystem:
- Bind dos delegates + replay do cache de proxies remotos movidos
  de Initialize pra OnWorldBeginPlay. Initialize roda muito cedo no
  pipeline de LoadMap (antes do GameMode ser instanciado e do
  WorldPartition terminar de carregar cells) — atores dinamicos
  spawnados ali eram perdidos durante o setup posterior do mundo.
- Replay agora acontece quando o World REALMENTE comeca (GameMode
  ativo, cells inicializadas) — proxies remotos persistem.

WireHelpers.h (novo):
- Helpers de leitura/escrita binarios LE/UTF-8 (ReadU8/U16/U32/U64/
  Float/StringUtf8/Uuid16 + Write*) como inline em namespace
  ZMMOWire. Substitui anonymous namespaces duplicados que existiam
  em 3 telas do FrontEnd. UBT Adaptive Build agrupava os .cpp em
  unity files diferentes; quando reorganizava as unities, dois
  arquivos caiam na mesma TU e os anonymous namespaces colidiam
  (ODR violation — "funcao ja tem corpo").
- inline em header tem semantica de "uma definicao por programa",
  resolvendo a colisao independente de como o UBT organize unities.

UIServerSelectScreen_Base, UIUserLobbyScreen_Base, UICharacterCreatePage_Base:
- Removidas as definicoes duplicadas, agora usam ZMMOWire::* via
  using-declarations.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-22 22:01:33 -03:00
..