UE5 Multiplayer

sequenceDiagram Note left of Client: PendingNetGame->SendInitialJoin Client->>Server: NMT_Hello Note over Client,Server: initial client connection message Server->>Client: NMT_Challenge Note over Client,Server: server sends client challenge string to verify integrity Client->>Server: NMT_Login Note over Client,Server: client requests to be admitted to the game Note right of Server: GameModeBase->PreLoginAsync Note right of Server: -> World->PreLoginComplete Note right of Server: --> World->WelcomePlayer Note right of Server: ---> GameInstance->ModifyClientTravelLevelURL Note right of Server: ---> GameModeBase->GameWelcomePlayer Server->>Client: NMT_Welcom Note over Client,Server: If login is successful, then server tells client Note over Client,Server: they're ok'ed to load the server's level Note left of Client: Engine->TickWorldTravel Note left of Client: PendingNetGame->SuccessPending <- Note left of Client: Engine->LoadMap <-- Note left of Client: PendingNetGame->LoadMapCompleted <-- Note left of Client: PendingNetGame->SendJoin <--- Client->>Server: NMT_Netspeed Note over Client,Server: client sends requested transfer rate Client->>Server: NMT_Join Note over Client,Server: once the client has loaded the map, it sends Note over Client,Server: final join request (spawns PlayerController) Note right of Server: World->SpawnPlayActor Note right of Server: -> GameMode->Login Note right of Server: -> GameMode->PostLogin Note right of Server: PlayerController->ClientTravel