commit 9a5a0eef616fd41630251535a0b1b01e065dfbd5 Author: Mateus Rodrigues Date: Thu May 7 20:17:53 2026 -0300 first commit Co-authored-by: Cursor diff --git a/README.md b/README.md new file mode 100644 index 0000000..66661fa --- /dev/null +++ b/README.md @@ -0,0 +1,37 @@ +# ZMMO — Cliente Unreal Zeus MMO + +Cliente Unreal Engine 5.7 do projecto Zeus. Implementa o pipeline +"cliente solto + servidor valida input/velocidade" definido em ADR 0038 +(landscape autoritativo no cliente; servidor reservado para colisao de +objectos). + +## Arquitectura + +- `Source/ZMMO/Game/Entity/` — `IZMMOEntityInterface`, `AZMMOEntity`, + `AZMMOPlayerCharacter` (local, CMC livre), `AZMMOPlayerProxy` (remoto, + snapshot-only). +- `Source/ZMMO/Game/Controller/` — `AZMMOPlayerController` com Enhanced + Input + virtual joystick opcional. +- `Source/ZMMO/Game/Modes/` — `AZMMOGameMode` e `UZMMOGameInstance` + (auto-connect ao servidor Zeus em `Init`). +- `Source/ZMMO/Game/Network/` — `UZMMOWorldSubsystem` (registry + `EntityId -> AActor*`, dispatch dos delegates do `UZeusNetworkSubsystem`). + +## Dependencias + +- Unreal Engine 5.7 +- Plugin `ZeusNetwork` (do projecto servidor, em `Server/Plugins/Unreal/`) +- Plugin `ZeusMapTools` (editor-only, opcional) + +## Smoke test + +1. Servidor Zeus a correr em `127.0.0.1:27777`. +2. Abrir `ZMMO.uproject`, aguardar build do modulo `ZMMO`. +3. PIE: confirmar `[Zeus] Connected to server 127.0.0.1:27777` no Output Log + e o spawn do pawn local com `EntityId` autoritativo. + +## Configuracao + +- `bAutoConnectOnStart` (default `true`) em `UZMMOGameInstance`. Desligar + quando existir UI de login. +- `Config/DefaultEngine.ini` aponta `GlobalDefaultGameMode=/Script/ZMMO.ZMMOGameMode`.