Илья Силаков – дипломированный программист-инженер из Москвы, который практически в одиночку создал и поддерживает сервис Spectral, платформу для сбора данных и несколько других проектов. Мы поговорили о том, почему это важно для него самого и экосистемы Dota 2 в целом. 


– Привет! Для начала расскажи, как начал интересоваться Дотой? Чем тебя привлекла игра?

– Активно играть в доту я начал из-за девушки, где-то в 2014 году. Какое-то время имел около 6800 MMR, был частым гостем в топах игроков на Spectre. Раньше много времени работал с игроками – разбирал записи игр, помогал повысить уровень игры. Сейчас всё время уделяю сбору данных в киберспортивных дисциплинах, разработке инструментов для этого и, скажем так, исследовательской деятельности. 

Мне всегда нравились соревновательные игры, к тому же меня впечатлили сложность игры, её сообщество и очень крутые вещи, им сделанные, вроде Dotabuff и Stratz. Это по времени совпало со сложным для меня жизненным периодом, и во многом сообщество этой игры помогло мне его преодолеть, так что благодаря этому я "застрял" в игре ещё на много лет.

О проектах и процессе работы

– Расскажи об основных проектах, которыми сейчас занят? Как они появились, развивались и чем стали сейчас?

– Из того, что сейчас доступно публично – «хаб отчётов» со статистикой по турнирам и рейтинговым матчам на 5800+ MMR, он же League Report Generator. Это было первое, что я начал делать по Доте: изначально это был небольшой инструмент, который я сделал «на коленке» для простого сбора данных по турнирам.

Ключевых причин, почему решил заняться этим, было три: мне очень нравились посты на /r/DotA2 со статистикой турниров и хотелось сделать что-то такое же, мне хотелось каким-то образом собирать данные по героям на разных позициях и очень хотелось сделать визуализацию связей героев между собой (эта идея родилась после одного из дотаскопов от Maelstorm). 

Но главной причиной, конечно, стало обсуждение меты и Faceless Void на сложной линии в русскоязычной студии аналитики во время The International 2016. Не помню уже, что именно меня так выбесило, но я так разозлился, что решил сделать инструмент для сбора данных по матчам, чтобы доказать, что сказанное в студии аналитики было чушью. Когда инструмент был готов, впрочем, смысл уже отпал.

Помимо этого ещё есть мой личный сайт Spectral.gg и блог в VK/Telegram, который я веду с 2015 года – пишу про статистику, обновления, аналитику и перевожу интересные мне материалы. Можно ещё вспомнить «продвинутые сборки на героев» – набор внутриигровых гайдов, составленных на основе мнения спамеров героев, профессиональных игроков и статистики. Но это скорее что-то для души.

Почему статистика так важна для продоты и когда ждать новых героев Разговор с автором проекта Spectral

Из того, что находится в разработке или просто скрыто от общих глаз – Simon, улучшенный «хаб статистики», над которым я начал работать в начале прошлого года, и Guame – платформа для сбора данных и работы с ними, ориентированная на аналитиков и профессиональные команды.

– Какие языки программирования и ПО используются при работе? 

 – Каждый из проектов сделан на чём-то своём, по ряду исторических и технических причин. LRG – на PHP7, Bash и MariaDB в качестве базы данных. Многое на стороне сервера работает на ReactPHP (это библиотека для PHP, добавляющая поддержку event loop) и немного на Python, более поздние наработки используют Node.js / TypeScript, PostgreSQL и Dlang.

– В каком объеме нужно изучить все это, чтобы делать что-то подобное?

– Вот в чём штука: было бы желание. Можно сделать «на коленке» и плохо, да так, чтобы потом было очень стыдно, но главное — сделать хоть что-то, если хочется, даже если не хватает знаний, и даже не важно на чём. Если знаний не хватит – решение можно найти. Ну а в будущем от полученного опыта можно отталкиваться и «развиваться на ходу».

– Сколько это все занимает времени и приносит ли доход?

– Мне нравится этим заниматься, так что я отдаю всё своё время этой деятельности. Можно сказать, что 14 часов в день, а остальное – на сон и еду. Я зарабатываю на периодическом сотрудничестве с командами и аналитиками, и немного за коммерческий проект. Можно сказать, работаю в большей степени за идею о светлом будущем соревновательной доты в СНГ. Всё остальное – в том числе новые отчёты по турнирам и вещи вроде Simon – исключительно на энтузиазме.

Почему статистика так важна для продоты и когда ждать новых героев Разговор с автором проекта Spectral

– Все инструменты, такие как League Report Generator, ты пишешь сам?  

– Да, сам. Ну, не считая, пожалуй, парсера реплеев – все сервисы со статистикой по доте, впрочем, используют одну и ту же разработку. Базу LRG сделал где-то за месяц, потом ещё активно обновлял в течение полугода. Не могу сказать точно, сколько заняло времени, потому что это процесс непрерывный – я постоянно что-то улучшаю в плане автоматизации на стороне сервера и добавляю новый инструментарий или функционал, даже если этого не видно. Если бы делал с нуля и полностью отдавал себя задаче, мог бы сделать подобное наверное за полгода. То же можно сказать и про остальные наработки, по сути.

О сотрудничестве с командами и аналитиками

– Пользуются ли LRG или другими проектами представители киберспорта киберспорте?   

– Исходя из того, о чем я точно знаю, команды используют редко, в основном за пределами СНГ. Если говорить про аналитиков – однозначно используют, но в основном западные, минимум с десять человек из англоязычных студий активно пользуются отчётами на сайте и контактируют со мной напрямую. В СНГ знаю только двоих.

– Как вышло так, что в западном коммьюнити твоя работа действительно вызывает больше внимания, чем в СНГ? 

– Это в каком-то смысле иронично: всё, что я начинал делать, с самого начала было ориентировано в первую очередь на СНГ, но намного больше внимания вызывает извне. Даже статистика посещаемости сайта это отлично отражает: в топе всегда США, Франция и Канада, а Россия зачастую в десять раз отстаёт от США или Канады.

С чем это связано – ни малейшего понятия. Можно было бы сказать, что причина в англоязычной выдаче в поиске, или в постах на reddit, или рекламе со стороны зарубежных талантов – но так было практически с самого начала. Так что моё единственное предположение – сообществу в СНГ подобный контент просто не так интересен. Может есть и что-то ещё. 

– Расскажи о самых известных организациях, командах или студиях, с которыми ты сотрудничал? Как это было?

– Мои материалы по героям понравились редактору паблика TheCyberSport, меня позвали туда – а там мои посты заметил менеджер команды HFZ. На буткемпе команды я познакомился с людьми, которые порекомендовали меня Winstrike. Теперь я предоставляю статистику для команд и занимаюсь разработкой отдельного инструментария для внутреннего использования.

Почему статистика так важна для продоты и когда ждать новых героев Разговор с автором проекта Spectral

Был опыт работы с Fnatic во время Kuala Lumpur Major – тогда со мной связался их аналитик и предложил сотрудничество. Все остались довольны, но сотрудничество пришлось прекратить по личным причинам. Ну и, наверное, Luckbox – это не совсем студия или команда, но дочерний проект Code Red. Для них я писал материалы со статистикой и аналитикой меты.

Но непосредственно с организациями и студиями я работаю редко. Обычно речь идёт о каком-то конкретном заинтересованном человеке. Наглядный пример — работа с DotACapitalist во время OMEGA League: сотрудничество было не с WePlay! или Epic Esports Events, не с Beyond the Summit, а непосредственно с Кэпом.

О важности статистики в киберспорте

– Давай о статистике. Я знаю примеры про-игроков и комментаторов, которые по-прежнему недооценивают важность этих данных. Расскажи, почему статистика очень важна как в обычных играх, так и в профессиональной доте.

– Самое главное – данные не врут. Зачастую люди, играющие в саму игру, склонны делать неверные выводы на основе своего опыта и своих наблюдений. Представим, что Shadow Fiend кажется сильным метовым героем, но уже патчей десять его винрейт не поднимается выше 40% при ощутимой популярности – это показатель. 

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

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

Почему статистика так важна для продоты и когда ждать новых героев Разговор с автором проекта Spectral

Использование данных как может спасти от подобных ошибок, так и обратить внимание на сильные нестандартные тренды, которые обделены вниманием. Такими были, например, саппорт Invoker, оффлейн Bloodseeker, саппорт Ember Spirit, мид/керри Visage и так далее. Все эти тренды были заметны в статистике задолго до их популярности на профессиональной сцене или даже в пабах.

Статистика также наглядно показывает сочетания героев и «обманки» – комбинации , понижающие шансы на победу. Можно увидеть, что работает против команды лучше, можно увидеть слабые стороны своей команды. Можно проверить кто же на самом деле влияет на мету сильнее всего. Можно узнать, куда команда ставит варды, где использует Smoke, как предпочитает играть в целом и за счёт чего можно её победить..

Даже самые «чистые» данные, представленные в виде огромной таблички, могут очень многое сказать при беглом осмотре. Чтобы увидеть эти тайные знания – достаточно просто захотеть.

– Насколько полную картину о мете турнира или конкретной игре можно получить на твоем сайте, на твой взгляд? Есть ли какие-то особенно важные данные по игре, которые упускают другие подобные проекты? 

 – О конкретной игре – никакой, я на это и не ориентируюсь. Но о турнире или патче – вполне. Были случаи, когда я, не посмотрев ни единой игры турнира, только по своему отчёту и деталям конкретных матчей на Dotabuff, мог полностью описать ход турнира и детали конкретных игр с практически идеальным попаданием в реальную картину.

Многие сервисы упускают детали, связанные с подробным описанием стадий драфта, «сводных» таблиц, статистикой по позициям, по лайнингу, по связкам. Я обычно собираюсь генерировать подобные данные, как минимум потому что мне самому интересно их изучать, и этого не хватает на других статистических проектах.

Почему статистика так важна для продоты и когда ждать новых героев Разговор с автором проекта Spectral

– Можно ли сказать, что за счёт большого массива данных, который можно обрабатывать и изучать, про-Дота вышла на более высокий уровень?

– Да, безусловно. Многие игроки и команды зачастую отказываются от продвинутой статистики, потому что Dotabuff уже предоставляет достаточно данных. Но, на мой взгляд, сцена не стоит на месте, мета продвигается, и Dotabuff уже может показать всю важную в новых реалиях информацию (либо прячет их из соображений приватности).

Как пользоваться статистикой в пабах

– Статистика для про и пабов – это что-то совершенно разное? 

– Да, но нет. Мета пабов в целом не похожа на соревновательную, потому что её формируют в большинстве своём «средние» игроки (2.5k MMR). Но если говорить про мету на высоком рейтинге, то картина меняется.

Мета на высоком рейтинге очень сильно пересекается с соревновательной. Добавляется тот факт, что на 5.8k+ люди уже хорошо понимают героев и механики игры, и можно получить реальное представление о силе героев в патче и о «настоящей» мете.

– Можешь дать пару советов о том, как правильно читать статистику? Как новичку среди тысяч чисел заметить то, что действительно поможет ему в игре?

– Достаточно знать, как работает винрейт и что такое медиана. У себя я ввёл ещё «ранг» – своего рода умную сортировку по винрейту, учитывающую и частоту пиков. Математика в данном случае очень важна. Стоит, думаю, уделить немного времени и посмотреть на основы теории вероятности и как она ложится на доту. Этого уже более чем достаточно, чтобы ориентироваться. Сложнее найти, откуда взять данные. 

Почему статистика так важна для продоты и когда ждать новых героев Разговор с автором проекта Spectral

О новых героях и файлах в Dota 2

– Насколько я понимаю, ты много времени проводишь за изучением файлов Dota 2. Начинающему дата-майнеру разобраться в этом будет трудно? Какие инструменты, программы для этого используются?

– ValveResourceViewer, SteamDB и Dota 2 Workshop Tools в помощь. Тут нет ничего сложного, достаточно просто захотеть закопаться поглубже. Собственно, Valve в первую очередь разработчики. Заметно, что они в приоритете постарались упростить жизнь себе, а заодно дать сообществу инструменты, с которыми можно работать

По моим ощущениям, среди всех соревновательных игр Dota 2 даёт больше всего возможностей для простой и удобной работы с данными. Близко находится League of Legends, но там больше характерных особенностей и дополнительной головной боли.

– Пару недель назад в твоём паблике появилась информация о 19 новых героях, файлы которых появились в Dota 2. Если оценивать тот объем данных, что загружен в игру сейчас – на сколько процентов они готовы?

– Вот в чём штука: самих файлов нет в игре, но есть упоминания о файлах, используемых для разработки. Например, очень много информации о проектах Valve нашли после релиза Half-Life: Alyx; иногда можно найти списки ресурсов, которые есть не только в самой игре, но и вообще на локальных серверах Valve, в том числе в других проектах, в закрытой ветке для разработчиков и так далее. И большое количество имён файлов – это свидетельство того, что работа над героями идет активно.

По этим именам файлов сложно сказать, насколько герои готовы, но можно делать выводы, откуда эти герои взялись и насколько сильно они менялись по ходу разработки. Думаю, если нам «слили» эту информацию, скорее всего как минимум 3-4 из этого списка уже готовы на 90%. Ну а многие из этих «героев» скорее всего и вовсе не являются героями как таковыми – это вероятнее всего были юниты для Лабиринта Аганима и других событий, находящихся в разработке. 

Почему статистика так важна для продоты и когда ждать новых героев Разговор с автором проекта Spectral

Я хотел написать тот текст как можно раньше, потому что ожидал, что кто-то захочет словить «сенсацию» и рассказать о куче «новых героев», а то и вовсе приплести какое-нибудь грядущее глобальное событие, высказав мнение, не имеющее за собой ничего конкретного. Мне хотелось предупредить эти «мифы» и указать, что нужно воспринимать их с долей критики и не стоит ждать слишком многого, когда на то нет оснований.

– На твой взгляд, может какой-то из этих персонажей появиться в игре в ближайшее время?

– Скорее всего Rat King, Puppet Master или Валькирия (вероятно, под именем Valor). Возможно несколько сразу. Есть вероятность, что их выход вообще задержат до Diretide 2020 или The International 2021. Но лично я бы не ждал никого из них вообще как минимум до начала весны.

– Как программист, можешь ли ты оценить работу Valve по оптимизации файловой системы игры? Как оценишь работу над игрой в целом?

– Сложно сказать. Если оценивать в вакууме – скорее что-то вроде 3 из 10, и большинство проблем возникли исключительно со временем. Но это моё мнение. В целом, думаю, всё отлично для проекта столь громадного и старого.