# |
Jul 18th 2018, 12:39 |
flavius |
you just need to get the difference in points between the looser and the winner and add an arbitrary number like 10 for a won match |
# |
Jul 18th 2018, 12:37 |
flavius |
and if players leave you don't have to re-rank them |
# |
Jul 18th 2018, 12:37 |
flavius |
that would make it so much easier |
# |
Jul 18th 2018, 12:37 |
flavius |
tbh, i still feel like a point system would be way better... so if level 90 beats level 1 he gets so many points that he's now in front of level 1 |
# |
Jul 18th 2018, 12:36 |
flavius |
i hate it when that happens, especially if they are my car keys :P |
# |
Jul 18th 2018, 12:35 |
turkles |
I thought Collections may have something handy to help, but then I lose my keys |
# |
Jul 18th 2018, 12:34 |
flavius |
oh god :slightly_smiling_face: |
# |
Jul 18th 2018, 12:33 |
turkles |
I thought... this will be easy. But. No. |
# |
Jul 18th 2018, 12:33 |
turkles |
Then save back again |
# |
Jul 18th 2018, 12:33 |
turkles |
Then I need to go through and re-rank on matches that I have results for |
# |
Jul 18th 2018, 12:33 |
turkles |
it will go into a database, but the players being ranked will change (as they join or leave clans...) and I only have to rank within a specific clan. So those who just joined have null rank, and those who left have left half the ranks empty. So first thing I do is re-rank based on current values and give a rank to those who joined |
# |
Jul 18th 2018, 12:30 |
flavius |
yeah, @tim has the right idea |
# |
Jul 18th 2018, 12:29 |
flavius |
don't you have this saved in a database? |
# |
Jul 18th 2018, 12:28 |
turkles |
I know what I need to do, but I can't figure out how. I was going to just loop the array and do -- where between old and new, but it seems as I edit the array it puts the entry to the back, and loops again, so anything between the two ranks gets reduced not by 1, but to the lowest rank |
# |
Jul 18th 2018, 12:27 |
tim |
set rank = rank + 1 where rank between oldPlayerRank and newPlayerRank - 1, and then you set newPlayerRank to oldPlayerRank |
# |
Jul 18th 2018, 12:26 |
flavius |
40 beats 38, 40 becomes 38, 38 becomes 39, 39 becomes 40 |
# |
Jul 18th 2018, 12:26 |
flavius |
regardless if the player is going up one or two at most you still need to update all of the other ranks to make him fit |
# |
Jul 18th 2018, 12:24 |
flavius |
lol good luck with that :slightly_smiling_face: |
# |
Jul 18th 2018, 12:24 |
flavius |
yeah but a good programmer has every thing covered |
# |
Jul 18th 2018, 12:24 |
turkles |
normally its a player going up one or two at most |
# |
Jul 18th 2018, 12:24 |
turkles |
yes, but likelyhood of a big change like that is low... very low |
# |
Jul 18th 2018, 12:24 |
flavius |
madness :P |
# |
Jul 18th 2018, 12:23 |
flavius |
because if 1 becomes 2, 2 becomes 3 and so on |
# |
Jul 18th 2018, 12:23 |
turkles |
no, I have to update *if* a low rank beats a high rank, and only those that are in the rank between the two |
# |
Jul 18th 2018, 12:23 |
flavius |
so for every game played you will need to update **ALL** of the player ranks? that's so inefficient |
# |
Jul 18th 2018, 12:23 |
turkles |
I don't make the rules, I just have to code something to work out who is what rnk |
# |
Jul 18th 2018, 12:22 |
turkles |
it isn't tennis, and dem is the rules of the system :P |
# |
Jul 18th 2018, 12:22 |
turkles |
yes |
# |
Jul 18th 2018, 12:22 |
flavius |
if 1 looses to 90, 90 becomes 1 and 1 becomes, what, 2? |
# |
Jul 18th 2018, 12:21 |
flavius |
90 beats 1 and now he's 1? what madness is this? :slightly_smiling_face: |
# |
Jul 18th 2018, 12:20 |
turkles |
not quite, if my player rank 90 plays one game and beats player rank 1, they are rank 1. In a points system they only have whatever the points value of the match is? |
# |
Jul 18th 2018, 12:19 |
flavius |
you can do that with a point system as well :P |
# |
Jul 18th 2018, 12:19 |
turkles |
player who they beat is now rank 4, player who was rank 4 is now rank 5 |
# |
Jul 18th 2018, 12:19 |
turkles |
if player rank 5 beats player rank 3, they take rank 3 |
# |
Jul 18th 2018, 12:19 |
flavius |
then how do you calculate the rank? |
# |
Jul 18th 2018, 12:18 |
turkles |
but there are no points.. |
# |
Jul 18th 2018, 12:17 |
flavius |
File uploaded https://cakesf.slack.com/files/U75U0UMR9/FBSKFMC8J/image.png / https://slack-files.com/T053DPNCM-FBSKFMC8J-186151c8a1 |
# |
Jul 18th 2018, 12:16 |
flavius |
it makes no sense to save the rank, you should save the points for each player |
# |
Jul 18th 2018, 12:15 |
turkles |
@flavius There are events which a random number of people can enter, which rank players, and I only have to change those where someone has ended up above someone with a higher rank. It's a bit arbitrary like a tennis ladder. |
# |
Jul 18th 2018, 12:13 |
info356 |
I need some help with events.. https://stackoverflow.com/questions/48372487/cakephp-3-dynamic-database-connection Where should i put: \Cake\Event\EventManager::instance()->on( 'Connection.aliased', |
# |
Jul 18th 2018, 12:08 |
flavius |
why not save the points and do the rank on the fly? |