Калькулятор статистики игроков

Из 3,4 миллиона игроков только 9000 входят в число 1000 лучших в общем зачете.

Из этих 9 тысяч 4 тысячи были включены в базу данных Арубы. Их статистика уже доступна в рейтинге.

 

Скрытый текст

ABSOLUTE RANKING: TOP 3

General:

effRating:

1° nickName: Cavi1 - value: 9695

2° nickName: karaED - value: 9665

3° nickName: Kastante - value: 9551

 

prestigeBonus:

1° nickName: Ben4ik - value: 245

2° nickName: Flibastier - value: 245

3° nickName: IAgent008 - value: 245

 

accountRank:

1° nickName: xLeonx - value: 25

2° nickName: Sparax - value: 25

3° nickName: VikRus - value: 25

 

karma:

1° nickName: unknown716500 - value: 2466896

2° nickName: zerg42rus - value: 2378539

3° nickName: NordSiberia - value: 1882321

 

PVP:

gamePlayed:

1° nickName: LEXXX - value: 58815

2° nickName: Alexorsk - value: 54969

3° nickName: DeleteD - value: 53719

 

gameWin:

1° nickName: DeleteD - value: 36368

2° nickName: LEXXX - value: 31224

3° nickName: Alexorsk - value: 28741

 

gameLoss:

1° nickName: LEXXX - value: 27591

2° nickName: Alexorsk - value: 26228

3° nickName: SerB - value: 21216

 

winRate:

1° nickName: saana777 - value: 108

2° nickName: erniks - value: 101

3° nickName: ViktorRr - value: 66.25

 

totalAssists:

1° nickName: DeleteD - value: 502606

2° nickName: LEXXX - value: 488253

3° nickName: RoguE - value: 430433

 

totalBattleTime:

1° nickName: LEXXX - value: 26484137290

2° nickName: Alexorsk - value: 25032774511

3° nickName: DeleteD - value: 23797553649

 

totalKill:

1° nickName: DeleteD - value: 283459

2° nickName: KAMA3 - value: 232293

3° nickName: NERW - value: 205549

 

totalDeath:

1° nickName: Alexorsk - value: 166544

2° nickName: LEXXX - value: 151420

3° nickName: DV969 - value: 138703

 

killRate:

1° nickName: AngryAnnihilator - value: 260

2° nickName: dsaaaa - value: 224

3° nickName: morion2 - value: 184

 

totalDmgDone:

1° nickName: DeleteD - value: 13955600522

2° nickName: KAMA3 - value: 10836120606

3° nickName: NERW - value: 9425339655

 

totalHealingDone:

1° nickName: DeleteD - value: 3219367279

2° nickName: Guf - value: 2553218060

3° nickName: Mzhelskii - value: 2521308823

 

totalVpDmgDone:

1° nickName: VikRus - value: 711953

2° nickName: Sonic89 - value: 682249

3° nickName: fix77 - value: 575328

 

vpRate:

1° nickName: ezekiiel - value: 300

2° nickName: BraXbS - value: 215

3° nickName: artemoke - value: 211.5

 

PVE:

gamePlayed:

1° nickName: MeGaVolt - value: 37371

2° nickName: PowerForce - value: 30108

3° nickName: Alkash - value: 29827

 

unlimPve_playerAttackLevel:

1° nickName: PowerForce - value: 130

2° nickName: Shazhenla - value: 130

3° nickName: XEIII - value: 130

 

unlimPve_playerDefenceLevel:

1° nickName: PowerForce - value: 150

2° nickName: Shazhenla - value: 150

3° nickName: XEIII - value: 150

 

COOP:

gameWin:

1° nickName: Aviation - value: 10567

2° nickName: steelkosack - value: 9587

3° nickName: papajoe8282 - value: 8930

 

gameLoss:

1° nickName: Chrumov - value: 563

2° nickName: Aviation - value: 420

3° nickName: papajoe8282 - value: 402

 

winRate:

1° nickName: Kvas - value: 1066

2° nickName: Meizu - value: 730

3° nickName: SpaceMonk - value: 679

 

gamePlayed:

1° nickName: Aviation - value: 10987

2° nickName: steelkosack - value: 9974

3° nickName: papajoe8282 - value: 9332

 

totalBattleTime:

1° nickName: Aviation - value: 3521686060

2° nickName: steelkosack - value: 3422399303

3° nickName: papajoe8282 - value: 3154773785

 

Все круто, но пока не будет визуального оформления твоей идеи, никто не будет пользоваться данным сайтом. Читать текст и искать свой ник никто не хочет. 3,4 миллиона игроков Стар Конфликту не нужны, достаточно тех кто играл последние 2-3 года. Все остальные кто не зашел в игру в этот период времени, все аккаунты удалить. Не вижу смысла в этих данных, они свой выбор сделали в пользу других игр.

Вы правы, отсутствие интерфейса и графики является большим недостатком.

Я создам интерфейс во время рождественских каникул, так как у меня очень мало свободного времени. Прошу прощения за доставленные неудобства ![:(](<fileStore.core_Emoticons>/emoticons/003.png “:(”)

 

В течение этого периода я уделил приоритетное внимание разработке базы данных и соответствующим тестам стабильности и исправлению ошибок.

Прежде всего я попытался сделать инструмент доступным для других инструментов сообщества.

 

 

As for generation of a different ratings…it may be better to generate rating once/twice on a day after 00:00 am and after 12:00 pm when user’s request was triggered. Cause each time ask to wait user more than 2-3 seconds while page is loading is not so good.

For example:

  1. I’am requesting URL http://www.badboytool.com/tool/sc/api.php?rank=absolute&limit=1000  at 01:00 am (by your server time).

  2. Server check if there is any cached result,created after 00:00am today stored in the cache directory : if yes - shows me that cached info, if no - generates a new one (and here it’s good to use AJAX).
    and repeat the same logics to the range from the mid-day time till midnight.

Thank you for your suggestion. Probably the best solution is the one you say. The ranking must be calculated and stored in the database in order to have a quick answer and maybe some more in-depth questions about the API.

 

Спасибо за ваше предложение. Вероятно, лучшее решение - это то, что вы говорите. Оценка должна быть рассчитана и сохранена в базе данных, чтобы получить быстрый ответ и, возможно, некоторые более глубокие вопросы в API.

18/12/2019 Обновление времени выполнения и API:

  • Все функции рейтинга были переработаны
  • Данные рейтинга рассчитываются и сохраняются в базе данных для увеличения скорости отклика.
  • Добавлено много параметров для оценки
  • Рейтинг игрока можно узнать из запроса «Получить историю игрока».
  • Исторический предел изменился с 60 до 90.

 

Новые переменные в рейтинге:

  •     poskarma
  •     negkarma
  •     pvp_killRate
  •     pvp_assistsRate
  •     pvp_deathRate
  •     pvp_survivalRate
  •     pvp_winRate
  •     pvp_averageKill
  •     pvp_averageAssists
  •     pvp_averageDeath
  •     pvp_averageDmgDone
  •     pvp_averageHealingDone
  •     pvp_averageVp
  •     pvp_deathProbability
  •     pvp_assistsProbability
  •     pvp_killProbability
  •     pvp_winProbability
  •     pvp_lossProbability
  •     pvp_timeInWinnerTeam
  •     pvp_timeInLoserTeam
  •     pvp_averageTimeForKill
  •     pvp_averageTimeForDeath
  •     pvp_averageTimeForAssists

 

Все переменные, в которых присутствуют «Rate», «Average» и «Probability», рассчитываются только для игроков с более чем 1000 PvP-сражений.

для переменных, которые указывают вероятности “1 = 100%”

survivalRate = (totalAssists + totalKill) / totalDeath;

 

если игрок не входит в первую тысячу в турнирной таблице, параметры устанавливаются на «NULL»

 

пример: http://www.badboytool.com/tool/sc/api.php?nickname=Gladiator&get=absolute&limit=1

Скрытый текст

{"code": 0,"text": "Ok","data": {"uid": 94977,"nickName": "Gladiator","lastCheck": "2019-12-18","valid": 1,"history": {"absolute": {"2019-12-17": {"effRating": 7142,"prestigeBonus": 233,"accountRank": 23,"karma": 18067,"pvp": {"gamePlayed": 28728,"gameWin": 22298,"totalAssists": 230156,"totalBattleTime": 11307834389,"totalDeath": 26846,"totalDmgDone": 8890158147,"totalHealingDone": 1295885707,"totalKill": 125883,"totalVpDmgDone": 449186},"pve": {"gamePlayed": 3796,"unlimPve\_playerAttackLevel": 36,"unlimPve\_playerDefenceLevel": 12},"coop": {"gameWin": 142,"gamePlayed": 144,"totalBattleTime": 42777003},"clan": {"cid": 1867,"name": "TerraLuX","tag": "LuX"}}}},"pvelv": {"wavePve\_maxWave": 0,"capture\_repairbase\_t1": 25,"nalnifan\_lumen\_waves\_T1": 23,"pve\_jericho\_base\_t2": 21,"pve\_empfrontier\_waves\_T1": 9,"asteroid\_building\_t1": 13,"loot\_geostation\_normal": 12,"planet\_war\_waves\_T1": 22,"bigship\_building\_2\_easy": 1,"pve\_desttown\_waves\_easy": 11,"pve\_frozen\_station\_t2": 8,"bigship\_building\_easy": 13},"rank": {"absolute": {"effRating": {"position": null,"value": null},"prestigeBonus": {"position": 151,"value": "233"},"accountRank": {"position": 149,"value": "23"},"poskarma": {"position": null,"value": null},"negkarma": {"position": null,"value": null},"pvp": {"gamePlayed": {"position": 49,"value": "28728"},"gameWin": {"position": 11,"value": "22298"},"gameLoss": {"position": 482,"value": "6430"},"totalAssists": {"position": 39,"value": "230156"},"totalBattleTime": {"position": 76,"value": "11307800000"},"totalKill": {"position": 29,"value": "125883"},"totalDeath": {"position": 591,"value": "26846"},"totalDmgDone": {"position": 5,"value": "8890160000"},"totalHealingDone": {"position": 34,"value": "1295890000"},"totalVpDmgDone": {"position": 15,"value": "449186"},"killRate": {"position": 126,"value": "4.69"},"assistsRate": {"position": 110,"value": "8.57"},"deathRate": {"position": 93,"value": "0.08"},"survivalRate": {"position": 94,"value": "13.26"},"winRate": {"position": 13,"value": "3.47"},"averageKill": {"position": 596,"value": "4.38"},"averageAssists": {"position": null,"value": null},"averageDeath": {"position": null,"value": null},"averageDmgDone": {"position": 133,"value": "309460"},"averageHealingDone": {"position": 964,"value": "45108.8"},"averageVp": {"position": 217,"value": "15.64"},"deathProbability": {"position": null,"value": null},"assistsProbability": {"position": null,"value": null},"killProbability": {"position": 575,"value": "32.88"},"winProbability": {"position": 13,"value": "77.62"},"lossProbability": {"position": null,"value": null},"timeInWinnerTeam": {"position": 22,"value": "8776880000"},"timeInLoserTeam": {"position": 657,"value": "2530960000"}},"pve": {"gamePlayed": {"position": null,"value": null},"unlimPve\_playerAttackLevel": {"position": 469,"value": "36"},"unlimPve\_playerDefenceLevel": {"position": null,"value": null}},"coop": {"gameWin": {"position": null,"value": null},"gameLoss": {"position": null,"value": null},"winRate": {"position": null,"value": null},"gamePlayed": {"position": null,"value": null},"totalBattleTime": {"position": null,"value": null}}}}}}

 

 

 

пример:  http://www.badboytool.com/tool/sc/api.php?rank=daily&limit=3 

Скрытый текст

{"code": 0,"text": "Ok","data": {"daily": {"effRating": [{"position": 1,"nickName": "prototipe","value": "1293"},{"position": 2,"nickName": "DiM","value": "1095"},{"position": 3,"nickName": "nanzy","value": "950"}],"prestigeBonus": [{"position": 1,"nickName": "PaxoM","value": "9"},{"position": 2,"nickName": "DrahmaPutra","value": "5"},{"position": 3,"nickName": "Maslik","value": "5"}],"accountRank": [{"position": 1,"nickName": "NANKAT","value": "13"},{"position": 2,"nickName": "OldSpaceman","value": "10"},{"position": 3,"nickName": "sincara199999","value": "7"}],"poskarma": [{"position": 1,"nickName": "unknown716500","value": "11816"},{"position": 2,"nickName": "Lonelines","value": "10794"},{"position": 3,"nickName": "FrknBLT","value": "9732"}],"negkarma": [{"position": 1,"nickName": "KptDante","value": "-47993"},{"position": 2,"nickName": "PapyMcBites","value": "-9798"},{"position": 3,"nickName": "Volchitsa","value": "-2689"}],"pvp": {"gamePlayed": [{"position": 1,"nickName": "ManBeerPig","value": "58"},{"position": 2,"nickName": "XPAHITEJLb","value": "52"},{"position": 3,"nickName": "habo","value": "50"}],"gameWin": [{"position": 1,"nickName": "XPAHITEJLb","value": "30"},{"position": 2,"nickName": "ManBeerPig","value": "27"},{"position": 3,"nickName": "nanzy","value": "24"}],"gameLoss": [{"position": 1,"nickName": "ManBeerPig","value": "31"},{"position": 2,"nickName": "habo","value": "28"},{"position": 3,"nickName": "Viman","value": "26"}],"totalAssists": [{"position": 1,"nickName": "ManBeerPig","value": "601"},{"position": 2,"nickName": "habo","value": "375"},{"position": 3,"nickName": "nanzy","value": "370"}],"totalBattleTime": [{"position": 1,"nickName": "ManBeerPig","value": "32065600"},{"position": 2,"nickName": "MrJeyJus","value": "24442200"},{"position": 3,"nickName": "nanzy","value": "22724500"}],"totalKill": [{"position": 1,"nickName": "MrJeyJus","value": "256"},{"position": 2,"nickName": "Bardo","value": "245"},{"position": 3,"nickName": "Eugeneius","value": "219"}],"totalDeath": [{"position": 1,"nickName": "MrJeyJus","value": "151"},{"position": 2,"nickName": "RUS68","value": "150"},{"position": 3,"nickName": "ManBeerPig","value": "125"}],"totalDmgDone": [{"position": 1,"nickName": "MrJeyJus","value": "9644910"},{"position": 2,"nickName": "KACTET40","value": "6014620"},{"position": 3,"nickName": "Bardo","value": "5540100"}],"totalHealingDone": [{"position": 1,"nickName": "RoverTrick","value": "8830600"},{"position": 2,"nickName": "MrJeyJus","value": "5515430"},{"position": 3,"nickName": "habo","value": "4605990"}],"totalVpDmgDone": [{"position": 1,"nickName": "MaxVerzila","value": "1667"},{"position": 2,"nickName": "IggyPop","value": "903"},{"position": 3,"nickName": "OCEANO","value": "712"}],"killRate": [{"position": 1,"nickName": "Auditor","value": "0.0204"},{"position": 2,"nickName": "Alumetri","value": "0.0149"},{"position": 3,"nickName": "ARXANGEL003","value": "0.0143"}],"assistsRate": [{"position": 1,"nickName": "battlestarsc2","value": "0.0277"},{"position": 2,"nickName": "SenyA","value": "0.0263"},{"position": 3,"nickName": "Alumetri","value": "0.0259"}],"deathRate": [{"position": 1,"nickName": "seapk233831689","value": "0.0011"},{"position": 2,"nickName": "Me4","value": "0.0008"},{"position": 3,"nickName": "Galcka","value": "0.0007"}],"survivalRate": [{"position": 1,"nickName": "Auditor","value": "0.0415"},{"position": 2,"nickName": "Alumetri","value": "0.0408"},{"position": 3,"nickName": "battlestarsc2","value": "0.0389"}],"winRate": [{"position": 1,"nickName": "Alumetri","value": "0.0144"},{"position": 2,"nickName": "MaksVest","value": "0.0142"},{"position": 3,"nickName": "SenyA","value": "0.0081"}],"averageKill": [{"position": 1,"nickName": "MrJeyJus","value": "0.0267"},{"position": 2,"nickName": "Alumetri","value": "0.0185"},{"position": 3,"nickName": "ARXANGEL003","value": "0.0147"}],"averageAssists": [{"position": 1,"nickName": "sorionysin","value": "0.0279"},{"position": 2,"nickName": "RagnarokX","value": "0.0264"},{"position": 3,"nickName": "Yechtinastya","value": "0.0217"}],"averageDeath": [{"position": 1,"nickName": "MrJeyJus","value": "0.0092"},{"position": 2,"nickName": "seapk233831689","value": "0.0082"},{"position": 3,"nickName": "Razrushitel08","value": "0.0075"}],"averageDmgDone": [{"position": 1,"nickName": "battlestarsc2","value": "1350.95"},{"position": 2,"nickName": "MrJeyJus","value": "1073.4"},{"position": 3,"nickName": "Alumetri","value": "974.245"}],"averageHealingDone": [{"position": 1,"nickName": "habo","value": "751.432"},{"position": 2,"nickName": "704Tanikaze","value": "553.478"},{"position": 3,"nickName": "Auditor","value": "457.574"}],"averageVp": [{"position": 1,"nickName": "FatherAnatoliy","value": "0.1775"},{"position": 2,"nickName": "Izengrimus","value": "0.1659"},{"position": 3,"nickName": "TurretSyndrome","value": "0.1131"}],"deathProbability": [{"position": 1,"nickName": "seapk233831689","value": "0.0734"},{"position": 2,"nickName": "Me4","value": "0.0532"},{"position": 3,"nickName": "Razrushitel08","value": "0.0412"}],"assistsProbability": [{"position": 1,"nickName": "RagnarokX","value": "0.1734"},{"position": 2,"nickName": "sorionysin","value": "0.1247"},{"position": 3,"nickName": "ScaryGuy","value": "0.0948"}],"killProbability": [{"position": 1,"nickName": "MrJeyJus","value": "0.1417"},{"position": 2,"nickName": "ARXANGEL003","value": "0.114"},{"position": 3,"nickName": "habo","value": "0.1048"}],"winProbability": [{"position": 1,"nickName": "Alumetri","value": "0.202"},{"position": 2,"nickName": "Sogh","value": "0.166"},{"position": 3,"nickName": "StraiikeR","value": "0.1585"}],"lossProbability": [{"position": 1,"nickName": "cagarolas70","value": "0.229"},{"position": 2,"nickName": "KORHAL","value": "0.1426"},{"position": 3,"nickName": "notcriper","value": "0.13"}],"timeInWinnerTeam": [{"position": 1,"nickName": "ManBeerPig","value": "15072200"},{"position": 2,"nickName": "MrJeyJus","value": "13209400"},{"position": 3,"nickName": "nanzy","value": "12658100"}],"timeInLoserTeam": [{"position": 1,"nickName": "ManBeerPig","value": "16993400"},{"position": 2,"nickName": "Viman","value": "13243200"},{"position": 3,"nickName": "habo","value": "12822500"}]},"pve": {"gamePlayed": [{"position": 1,"nickName": "JkaSkeR","value": "50"},{"position": 2,"nickName": "shtornado","value": "48"},{"position": 3,"nickName": "SergiyHyperborea","value": "48"}],"unlimPve\_playerAttackLevel": [{"position": 1,"nickName": "CupCacke","value": "7"},{"position": 2,"nickName": "bezobraznIk","value": "5"},{"position": 3,"nickName": "balnazzar","value": "5"}],"unlimPve\_playerDefenceLevel": [{"position": 1,"nickName": "GulliFoill","value": "5"},{"position": 2,"nickName": "nmhrtbrk","value": "4"},{"position": 3,"nickName": "LaszloViktor","value": "4"}]},"coop": {"gameWin": [{"position": 1,"nickName": "MUTANTESPACIAL","value": "129"},{"position": 2,"nickName": "SenyA","value": "29"},{"position": 3,"nickName": "Bortmoun","value": "27"}],"gameLoss": [{"position": 1,"nickName": "Chrumov","value": "6"},{"position": 2,"nickName": "topdenis","value": "5"},{"position": 3,"nickName": "MUTANTESPACIAL","value": "2"}],"winRate": [{"position": 1,"nickName": "MUTANTESPACIAL","value": "2"},{"position": 2,"nickName": "SivasliGazi","value": "2"},{"position": 3,"nickName": "SenyA","value": "2"}],"gamePlayed": [{"position": 1,"nickName": "MUTANTESPACIAL","value": "131"},{"position": 2,"nickName": "SenyA","value": "29"},{"position": 3,"nickName": "Bortmoun","value": "28"}],"totalBattleTime": [{"position": 1,"nickName": "MUTANTESPACIAL","value": "48633300"},{"position": 2,"nickName": "Bortmoun","value": "9605610"},{"position": 3,"nickName": "TIREY","value": "8999320"}]}}}}

 

 

Исправлена логическая проблема, из-за которой история больше не записывалась, если игрок изменил имя, а затем вернулся к предыдущему.

Когда делается запрос на зарегистрированное имя, которое изменилось в прошлом, оно будет проверено снова на следующий день.

 

Спасибо [@Sshedi](< base_url >/index.php?/profile/1099022-shedous/) за предупреждение и извините за задержку с чтением отчета.

 

gameLoss = gamePlayed - gameWin;

 

averageKill = totalKill / gamePlayed;
averageAssists = totalAssists / gamePlayed;
averageDeath = totalDeath / gamePlayed;
averageDmgDone = totalDmgDone / gamePlayed;
averageHealingDone = totalHealingDone / gamePlayed;
averageVp = totalVpDmgDone / gamePlayed;

 

winRate = gameWin / (gamePlayed - gameWin);
killRate = totalKill / totalDeath;
assistsRate = totalAssists / totalDeath;
deathRate = totalDeath / (totalAssists + totalKill);
survivalRate = (totalAssists + totalKill) / totalDeath;

 

winProbability = gameWin / gamePlayed * 100;
lossProbability = (gamePlayed - gameWin) / gamePlayed * 100;
killProbability = totalKill / (totalKill + totalAssists + totalDeath) * 100;
assistsProbability = totalAssists / (totalKill + totalAssists + totalDeath) * 100;
deathProbability = totalDeath / (totalKill + totalAssists + totalDeath) * 100;

 

timeInWinnerTeam = totalBattleTime / gamePlayed * gameWin;
timeInLoserTeam = totalBattleTime / gamePlayed * (gamePlayed - gameWin);

 

averageTimeForKill = totalBattleTime / totalKill;
averageTimeForDeath = totalBattleTime / totalDeath;
averageTimeForAssists = totalBattleTime / totalAssists;

Нарушение было обнаружено с набором символов ввода API.

 

Поэтому строки типа «конcтaнтинoполь» считаются ошибками.

Для решения проблемы был введен входной параметр: «charset».

«charset» указывает набор символов, используемых в строке.

Пример: http://www.badboytool.com/tool/sc/api.php?nickname=ItalianBadBoy&get=absolute&limit=1&charset=UTF-8

 

Все строки управляются в соответствии со стандартом в UTF-8

Если параметр не указан, скрипт попытается определить кодировку символов и всегда попытается преобразовать его в UTF-8.


Для кириллицы рекомендуется вводить соответствующий набор символов, так как он часто не обнаруживается.