ergmyth

На Пикабу
94 рейтинг 1 подписчик 1 подписка 3 поста 0 в горячем
Награды:
5 лет на Пикабу

Dota 2 Picker Almagest

Как происходит подготовка к драфтам у про-команд? Шахматистам готовится к партии стало намного легче с появлением соответствующего софта. Что насчет кибер-дисциплины, где есть аналогичная стадия дебюта? В моем приложении широкий функционал. Можно посмотреть замены герою в пике. Показывается насколько силен драфт по итогу и насколько были сильны баны. Далее чуть подробнее!


Прямая ссылка - https://play.google.com/store/apps/details?id=com.erg.almage....


1. Использование онлайн базы данных.

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


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


2. Наличие огромного количества сортировок.

В данном приложении сортировок по героям столько, сколько нет нигде. Вот полный список:


- По атрибутам


- По типу атаки (можно скомбинировать оба типа атаки для отображения соответствующих героев)


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


- Сортировка по частоте выбора в данной стадии. У каждого героя 2 стадии из 5 возможных когда его берут чаще всего. Данная сортировка позволяет улучшить совет героев на первых стадиях, чтобы не предлагались meepo или broodmother в этих стадиях.


- Сортировка, которая демонстрирует советы для вражеской команды. Автоматически включается во время стадии бана. Ручное включение доступно, когда хотя бы один герой выбран у любой из команд.


- По линиям (mid, off, safe, roaming and jungle. Можно скомбинировать, что придаст драфту гибкости)


- По основной роли (core and sup. Также можно скомбинировать для гибкости драфта)


- По вторичным ролям (carry, support, jungler, escape, initiator, nuker, durable, disabler and pusher. Каждая роль имеет три уровня силы. Предыдущие уровни содержат героев из следующих)


- По сложности (Такая же логика, как и со вторичными ролями)


- По фракции (dire and radiant)


В будущем будет добавлена сортировка для первых банов.


3. Отображение коэффициентов всех выбранных героев.


Герои предлагаются для команды, чья в данный момент очередь выбора.


Верхний коэффициент - контра, нижний взаимодействие. Коэффициент контры героя различается для разных героев по отношению друг к другу, т.к. сила героя зависит и от количества героев, против которых он плох/хорош. Поэтому у команд данный коэффициент по итогу отличается.


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


4. Исключение данного героя или отмена выбора.


Отмена выбора доступна лишь для последнего выбранного героя, чтобы не ломалась стадия выбора героев.


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


5. Функция планирования драфта.


Работает при выбранном режиме All Pick.

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


Одна из команд выбирает наиболее подходящих друг для друга героев. Советую начинать с героев основы и планировать драфт под них. После того, как были выбраны 5 героев демонстрируются лучшие герои против них, которые по сути являются лучшими советами банов, для выбранных ранее героев.


Таким образом, приложение позволяет не только выбирать героев, но и планировать целые драфты для Captain's Mode.


6. Функция подбора профессиональных драфтов.


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


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


В базе данных содержатся все профессиональные матчи текущего патча (7.23 на данный момент и все его буквенные вариации). Во время выбора героя подбирается драфт, который содержит данных героев в соответствующих противоположных командах. По сути это рекомендация сразу целого драфта под этих героев, а для наличия стратегии на игру придется посмотреть, как был сыгран этот матч.


7. Еще о приложении.


Также в приложении имеется функция поиска по героям.


Сброса всех выбранных сортировок, результата поиска и исключенных героев. Переключение между All Pick and Captain's Mode.


Изображения сортировок были подобраны для интуитивного понимания, также при нажатии на любой из них всплывает краткая подсказка.


8. Окончание стадии драфта.


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


Предметы расположены по частоте выбора с левого верхнего угла, отображены первые 30 предметов, чего по моему мнению достаточно. Также убраны различные расходные предметы (Clarity, Healing Salve, вместо Magic Stick отображается Magic Wand, отображается только Dagon и Necronomicon последних уровней и т.д.)


Предметы, выделенные яркостью изображения, определены как контр-предметы, против вражеских героев. Это НЕ рекомендация полноценной сборки. Если по вашему указанные предметы не сочетаются для нескольких героев, то указанный предмет стоит собрать только тому герою, для которого данный предмет указан выше в списке.


Ниже представлен процент победы команды в зависимости от минуты игры. Взята статистика игроков с ранга Immortal. Данный график демонстрирует силу выбранных героев в зависимости от минуты игры.


9. Подведение итогов.


Изначально идея была совсем иная, но я пришел к тому, что сейчас доступно вам. Приложение ориентировано на аудиторию, которая уже хоть что-то знает об этой игре и хочет совершенствоваться, как драфтер, ведь это весьма важная стадия игры. По анализу профессиональных матчей в текущем патче, могу сказать, что мое приложение оказалось правым в 54% матчей по итоговым коэффициентам команд. И чем выше коэффициент, тем выше предсказание победы. При огромном перевесе вероятность победы поднялась до 70%.


Если у вас нет Android устройства под рукой, то приведу аналогию с браузером. Чтобы получить доступ к какому-то сайту на вашем компьютере, вам необходим браузер. Для своего приложения я могу предложить BlueStacks - это приложение, которое является эмулятором Android устройства.


Пользователь должен вручную включать необходимые сортировки для балансирования драфта. Сам продумывать сборку на героя и стиль игры. Изменение этих параметров загонит пользователя в рамки, что недопустимо для такой сложной игры. Возможно в будущем будет советы о недостающих ролях и расстановки выбранных героев на линии, будь то 2-1-2 или 3-1-1.


Сейчас ведется работа по написанию логики для бота, с которым можно будет соревноваться в драфте и если всё получится, его будет нелегко одолеть!


Всем спасибо за использование данного приложения, с любыми вопросами и предложениями можете писать в личные сообщения.

Показать полностью

Фишки и загадки dota 2

Ранее в другом посте я рассказал про свое приложение: https://pikabu.ru/story/almagest_picker_novyiy_uroven_motiva...


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


Честно будет, если вы не будете это тестить в игре перед ответом:


1. Вы купили 10 центрей. Позже в лавке появился еще один центряк. Вы продали 10 центрей. Сколько теперь центрей в лавке? (такая же механика у обса, книги, смока)


2. troll warlord ультует и бежит за ancient apparation.  В trollwarlord ультует legion commander. Что будет делать trollwarlord?


3. Как поместить рапиру или бладстоун в рюкзак?


4. Как курьером сломать вард?


5. Через сколько секунд после смерти вражеского крипа включается backdoor у вышки?


6. Как спасти героев от смерти в призрачной форме от аганима wraith king?


7. Как заполнить свою урну не имея ее у себя в инвентаре?


8. Копия от Tempest Double arc warden умирает под аганимной аурой wraith king и входит в зеленую форму. Что будет с копией, если истечет ее время жизни?


9. Копия от Tempest Double arc warden умирает около т1 света на топе. arc warden снова использует ульту после отката через рефрешер. Союзный вивер с аганимом жмет Time Lapse на копию. Где она окажется и почему?


10. Вивер использует Time Lapse на Brewmaster, который собрался в целое после окончания ультимейта. Где окажется Brewmaster?


11. Что будет с жуком вивера на Brewmaster, если Brewmaster использует ульту?


12. Что будет с Nyx Assassin, если использовать на него Scythe of Vyse, когда он в подкопе? Пояснение: там есть баг, в чем он заключается?
13. Как вывести Nyx Assassin из норы?


14. Что должно произойти, чтобы оба героя в одной Duel legion commander получили бонусный урон? Лотус и аганим Wraith King не замешан.


15. Что должно произойти, чтобы при смерти обоих героев в Duel legion commander никто не получил бонусный урон?


16. Назовите 10 способностей, которые способны прервать дуэль. И еще 8, которые прерывают при более сложных обстоятельствах. В каждом замешана лишь одна способность.


17. Что должно произойти, чтобы LC дважды получила бонусный урон, за ОДНУ (!!!! Лотус отражает способность и получается две !!!!) дуэль.


18. Что произойдет, если Spirit Bear активирует Manta Style?


19. Какая способность героя не может быть перезаряжена при помощи Reset Cooldowns от Refresher?


20. Как одному герою призвать несколько пачек некрачей?


21. Какой предмет кроме Rod of Atos накладывает эффект Root?


22. Какая пассивка отключается после удара с Silver Edge, а не до удара как все остальные? Пояснение: речь идет об эффектах способностей срабатывающих при ударе (у enchantress к примеру эффект до удара).


23. На героя кинул Orchid первый герой. Нанесли какой-то урон. Затем второй герой кинул orchid, пока эффект первого не закончился. Когда и кто нанесет урон, который наносится при окончании действия сайленса?


24. Как развеять сайленс от активации Mask of Madness?


25. Какая способность снижает получаемый минером урон от своей третьей способности? (я знаю только один)


26. Как можно обнаружить противника в инвизе не имея при себе детекшена? Какую механику задействуете?


27. В каком случае аегис исчезает у героя не срабатывая? Нет регенерации, звука регенерации исчезновения аегиса или перерождения.


28. Какая единственная способность может раскрыть противников в смоке?


29. Какие способности имеют механику, чтобы выйти из шара таска? (назовите 5 штук)


30. Что будет, если WK возьмет талант на стан с ульты, но не вкачает стан?


31. Назовите две способности (может их больше), которые наносят физический урон, но блокируются блокировкой урона.


32. Кто получит чьё здоровье, если террор ультанет в ульту грима, в которой связаны 2 героя?


33. Назовите героя удар которого по герою не выводит его из под эффекта невидимости от предмета Smoke of Deceit. Загадка заключается не в дальности атаки!


34. Вы довели свое бкб до 5 секундного действия. В игре существует ситуация, когда можно иметь второе, третье ... бкб с 10 секундной длительностью. Как этого достичь?


35. Существует механика у как минимум 5 предметов, о которой не написано в самой игре. В чем она заключается?


36. Использовали пику на противника, сделали несколько ударов. Заряды на удары еще остались. Рефрешите и нажимаете пику на другого противника. Что произойдет?


37. Как использовав один предмет снять своему герою 19 брони?


38. При попадании молнии maelstrom накладывает скрытый дебафф. Для чего он?


39. Назовите 7 случаев, когда только лк умирает в одной своей дуэли и не отдает противнику урон.

Показать полностью
8

Almagest Picker. Новый уровень мотивации.

В декабре 18 года после очередной сессии я начал создание собственного мобильного программного обеспечения для Dota 2. В мобильной разработке я не знал ничего, а знания об объектно-ориентированном программировании оставались на уровне создания 32-х клеток для шашек с созданием алгоритма на нажатие по полю. Свой процесс обучения я решил совместить с чем-то интересным, что в принципе может быть реальным полезным приложением.


Задумка началась с того, что ранее летом был создан твиттер аккаунт twitter.com/Runuiu там я писал фишки для некоторых героев, в основном на тех на которых сам играл. Выбрал представление этой информации в текстовом варианте, т.к. для видео формата на это приходилось бы тратить часы из-за неудачных дублей, из-за того что пришлось бы придумывать сценарий и текст к нему, ко всему прочему нужно чтобы сама игра выглядела красиво, а у меня не то что сетов нет, банально игра еле тянет 40 фпс на стареньком ноуте. Сам же за годы игры поднял 6к играя на одном герое.


Используя данную задумку я начал придумывать функционал и отображение информации в приложении. Вначале взял за основу популярное приложение в маркете с >500 000 скачиваний, но затем отказался от этой идеи, т.к. проект у меня планировался гораздо более амбициозный.

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


Далее я прочитал сотни отзывов некоторых приложений со скачиваниями >100 000. Отзывы отобразили для меня следующие проблемы, которые я должен был решить...


Тут я вспомнил что разработку начал в октябре или в конце сентября, но т.к. за 2 недели я не продвинулся в работе с базой данных SQLite (SQL я знал, я не смог банально подключить базу к проекту).


Решить я должен был следующее:

1) Быстро обновлять данные после патчей;

2) Иметь актуальную информацию каждый день, т.к. мог обнаружиться какой-нибудь баг в игре, и пока он не пофикшен можно было бы сказать о нем в приложении;

3) Добавить больше информации, чем просто данные с самой игры.


Тут же обнаружил позитивные стороны своего продукта:

1) Если данные будут обновляться часто, то в первую очередь откроют мой продукт;

2) Если будет больше информации, то люди скачают мой продукт, ибо важна информативность, а не красивые анимации и картинки в большом разрешении;

3) У меня огромный опыт игры и поэтому куча идей, а я сомневаюсь, что люди с таким опытом игры пойдут делать нечто подобное, в сравнении с другими разрабами у меня огромный запас идей;

4) На мобильную платформу никто не делает этого, потому что игра десктопная, и это меньше конкуренции. На самом деле я взял в пример себя чаще и больше пользуюсь телефоном.


Итак я рассказал как из бедняка хочу выбиться в люди теперь перейдем к тому, что есть на данный момент за примерно 600 +- 100 часов разработки и обучения прогания под данную платформу.


Пикер. Эволюционировал он долго, а начиналось с этого:

А теперь представляет из себя следующее. Совет по коэффициентам преимуществ героя, учет синергии и контры. Совет под стадию драфта. Совет предметов и контрпредметов. Два режима драфта.

Совет профессиональных драфтов, сортируются драфты по количеству совпадаемых героев в пике.

Щепотка сортировок. Сложность, тип атаки, атрибуты, фракция, основа-поддержка, роли, линии. Мануал по всему на иконку книжки в правом верхнем углу.

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

С пикером пока все. В будущем еще появится совет лайнапов и пара других функций.

Далее герои, которые пока что недоступны, ибо функционал планируется больше. Пока есть какой-то калькулятор статов


(точнее чем в доте, ибо там неправильно отображаются атрибуты героев. Пример: Chaos Knight 25 уровень 100 силы, но бонус к урону от атрибута лишь +99 и так у десятков героев и не только с уроном, проблема в том, что просто в один момент добавляется лишний атрибут, если дается 1.4 за уровень, то при стартовом допустим 16 на втором уровне будет 17.4 а он может округлить до 18. Вначале я думал, что это округление, но нет. Просто неправильно отображает, но бонусы добавляются правильно.)


0 уровень у героев, контргерои, синергия с героями, уже также добавлены контр предметы и предметы героя. Планируются айтембилды, скиллбилды, инвентарь для дополнения калькулятора статов. На некоторых героев уже прописаны десятки фишек, на мою сигнатурку LC их около 35.

Способности. Самая полная информация, чем где-либо. На liquidpedia все на английском и информации мало. Самый большой ресурс дота вики. Но на русском там опять таки беда. И даже то что на английском там есть этого мало. Из заполненных героев и крипов у меня уже больше информации (Дизайн будет лучше).

Предметы будут в скором добавлены. Они полностью заполнены. Присутствуют все предметы из игры. Даже Tango (shared), но он замаскирован в виде пасхалочки.

Собственно окно предмета.

Проблема актуальности данных была решена на корню. Используется онлайн база данных. Для пикера данные обновляются ежедневно. Для героев и предметов могу обновить в любой момент. К тому же пикер работает и без подключения к сети на старых данных. При наличии сети он сразу скачает актуальные данные.


Пока что открытый бета тест - play.google.com/store/apps/details?id=com.erg.almages...

Будет интересно ваше мнение с точки зрения полезности планируется сделать для игрока любого уровня, т.к. в игре нет обучения. Также хочу сделать из этого самую большую энциклопедию, если это будет кому-то нужно.

Показать полностью 11
Отличная работа, все прочитано!