It looks like you're new here. If you want to get involved, click one of these buttons!
So - I have a "basic" question and would like to get some different answers to that question, since from my point of view there is not "the best way" on how to do it generally.
How would you properly setup a player object in an online multiplayer game? Often, when I did local split screen or local games in general for e.g. single player, I used Singletons to easily get the player instance and perform actions with it - Also in combination with different systems, like Challenges, Rewards, Interaction with Shop, Notifications, ...
Pretty clearly, using a Singleton approach does not apply very well when talking about online multiplayer, as there are multiple instances of type "player" in place. Is there a common approach which you prefer to use? How do you properly setup and track the progress of the individual player? And also, what would be your recommendations for hooking it up to different systems (as mentioned reward system, tracking of challenge-progress, ...). As I often used Singletons for those as well, one could argue that it might be "easier" / more sufficient to put those sub-systems as part of the player and only keep the notification system as "global" singleton, which then can also provide notifications to all players at once.