Skip to content

COMMUNITYBOARD - RankingSystem (Top 15 PVP/PK)

Featured Replies

@StinkyMadnessofc 1h delay is NOT a shit, you could even make it update once a day. Its like saying olympiad ranking is shit bcs it updates only once, at the end. Plus, there is shit load of connections happening here and there and you care for one more, mhm, okay 😅

  • Author
11 minutes ago, SweeTs said:

@StinkyMadnessofc 1h delay is NOT a shit, you could even make it update once a day. Its like saying olympiad ranking is shit bcs it updates only once.

Ofc that's shit for PvP server 😛 I had many requests to update it after every match 😄 haha

5 hours ago, Kara said:

The lack of knowledge in this topic is monstrous.

Nobody said that its something super heavy to update it each one hour.
The point is to update as quick is possible (as if you are the only person that visit that page last 1 minute you will see it directly updated).

The point of timestamps its that works and player can see more updated statistic than waiting 1 hour for an info he is looking right away avoiding as many useless connections.. that's all.

@StinkyMadness

Then, I got another idea. Make a thread pool for each 1min, even 1min and add a new variable flag. Like boolean updateRequested. As long as it's false, there is no update. Once player visit community board set flag to true and on next loop, update the link. So, you got control for "unnecessary connections" and "update on demand".

 

You eat cookie and still got cookie.

2 hours ago, SweeTs said:

@StinkyMadness

Then, I got another idea. Make a thread pool for each 1min, even 1min and add a new variable flag. Like boolean updateRequested. As long as it's false, there is no update. Once player visit community board set flag to true and on next loop, update the link. So, you got control for "unnecessary connections" and "update on demand".

 

You eat cookie and still got cookie.

Cookie monster! 

@StinkyMadness another approach to that if u want the real time update and not using threadpools every x seconds is to store the pvp's,pk's in a temp List holder. Whenever a player gets a pvp,pk  you update/store his incremented value along with his player info to the list. If user exists update his pvp or pk score with the new one ++ (pvp/pk) or add a new entry.

 

On server start: Feed the List with the first top x players from the database.

On requestbypass sort the list by highest values. If u want to avoid that u can use a sort algorithm and sort the list when adding new data and then u show the first x from the List as it is.

 

I dont know how stressful this might be for the server.

Edited by LordPanic

  • Author

I don't see why its so complicated and have 3 pages on how should be.. every Raking system shared until today was ThreadPool + Connection each X minutes. I just shared one different approach to avoid as many useless task and mostly be updated each time player reach it.. that's all 😄

There can be boolean for _requestToView and avoid update as far its false.. but its way more simple with one timestamp I guess.

 

@LordPanic

7 hours ago, LordPanic said:

On server start: Feed the List with the first top x players from the database.

You have to feed the CHM with all kills information's.

That's how its was one of my previews systems but this one its way more simple I think...

 

23 minutes ago, StinkyMadness said:

I don't see why its so complicated and have 3 pages on how should be.. every Raking system shared until today was ThreadPool + Connection each X minutes. I just shared one different approach to avoid as many useless task and mostly be updated each time player reach it.. that's all 😄

There can be boolean for _requestToView and avoid update as far its false.. but its way more simple with one timestamp I guess.

 

@LordPanic

You have to feed the CHM with all kills information's.

That's how its was one of my previews systems but this one its way more simple I think...

 

 

Even tho you're not my favorite person to talk with i have to admit that i agree with you and that all who comment here have limited programming skills regarding this language.

 

The way you made the code is not the proper in terms of  "synchronization". If you wanted make it like that use an AtomicReference, AtomicBoolean or work like CopyOnWriteArrayList which copy the content upon modification to avoid concurrent problems. Yet the whole topic's answer is a joke.

 

So please to stop this 3-4 pages spam, if anyone has better code than this share it. Here's is share section no general discussion. Thats the way this guy is coding. If you want teach him DM him or go in general discussion section. 

  • Author
42 minutes ago, Kara said:

Thats the way this guy is coding. If you want teach him DM him or go in general discussion section. 

BTW this is one year ago code, I share it because I updated mine, just aCis still not using JDK14+ to share my new version. Anyway.. its just one share to show one other way on statistic systems, can be improved can be worst than this share..

  • 2 weeks later...

Simple and Nice

i adapt it to my server,verry nice gj.

  • 1 month later...

Thank you for your share ! 

 

Edited by arm4729

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.