What is the best way to do Character Selection?

Hi, I started on an idea today and I have a plethora of issues to get through in setting up the whole thing. However I was having a play around in blueprints and was trying to work out the best way to set up multiple tracked players.

So the idea I have is that on each level the player can choose one of the characters in their “team” in order to play that level with. Each character will have their own skills, health, ETC.

So I was thinking of putting an array in the game instance of characters, but making X amount of children of the character base and putting them in to an array seems like a long and unnecessary way to do things? I am hoping to have 10+ characters in the game as the player goes through they unlock more characters.

I’d rather set them up in something like a data table and then just access them from that, but would need the health stored for each character separately and carried across multiple levels as health is not reset, the game is persistent.

Does anyone have any experience with character selection during runtime in games who could share some wisdom, or know of any links or tutorials on the concept. If it were just a one character select for the entire play through it might be a bit easier, but the premise of the game is that it is a team of people.

Any thoughts appreciated, thanks.

Add all the player characters in the same Blueprint that the player is and delete them all. Then when you start the game, use a UI menu and add button and cast to the player character Blueprint that will create the character you want.

Hey thanks for the response, I have to say though that I don’t exactly follow?

You say add all the characters to the same player blueprint. I am not sure what you mean? Create several blueprints and then create a reference to them?

Then you say to delete them all…from the blueprint?

My original plan was to use a data table to set up all the base stats of the characters, then then create an array of player stat structures and then just use a boolean of “IsSelected” or something like that when a button is pressed containing that character’s name or image.

Here is a link to a video that I hope will help you:

Thanks, I’ll take a look.

If that did help you, can you mark this as resolved?