OnPostLogin executes before BeginPlay for server in multiplayer game mode. Is this expected behavior?

Please see the question. Some screenshots:

BeginPlay in GameMode

285443-ue4ss1.png

OnPostLogin in GameMode

285444-ue4ss2.png

Output Log:

285445-ue4ss3.png

Is this expected? Shouldn’t BeginPlay always execute before OnPostLogin, even for the server?

This is so for the playercontroller of the server, the others (Clients) are executed after the BeginPlay

"AGameMode::PostLogin

Called after a successful login. This is the first place it is safe to call replicated functions on the PlayerController."

If somebody met this problem what you can do is to put all initialization logic not for begin play but for overriden InitGame function, so it will always be executed before PostLogin