Jump to content
Korean Random
SoprachevAK

[WOT STAT] Мод для анализа подкруток

Recommended Posts

На удивление этот момент настал, я как сел и как доделал. 
Считаю это достойно релиза 1.0. Шапку обновил

Что нового:

- полностью новый сайт. Теперь без сложного аналитического раздела, зато с красивой инфографикой

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

- новая аналитическая БД Clickhouse, должна не лагать
по моду

- сбор инфы о входе в бой. Время в очереди, таймер, карта, танк, хп команд
- сбор инфы о результате выстрела. УРОН
- сбор результатов боя. Почти всё что есть в подробном отчёте по каждому игроку

 

Edited by SoprachevAK
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
16.06.2022 в 21:36, tiorted сказал:

 

Жаль, ну подождем пока. Лучше делать как следует, конечно.

Правильно! Вот я и обновил, кажется ты ждал)

@KPOT2338, а ты кажется больше всех ждал распределение урона, готово.
image.thumb.png.b54658d3182f3c43511e70424f25f76c.png

Share this post


Link to post

Short link
Share on other sites
7 minutes ago, Kurzdor said:

Хехе, запросы в БД прям из под frontend, как будто попал в эпоху PHP.

А PHP-то тут при чём? Его никогда на фронтенде не было. И эпоха его не заканчивалась, живёт и развивается, большая часть сайтов работает на нём)

Современные фичи появляются - только в путь! И производительность отличная.

Плохо отзываются о о нём только те, кто о нём ничего не знает, кроме глупых мемов от таких же "знатоков")

Edited by yepev

Share this post


Link to post

Short link
Share on other sites

@yepev в пыхе прямо в коде пишут контроллер (чаще всего всякие запросы из БД и прочее) и вьюху, тоесть фронтенд.
А тут есть ВСЁ. Ничего не имею против, тем более что работает :) Но тут JS + с фронта прям запросы в БД.

Share this post


Link to post

Short link
Share on other sites
1 час назад, HEKPOMAHT сказал:

https://wiki.lesta.ru/ru/Tank:Снаряды

  • ОС - огненная смесь для огнемёта
  • БК - хз, может Артиллерийский специальный снаряд?

'ARMOR_PIERCING': ['ББ', 'Бронебойный'],
 'ARMOR_PIERCING_CR': ['БП', 'Подкалиберный'],
 'ARMOR_PIERCING_HE': ['БК', 'Бронебойный каморный'],
 'FLAME': ['ОC', 'Огнемётная смесь'],
 'HIGH_EXPLOSIVE': ['ОФ', 'Осколочно-фугасный'],
 'HOLLOW_CHARGE': ['КС', 'Кумулятивный']

Не поверите, брал из перевода игры https://github.com/IzeBerg/wot-src/blob/535676785ded8c9401016373b8819abd93d33352/sources/res/text/lc_messages/item_types.po#L188. Термин "каморный" в контексте танков слышу первый раз)

Судя по всему никто на них не играет, можно будет убрать потом

Share this post


Link to post

Short link
Share on other sites
2 минуты назад, SoprachevAK сказал:

'ARMOR_PIERCING_HE': ['БК', 'Бронебойный каморный'],

 

2 минуты назад, SoprachevAK сказал:

Судя по всему никто на них не играет, можно будет убрать потом

хэш фугас

или бронебойно-фугасный как в xvm маркирован :hmm:

      // Shell kind (macro {{type-shell}}).
      // Тип снаряда (макрос {{type-shell}}).
      "type-shell": {
        ...
        "armor_piercing_he": "{{l10n:armor_piercing_he}}", // armor piercing high explosive / бронебойно-фугасный.

 

Share this post


Link to post

Short link
Share on other sites
2 минуты назад, HEKPOMAHT сказал:

хэш фугас

 

Такое слышал
Переименую, спасибо 

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
4 минуты назад, SoprachevAK сказал:

Такое слышал
Переименую, спасибо 

 

6 минут назад, HEKPOMAHT сказал:

или бронебойно-фугасный как в xvm маркирован :hmm:


      // Shell kind (macro {{type-shell}}).
      // Тип снаряда (макрос {{type-shell}}).
      "type-shell": {
        ...
        "armor_piercing_he": "{{l10n:armor_piercing_he}}", // armor piercing high explosive / бронебойно-фугасный.

 

я у себя промаркировал как ХФ или HESH

Share this post


Link to post

Short link
Share on other sites

@yepev @Kurzdor Вы не шарите, моя квалификация достаточно высока, чтоб считать такое решение наиболее правильным 

Я использую хорошую базу данных с хорошей внутренней системой защиты, доступ у пользователей `public` есть только на чтение и только для определённых таблиц, при этом для каждого IP адреса запроса лимитируется общая сложность запросов. Например от уникального пользователя не больше 20 секунд нагрузки в минуту

Ну и раз уж БД всё равно открыта как задумка, какой смысл писать бекенд, который будет просто бесполезной прослойкой

Вот есть классная статья от главного разраба этой БД, где с фронта даже вставлять позволяют https://clickhouse.com/blog/building-a-paste-service-with-clickhouse

А такой вопрос ещ

Share this post


Link to post

Short link
Share on other sites

А такой вопрос есть ещё
Знает может кто API чтоб статистику пользователей по нику/wgid получать, интересно было бы ещё добавить статистику своей/чужой команды. Предлагали брать статистику по танку, говорят где то в игре есть
Но как я понял, к официальной API доступ леста не выдаёт, может есть сторонние сервисы

Share this post


Link to post

Short link
Share on other sites
1 час назад, SoprachevAK сказал:

'ARMOR_PIERCING': ['ББ', 'Бронебойный'],
 'ARMOR_PIERCING_CR': ['БП', 'Подкалиберный'],
 'ARMOR_PIERCING_HE': ['БК', 'Бронебойный каморный'],
 'FLAME': ['ОC', 'Огнемётная смесь'],
 'HIGH_EXPLOSIVE': ['ОФ', 'Осколочно-фугасный'],
 'HOLLOW_CHARGE': ['КС', 'Кумулятивный']

Не поверите, брал из перевода игры https://github.com/IzeBerg/wot-src/blob/535676785ded8c9401016373b8819abd93d33352/sources/res/text/lc_messages/item_types.po#L188. Термин "каморный" в контексте танков слышу первый раз)

Судя по всему никто на них не играет, можно будет убрать потом

 

Можешь убирать их, у них нет своей механики, они выделены только на уровне интерфейсной части клиента игры. ARMOR_PIERCING_HE это ARMOR_PIERCING, а FLAME это HIGH_EXPLOSIVE

Edited by StranikS_Scan
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
1 hour ago, SoprachevAK said:

@yepev @Kurzdor Вы не шарите, моя квалификация достаточно высока, чтоб считать такое решение наиболее правильным 

Ну спасибо, только при чём тут я вообще? Я ни буквы ни сказал про твоё решение :laugh:

Share this post


Link to post

Short link
Share on other sites
41 минуту назад, SoprachevAK сказал:

А такой вопрос есть ещё
Знает может кто API чтоб статистику пользователей по нику/wgid получать, интересно было бы ещё добавить статистику своей/чужой команды. Предлагали брать статистику по танку, говорят где то в игре есть
Но как я понял, к официальной API доступ леста не выдаёт, может есть сторонние сервисы

 

Не понял, ты про api лесты? Всё есть как и у ВГ и работает. Заходи в личный кабинет и внизу ссылка на кабинет разработчика

 

image.thumb.png.df8993d40b335a6f0391c4470a1e64df.png

 

И там создаешь аккаунт доступа для своего приложения/сервера и получаешь ключ XXXX для запросов к https://api.tanki.su/wgn/servers/info/?application_id=XXXX&game=wot

Если у тебя сервер, то указываешь его IP-адреса и доступ будет разрешен только с них. Так XVM данные получает.

 

У ВГ на сайте такой же механизм сделан, только у него свой api сервис https://api.worldoftanks.eu/wgn/servers/info/?application_id=XXXX&game=wot

 

==================================================

 

А я максимум вот такое смог сделать https://straniks.ru/pub/api/v2/wot_online.php?online=all. Штатная БД, какая была из коробки, и ПХП. На ПХП мне понравилось писать. А вот фронтэнд я до сих пор не осилил, всё хочу прикрутить график реального времени и всё руки не доходят разобраться как это делается.

Edited by StranikS_Scan

Share this post


Link to post

Short link
Share on other sites
14 минут назад, yepev сказал:

Ну спасибо, только при чём тут я вообще? Я ни буквы ни сказал про твоё решение :laugh:

да, реально, сплешем задело
Прости если задел

Share this post


Link to post

Short link
Share on other sites
13 минут назад, StranikS_Scan сказал:

 

Не понял, ты про api лесты? Всё есть как и у ВГ и работает. Заходи в личный кабинет и внизу ссылка на кабинет разработчика

 

image.thumb.png.df8993d40b335a6f0391c4470a1e64df.png

 

И там создаешь аккаунт доступа для своего приложения/сервера и получаешь ключ XXXX для запросов к https://api.tanki.su/wgn/servers/info/?application_id=XXXX&game=wot

Если у тебя сервер, то указываешь его IP-адреса и доступ будет разрешен только с них. Так XVM данные получает.

 

У ВГ на сайте такой же механизм сделан, только у него свой api сервис https://api.worldoftanks.eu/wgn/servers/info/?application_id=XXXX&game=wot

Да да, так и делал, но у них там вайтлист на доступ, а судя по форуму, заявки не рассматривают по полгода http://forum.tanki.su/index.php?/topic/2175922-получение-доступа-к-api-для-аккаунта/
image.thumb.png.10be26ab02cdcd347bd3460ea0142479.png

Share this post


Link to post

Short link
Share on other sites
3 часа назад, Kurzdor сказал:

@StranikS_Scan 
https://github.com/WOT-STAT/AnalyticsFrontend/blob/main/src/pages/sessionInfographics/Damage.vue#L95

Хехе, запросы в БД прям из под frontend, как будто попал в эпоху PHP.

 

Я так понимаю должно быть кэширование, чтоб прямые запросы, коих мульоны могут быть как юзверов, не задолбали базу данных?

Share this post


Link to post

Short link
Share on other sites
21 минуту назад, StranikS_Scan сказал:

 

Я так понимаю должно быть кэширование, чтоб прямые запросы, коих мульоны могут быть как юзверов, не задолбали базу данных?

Ну в теории да, но я пока не настраивал
Мульён запросов будет только если мульён пользователей, тк на пользователя есть рейт лимит, чтоб он слишком часто не спамил
А сами запросы из инфографики они вычислительно простые, если база станет большой, добавлю к ним семплирование (чтоб учитывалась не вся бд, а например равномерно распределенный миллион строк) 

Если будут сложности, надо будет настроить кеширование прямо на самой бд, там есть такая возможность

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   1 member

×
×
  • Create New...