feat(char-spawn): Fase 4 — DT_Maps + pawn reposicionado na pos do DB

Cliente UE (foco da frente):
- FZMMOMapDef + FZMMOMapSpawn (Source/ZMMO/Data/World/MapDef.h) — row do
  DT_Maps com MapId/DisplayName/ClientLevel/Spawns[] taggeados
- DT_Maps.uasset (Content/ZMMO/Data/World/) — 1 row "TestWorld" mapId=1
  apontando pra L_TestWorld + spawn "default" em (0,0,200)
- L_TestWorld movido: /Game/ThirdPerson/TestWorld -> /Game/ZMMO/Maps/World/L_TestWorld
  (75 ext actors WP duplicados, original deletado)
- ZMMOCharSummary.MapName (FString) -> MapId (int32)
- UIUserLobbyScreen_Base parseia uint16 mapId no S_CHAR_SELECT_OK + chama
  Flow->TravelToMapById(mapId) + Flow->SetPendingSpawnPose(pos, yaw)
- UIFrontEndFlowSubsystem: MapsTableAsset (config), FindMapDef,
  ResolveLevelPathByMapId, TravelToMapById, SetPendingSpawnPose/Consume
- AZMMOPlayerCharacter::BeginPlay: consome PendingSpawnPose do Flow e
  SetActorLocationAndRotation no pawn local (substitui PlayerStart default)
- DefaultGame.ini: MapsTableAsset=/Game/ZMMO/Data/World/DT_Maps.DT_Maps
- .gitignore: + .vscode/

Outras mudancas no working tree (paralelas a esta frente):
- Content/AutoCreated/MMOWidget/Widgets/WBP_* (boot/login/charselect/etc.)
- Content/AutoCreated/MMOWidget/Fonts/Font_* + font_*_Face
- Refatoracao de fontes ZMMO/UI/Fonts (FF_* deletadas, F_* + Face)
- Content/__ExternalActors__/ZMMO/Debug/Maps/L_Test_UI/* (75 actors)
- Content/Editor/ZeusUMGForge/FontMap.uasset
- Content/ZMMO/UI/Shared/UI_CheckBox_Master.uasset
- Content/ExternalContent/{Fab,Marketplace,Megascans}/.gitkeep
- Content/ThirdPerson/Menu.umap
This commit is contained in:
2026-05-23 02:00:48 -03:00
parent 6968ac4656
commit 34e9dbe454
250 changed files with 918 additions and 8 deletions

View File

@@ -29,3 +29,8 @@ UIStyleTable=/Game/ZMMO/Data/UI/DT_UI_Styles.DT_UI_Styles
; Mapa estado->tela. O DA já existe (RootLayoutClass = WBP_PrimaryGameLayout);
; StateScreens fica vazio até os WBPs de página virem do Zeus UMG Forge (§4.8).
ScreenSetAsset=/Game/ZMMO/UI/FrontEnd/DA_FrontEndScreenSet.DA_FrontEndScreenSet
; Fase 4 — char spawn DB-driven. DT_Maps espelha o `maps_config.json` do
; server (Server/ZeusServerEngine/Config/DataTables/maps_config.json) — o
; cliente resolve `mapId -> ClientLevel/spawns` via FZMMOMapDef rows.
MapsTableAsset=/Game/ZMMO/Data/World/DT_Maps.DT_Maps