Why does PlayerArray contain different types of PlayerStates?

I always assumed the PlayerState type specified for a GameMode would be the only type present in the GameState PlayerArray. E.g. if I configured for the Game Mode BatlleRoyale to use the PlayerState Battle Royale, I would not see a PlayerState of the type DeathMatch in it if I were to loop the Player Array.

This assumption always held up until I switched to UE 4.24. Now I can see a previous type of Player State in the Player Array when I travel seamlessly from one Game Mode to a different Game Mode. In my case being from travelling from the Main Menu to a different Game Mode called Overrun (see screenshot).Now I have to filter them out which is not an ideal solution.

Is this a bug or by design?

This is most likely related seamless travel, not all object are reset to make things faster. So what you see is PlayerState that was keeped intact from main menu. I think seamless travel is mainly for host and map transfer, was not really intended to main menu to server. But i guess this could be considered as bug, so try to report it

Hello,

We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.

https://epicsupport.force.com/unrealengine/s/

Thanks

Thanks, I will just filter them out based on class types for now