Lyra Multiplayer: User settings keep overwriting

I got Lyra working with EOS, playtested it with friends, all good. There are 3 characters which all have the B_Hero_ShooterMannequin blueprint as base, slap on a component for the meshes and voila I got a character. I got some abilities working as well, and even limiting weapon pickups to certain characters. In standalone…

Once I run the game in the editor with netmode clientServer (2 sessions) I see that the hosts character works fine once the lobby is created. If the client picks a character (which I saved in usersettings) the hosts character also changes (not visually, only abilities/pickups). Once the hosts character dies, it respawns as the client’s character.

Once I playtest this with friends it turns around; the host picks a character and that one works. If the clients pick any other character they only get the abilities that are shared between the characters. For instance, if the hosts character has a dash, a ground stomp and a grenade while the clients character has a ground stomp and can fly, the clients character will only be able to ground stomp when it loads in.

Here’s the Event graph of my character selection screen (the part that saves the character selection): 2023-11-29-12-24-26-Lyra-Starter-Game-Unreal-Editor hosted at ImgBB — ImgBB
CL_CharacterSelected runs on owning client reliably

Here’s the B_Hero_Shootermannequin blueprint part that loads in the character selection and sets the variable.

And lastly the PickRandomCharacter BP that adds the character part.

Update:
It’s got something to do with the user settings I think…
In the character selection screen I save the variable “characterSelected” to the user settings

When I read those user settings in the Shootermannequin blueprint I get completely different results.

When I select the character that’s supposed to have character index 4 (int32), the first image/blueprint will tell me ‘4’, whereas the second will tell me ‘2’. No clue where the ‘2’ came from.