Is an Open Group the best way to generate the list of online players (and rank it according to a statistic)?

would like to display in game list of online players with their ‘ELO’ statistic as ranking metric for the list.

Is an Open Group to which you add all players when they connect and disconnect them when they leave the right approach?
Tried my best on the documentation…

Hello @Ploulack

When you say “list of online players”, do you mean ALL players connected at that moment in your game? Or only in your group/party?

If it’s the former, then yes, an Open Group that all players connect to automatically when logging in would be the best approach for this.

I’m assuming that your number of players is still relatively low, and you want them to be able to find each other. This approach would need some optimizations if the number of connected players is very high, like thousands of them.

Thank you.
Yes, I do mean all players connected with a cap at 100.
Great that Open Group will work.

Is there a better way to get a statistic for each one in the group? So that if, say, we have 200 online, we can get the 50 above and the 50 below the user based on the user’s ranking?

Hello @Ploulack

Sorry for the delay, I have been busy traveling.

Being able to see all your possible opponents and be able to choose who to face from a list seems like a viable solution only if the number of connected players is extremely low, as we already mentioned.

If the number of concurrent users begins to grow, it is better to use systems like Matchmaking, which are precisely systems specialized in finding fair games between players.

Maintaining an always-updated list of all the online players who enter and exit the game and their statistics can be very expensive in terms of API calls. You may also encounter frequent list desynchronization issues.

So my recommendation would be, use that Open Group for now so all players can see each other, but think about implementing a matchmaking system to create fair matches using player rankings.

Sorry for the delay, I have been busy traveling.
No problem, this is a longish term discussion.

Can the matchmaking send back a list? Say I have 1000 connected players (the dream in VR… :slight_smile: ), and I want to display to my user the 20 users above and below their league points, can matchmaking be used for getting that list?

Because there’s a big difference between a queue and clicking on a list, checking profile and various stats before sending out an invite or clicking to where that player is (we have an ‘open play area’).