Smashbros-like player management?

Hello, I would like to do a smashbros-like player management system, with a few twists:

  • Start on player select screen
  • Select multiple characters per-player, store in array for each player
  • Open level
  • Set all player viewports to a global camera (I got this working)
  • Spawn the first selected character in each players array
  • When a player’s character dies spawn the second character in their array
  • When a player runs out of characters got to end game screen
  • Ideally I’d be passing variables through levels, like stats, selected players, etc.

The following is what I have working:

  • Start game in level,
  • Have each player controller possess a pre-determined character
  • Set the view target for each player controller

Some questions I have:

  • When a possessed character dies, what happens to his player controller? Does he still have the same viewport?
  • How would I pass selected characters, kills, stats etc. between levels?

All help is greatly appreciated.

  • Player Controller stays, as you can possess/unpossess pawns using the same player controller.
  • You can pass variables between levels by setting/getting them via Game Instance BP. Game Instance runs as long as the game runs and it is easy to access from any BP(Get Game Instance > cast to yourgameinstance > Get/Set variable.

Thank you! I’ve managed to accomplish everything listed here.