Проект
April 7, 2023

Telegram-Бот "World of Tanks: Console"

Доброго времени суток! В данном посте хотел рассказать о своем telegram Боте для консольных Танков (PS/Xbox), его функциональные возможности, некоторые нюансы при его разработке.

Тезисно: данный бот показывает игровую статистику пользователя «World of Tanks Console» за сутки/общую. На официальном сайте такую информацию узнать не получится.

Предыстория

Началось все в феврале 2021 года, когда я, играя на ps4 задумался, а какая у меня тенденция за день: ушел в минус или наоборот, поднял свой рейтинг. Недолго думая, решил попробовать сделать небольшую программу, и так как в тот момент я изучал Ботов, решил, что делать буду именно Бота телеграм.

Возможности

Данный Бот способен показывать статистику за сутки, в режиме онлайн, а так же показывает общую статистику: количество боёв, рейтинг, популярная техника и максимальные показатели. Бот следит и ежедневно обновляет следующие данные: количество боев (побед/поражений), кол-во убитых врагов, кол-во паданий и пробитий, кол-во обнаруженных врагов, суммарный и средний нанесенный урон и полученный опыт, используемая техника.

Так же есть возможность посмотреть рейтинг. Рейтинг формируется на основе процента побед и обновляется каждый день. Для простоты использования доступна функция инлайн-режима. В любом диалоге можно ввести @wotstat_bot НИК_ИГРОКА после чего будет доступна статистика по этому игроку.

Отображение краткой статистики в inline-режиме

Принципиально не делаю более подробную статистику, т.к. при таком форматировании сообщений производить её анализ становится затруднительно.

Технологии

Бот написан на Python с использованием фреймворка AIOGram, в качестве базы данных - SQLite. Пример обработки статистики - GIT. Все данные получаю с официального API wargaming.

В процессе эксплуатации выяснилось, что база API, в частности - Танкопедия, практически не обновляется, т.е. я получаю данные, что пользователь играет на танке с ID xxx, но что это за танк через API выяснить не удастся. Решается это проблема довольно просто - парсинг данных непосредственно с сайта. Таким образом у меня работает парсер Танкопедии, который обновляет локальный json-файл раз в сутки.

Ссылка на парсер: gist.github.com/telnex/357773c99ce7fa39d69703a4ed4d018a

Ссылки

Бот 🤖 доступен по ссылке @WotStat_bot или https://t.me/WotStat_bot

Если вы попали на эту страницу, значит вам интересна тема консольных танков, поэтому присоединяйтесь к нашему 📨telegram-чату ( ⚡ с недавних пор данная группа является неофициальной, отношения к wargaming уже не имеет) https://t.me/joinchat/DrUjwk1SJ1zqz6QMjehuOg

P.S. также теперь в Rustore доступно приложение TankStats для Андроид.

TankStats - это приложение для мониторинга и анализа статистики в игре World of Tanks: Console.