question

casper7609@naver.com avatar image
casper7609@naver.com asked

Realm specific ranking

Hi, I'm wondering there is any way to achieve my goal. It's like below

1. few realms like realm A, B, C

2. many players in each realm, say 10,000 for each

3. individual player stacks points/contribution for their realm and gets reward in the end (per week or something) by their contribution divided by percentages like

1) top 20% rewarded great items

2) top 20~ 40 % rewarded good items.. and so on

 

I've been thinking that giving each player statistics like RealmA_Score, RealmB_Score, RealmC_Score...but stuck at getting top percentage of players among all players(not just like 1st, 2nd, 3rd..). 

Is there any api that i can retrieve the number of player in a title or... get ranks in percentage?

 

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

brendan avatar image
brendan answered

For question 1, this sounds partly like a sharding system, partly like a guild system, and partly like a player bucketization system. So let me ask - what is the high-level goal? If you only have a few realms and limit players to 10K per, that means that you limit your entire game population to (number of realms) x 10,000, which seems like something you'd want to avoid. If it's a bucketization system, which I suspect it more your goal, you would want to add players to a realm until it is "full" and then move to another realm for new players (though there's also the question of whether the players should be grouped by any factor like skill).

Contribution of scores to a communal pool is then more of a guild/clan feature, though I believe what you mean is that you simply have a leaderboard per realm, which also goes well with a bucketization system.

We'll be adding bucketization in an update later this year, which if I'm reading your question right, would support this. If you need to have something right now, I would recommend using an external data table to coordinate this data - and you can use the http functionality in Cloud Script to enable this with any web API-based database.

For rewarding players based on their rank in the leaderboard, you can do this using our resetting statistics (leaderboards). Just set the reset period, and when the leaderboard revisions (moves to a new version), the previous week's leaderboard will be available as a CSV in S3 so that you can pull it down and distribute rewards based on percentages. Using a global leaderboard would be the way to go for now, correlating that with the data you're storing on which "bucket" they're in.

For the random virtual currency reward, you can do that via Cloud Script - just have a consumable item in your drop table which represents each randomization you want to do, and then use the https://api.playfab.com/Documentation/Server/method/EvaluateRandomResultTable call to get a draw from the table (but without rewarding the item). You could then use the correct Grant or Add API call to give the player the item/currency you want to (randomizing in the script).

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

casper7609@naver.com avatar image
casper7609@naver.com answered

Also, is there any way to reward player some random range of item/virtual currency? like 100~200 gold or 1~3 short sword. not just fixed amount...

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

casper7609@naver.com avatar image
casper7609@naver.com answered

um..okay! thank you for your answer. I may need to dig more. Yes, bucketization was what i meant and 10K was just an example.

Thank you!

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.