Make sure that you’re calling OpenLevel only on the client that owns the character that has stepped into the trigger. If the server calls it, it will change the map, quite possibly kicking the players. Other players shouldn’t call it either. To call it only on the owning client, you can use IsLocallyControlled node on the character.
The screenshot is epic :). Well that’s certainly not the best way to do it - I’d probably create a new widget to use as class toggles. That widget should contain a button that when clicked, changes its style to the “active” style and changes the style of its siblings (you can use GetParent -> GetChild) to “inactive” style. Active and inactive styles can be variables. When clicked, it should also set ClassSelection variable in MainMenu to the toggle’s character class, the same as it was done in the demo. The character class variable of the toggle widget should be Exposed and Editable, so that you can choose it when adding a new toggle to the MainMenu in Designer view. You can set the text and/or icon of the toggle in its Event Construct, based on its character class.