0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Премиальный гайд Dota 2: настоящее руководство для новичков

Премиальный гайд Dota 2: настоящее руководство для новичков

Посмотрели на свежее аниме с горячими драконами, принцессами и рыцарями, вдохновились зайти в Dota 2 и полюбить ее? Сейчас научим любить игру, как она этого заслуживает.

Десятки, сотни гайдов для новичков появляются каждый месяц и сразу же устаревают. Так как Valve решила пустить по Dota 2 аниме, мы подготовили руководство для новичков с сами понятными объяснениями основ игры. Ну, или для тех, кто использует новичков как трамплин с низов рейтинга до весьма посредственных вершин.

Дота 2 — знакомство с игрой

Стандартный матч в Доте 2 — это противостояние двух команд, Света и Тьмы. У каждой команды есть:

  • 5 игроков;
  • 1 трон;
  • 3 линии (верхняя, средняя и нижняя), ведущие к трону;
  • 12 башен (по 4 на каждой линии), которые бьют по противникам в радиусе действия;
  • крипы — юниты, которые появляются периодически, движутся по линиям, атакуют врагов и постройки.

Цель игры — уничтожить все башни как минимум на одной линии и сломать вражеский трон.

Что нужно знать новому игроку

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

  • При первом входе в Dota 2, игроку предлагают пройти обучение. Не стоит им пренебрегать — там можно познакомиться с интерфейсом игры, узнать базовые понятия и особенности управления. Разобраться с этим по ходу реального матча невозможно — противники заметят и убьют «потерянного» игрока, а союзники выплеснут волну негодования.
  • Если есть чувство неуверенности, можно сообщить об этом сокомандникам в чате — есть вероятность, что к ошибкам отнесутся с пониманием.
  • Слаженная работа в команде может привести к победе, даже если противники сильнее. Обращать нужно внимание на важные сообщения в чате и сигналы на карте. Оповещать союзников о том, что враг ушел с линии, взял руну или купил какой-то предмет (в инвентарь противника можно заглянуть, кликнув на него, пока он в пределах видимости).
  • Важно следить за мини-картой — ситуация на ней может непредсказуемо меняться и требовать быстрой реакции.
  • Нужно трезво оценивать свои возможности и учиться на ошибках. Не стоит бросаться в толпу противников в одиночку, нужно избегать сражений под вражескими башнями, наблюдать за анимациями и уворачиваться от мощных атак.
  • Пока игрок не освоил Дота 2 полностью (а на это может уйти много месяцев), не стоит пренебрегать гайдами по Dota 2 — в них опытные игроки делятся эффективными сборками и стратегией.

Внимание! Некоторые персонажи выглядят не так, как обычно — это бывает, когда у игрока есть сеты вещей. Это чистого вида «косметика», которая не дает никаких преимуществ в бою.

Как сменить язык

Сменить язык в Доте 2 несложно — для этого нужно зайти в Steam и выполнить следующие действия:

  1. Открыть библиотеку игр и найти Dota 2.
  2. Кликнуть по ней правой кнопкой мыши и нажать «Свойства».
  3. В появившемся окне найти вкладку «Язык», открыть ее и выбрать нужный.
Статья в тему:  Почему школьников ненавидят в онлайн-играх

Есть и другие гайды на смену языка, но этот способ самый простой и удобный.

Хардлейнер (оффлейнер) — это игрок, который стоит на сложной линии. Понятие «сложной» сейчас немного неактуально. Раньше крипы на одной из боковых линий встречались гораздо ближе к вражеской вышке. Получать опыт и золото в такой ситуации было крайне сложно, особенно учитывая что стоять нередко приходилось сразу против троих вражеских персонажей.

В таких условиях играть мог герой только с наличием «эскейпа» (невидимости, уклонения, быстрого перемещения) или крайне живучий «толстый» персонаж. В современной Доте баланс линий лучше, и играть на «сложной» проще. К тому же на помощь хардлейнеру иногда отправляют героя поддержки.

Отмена телепорта на специальную кнопку

Эх, а когда-то из-за отсутствия этой кнопки проигрывались игры… Одно неловкое нажатие кнопки, одно забывание «нажать через Shift» и всё — ты без телепорта непонятно где, пока твою команду убивают, или пока убивают тебя. Чтобы не расстраивать старичков, чьи страдания и лузы принесли в Доту эту опцию, а также облегчить себе жизнь, вам нужно зайти в настройки и включить опцию «Остановка телепортации отдельной клавишей».

Теперь вы сможете сбить себе телепорт только нажатием кнопки S. Также удобно иметь галочку на «Остановка способностей отдельной клавишей», чтобы не сбивать себе Black Hole’ы или Death Ward’ы, но это уже на ваше усмотрение.

Автоматизация рутины в DotA 2 или читы?

Привет, в этой статье будут рассматриваться легальные способы получить преимущество перед противником с помощью таких простых средств, как NodeJS, Electron и React, при этом обходя бан стороной. На эксперименты меня вдохновила другая статья Визуализация времени возрождения Рошана и желание автоматизировать часть рутины. Стоит заметить что сейчас будут рассматриваться инструменты не модифицирующие каким либо нечестным способом игру — все API открыты, данные получены честным путём, никакого вмешательства в процесс игры не происходит. Под катом будет несколько картинок и немного кода.

Статья в тему:  Какие танки стоит качать в world of tanks

Пример использования в демо режиме игры

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

Если честно, то я ничего нового не придумал, уже всё до меня придумали и даже есть готовые приложения, которые примерно тоже самое умеют.

Дальнейшими знаниями можно пользоваться, как во имя добра — делать инструменты для студий аналитики, киберспорта, стримов Twitch, тренировок команд и т.д., так и во имя зла — написания читов, выбор за вами.

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

В итоге созданные инструменты умеют:

Отслеживать игровое время

Воспроизводить звуки до начала важных событий

Отображать текущие показатели золота (GPM)

Отображать статистику по герою из открытого источника OpenDota.com

Отслеживать время возрождения рошана

Собирать данные о любимых героях противника

Какие ещё можно сделать улучшения:

Отображать историю средних показателей противника

Добавить ретроспективный анализ игры по её окончанию

Добавить больше звуковых/визуальных уведомлений

Дать возможность отслеживать «ультимейты»

Добавить больше визуальных данных во время просмотра киберспортивных игр

Добавить подробнейшие руководства прямо во время игры

С чего всё начиналось

У Dota 2 неожиданно есть GSI (Game State Integration), который придумали для интеграции сторонних приложений / оверлеев (наложение картинки поверх игры) и синхронизации этих самых оверлеев с игрой в реальном времени. Это говорит о том, что можно получать состояние игры и дальше что — то с ним делать. Для интеграции с NodeJS есть готовое решение в виде библиотеки. Для работы GSI сервера, в первую очередь, нужно создать файл конфигурации в «Steamsteamappscommondota 2 betagamedotacfg», в этом файле прописываются настройки, например, такие:

Статья в тему:  Как услышать себя в доте

После перезапуска игры, подтягиваются новые настройки и запускается сервер GSI, который будет отправлять данные по HTTP на localhost:3001, на котором и поднимается NodeJS сервер:

Собственно, после запускается код слушателя, который как раз и позаимствован из сторонней библиотеки NodeJS

Сервер получения данных об игровом мире готов.

Данные, которые не дают преимущества

Во время рейтингового матча в Dota 2, GSI отдаёт обрезанные данные, из полезного доступно

Прошедшее количество секунд с начала игры

Игровое время в секундах

Пример данных (в игре запущена карта с демо режимом)

Если просматривать реплей или чужую игру, то доступно гораздо больше информации — вся она описана тут. Что-ж, самая важная информация нам уже доступна — GPM, игровое время, Id героя.

После получения информации мы должны с ней что — то поделать, например, отрисовать или предупредить о наступившем моменте в игре.

UI, Оповещения, Electron

Для UI решено было использовать Electron и внутри этого электрона запускать React. Идея заключается в том, чтобы рисовать Electron приложение поверх игры (оверлей). Исходник оверлея можно найти тут, немного задержимся на нём — есть пару особенностей.

Для начала нужно настроить окно, в котором будет всё отображаться:

Сначала у меня не получалось поверх доты что — то вывести, пока не наткнулся на настройку в файле machine_convars.vcfg (Dota 2) под названием «dota_mouse_window_lock», которую нужно выставить в «0», а в самой игре (либо в тех же файлах конфигурации) настроить режим отображения в окне без рамки.

UI написан с использованием React, поэтому решено его было загружать прямо с dev сервера разработки (да, я ленивый):

Если dev сервер не успел загрузиться, то мы попробуем ещё разок через 3 секунды, вот для этого и нужен setTimeout.

Статья в тему:  Магнус дота 2 что собирать

Всё, с overlay закончили, теперь UI часть.

Styled-Components, Typescript, Хуки, — стильно, модно, молодёжно

В UI был выбран мой любимый стек: TS, CRA (Styled только для одного/двух классов использовался — рисовать то особо нечего). После того, как GSI Dota2 отправил данные на express сервер, их нужно передать на фронт. Пишется простая GET ручка для отдачи данных. Затем на фронте пишется хук, который раз в секунду запрашивает эти данные и дальше они попадают сразу во все остальные хуки. То есть в приложении каждую секунду запускаются все хуки — это важный факт, ведь иногда понадобится хранить время запуска хука, чтобы случайно его не запустить несколько раз (если этого не делать, то у вас произойдёт в лучшем случае два оповещения подряд, в худшем случае взрыв из оповещений). Логика получения данных:

Теперь, когда есть все данные на фронте, можно написать хук для звуковых оповещений, что пора бы пойти (за 30 секунд до начала оповещает) забрать руны богатства, появляющиеся на каждой минуте кратной пяти (5, 10, 15, 20 минута):

Запись о последнем воспроизведении (setLastIntervalPlay) нужна чтобы не повторить оповещение случайно дважды.

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

Хук useRoshanSpawn для кнопки

С рошаном всё немного запутаннее, чем с рунами — он может возрождаться в интервале от 9 до 12 минут. То есть у него есть состояния:

Точно мёртв (прошло до 9 минут с момента смерти)

Он жив или мёртв (прошло от 9 до 12 минут с момента смерти)

Статья в тему:  Отвод в доте что это

Он точно жив (прошло свыше 12 минут с момента смерти или это начало игры)

Поэтому у таймера есть три визуальных состояния:

Кнопка — для запуска таймера

Таймер тикает и сообщает о том что роша точно мёртв

Таймер тикает и сообщает о том что роша возможно жив, а возможно мёртв

И одно звуковое оповещение: Рошан будет в состоянии Шредингера через 30 секунд (то есть, и жив, и мёртв одновременно — пока не проверишь, не узнаешь). Также есть возможность сбросить таймер, ведь если мы проверили и узнали, что он жив — то таймер больше не нужен, а нужна кнопка о том чтобы сообщить о новой смерти рошана. Из минусов — иногда забываешь запускать таймер, было бы здорово в будущем это тоже автоматизировать.

Обогащаем данные

Ещё есть информация о том, на каком герое мы играем, поэтому пускай клиент запрашивает бенчмарки с сайта OpenDota.com и отображаем их, чтобы было понятно, на сколько мы отстаём от ритма игры. Я взял перцентиль 99%, то есть мне интересно, с какими показателями отыгрывается 1% лучших игр на том или ином герое.

Бенчмарки на героя Abaddon

Вся логика описана в хуке useBenchmark:

Узнаём предпочтения игрока

Было бы здорово получать информацию о том, на каких героях вероятнее всего будет играть противник, чтобы забанить, отобрать, законтрить их у него. Для этого нужно считывать память файл игры: «server_log.txt» и дальше распарсить его регуляркой, найти там ID ваших оппонентов, затем запросить историю игр в OpenDota или Dotabuff. У этого способа есть минусы — если оппоненты сделал свой игровой профиль скрытым в Dota 2, то никакой информации о нём вы не получите. Есть ещё один момент, который я забыл учесть — данные могут быть устаревшими, но в коде это легко исправляется добавлением фильтра по времени.

Статья в тему:  Как играть за ликан дота 2

Attention: код по ссылке может совершить BSoD ваших глаз.

После, будет здорово это тоже вывести, поэтому решено было сделать отдельное React приложение на localhost:3002. Без дизайна выглядит оно совсем по страшному, но это уже был просто спортивный интерес и вообще я им не пользуюсь. В нём есть информация о прошлых десяти играх. Кнопочка «Ban this id», чтобы убирать друзей, с которыми играешь, из этой статистики и ссылка на Dotabuff профиль, если вдруг хочется подробностей.

Это приложение тоже можно было бы красиво оформить в виде Electron оверлея и запускать его на стадии выбора героев, но кажется я слишком много играю в игры и мало уделяю времени действительно полезным вещам 🙂

Что ещё пробовалось:

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

Попытка создать сервис подбора героев на основе ML обучения по выгрузке игр из OpenDota.com или с тех же серверов Valve (провал — хотя мне кажется я просто не сумел правильно приготовить ML часть)

Парсинг Dota 2 реплеев — там не сложно, используется Protobuff и все структуры легко находятся на гитхабе. Вот только что дальше с этим огромным объёмом данных делать?

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

Статья в тему:  Планшет который тянет world of tanks

Надеюсь вам было интересно почитать про то, как я собрал на коленке читы (на самом деле хороший вопрос — читы это или нет?), да ещё и на JS, если есть орфографические или лексические ошибки, то пишите пожалуйста в ЛС, спасибо за внимание.

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

Коротко это можно объяснить так:

  • Тир 1 — хорошие и стабильные команды с известными киберспортсменами , которые выигрывают турниры с высокими призовыми, или занимают на них же высокие места по кд. И имеют серьёзную финансовую поддержку. Например: OG, Team Liquid, TNC Predator, Team Secret, Vici Gaming, Evil Geniuses, Alliance, Virtus.pro, Natus Vincere, Nigma.
  • Тир 2 — в тир 2 также попадают стабильные составы с профессиональными игроками ; у некоторых из них сильная фанбаза. Участие этих команд в турнирах обычно не вызывает вопросов, вот только вспомнить, когда они в последний раз побеждали, не всегда легко. Например: Fnatic, J.Storm, Team Aster, Gambit Esports, Chaos .
  • Тир 3 — региональные коллективы, которые стремятся к участию в международных чемпионатах , обычно можно увидеть в закрытых региональных квалификациях. Иногда у них появляется шанс попасть на мейджоры или майноры. Сюда входят многообещающие стаки, которые периодически могут выносить и топ команды. Однако эта территория все еще остается землей решафлов и дизбандов. Например: jfshfh178, Reality Rift, paiN Gaming .
  • Тир 4 — энтузиасты без спонсоров , обычно только начинающие играть, практически неизвестны, мало зарабатывают на своих играх.

Комментарии

В тире стреляют, логично же

Ай шутник. Tier же!

У нас есть жизнь и за пределами игры… Шутка)

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

Статья в тему:  Онлайн игра как цивилизация

Что отличает команду первого и второго уровня? Помимо индивидуальных талантов и стадии драфтинга-ланинга (которая, я думаю, каждый топ-игрок знает, как это сделать), я думаю, что на уровне 1 знают, когда нужно вступать в бой или выходить из игры, они знают, как использовать силу своего драфта и играть вокруг него, они знают, когда группировать или просто сидеть сложа руки и фармить по своему проекту. Они редко бывают вне позиции в боях, особенно, если опоры могут быть убиты, если они немного не в своей позиции, и они редко перерабатывают, они играют чисто.
Если команда 1-го уровня проигрывает, то это потому, что осадка и полоса движения пошли плохо.

Я считаю, что я профи)

Я вижу твой инвентарь, Гарри, я всё вижу!

Правой кнопкой и переместить в тайник. И тогда будет больше вардов!

Ты можешь знать всё про тиры, но какой в этом толк, если тебе никогда не попасть в первый или хотя бы второй…

Однажды я был в первом. Крутая катка была. А потом я проснулся…

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Центр поддержки

Остались вопросы? Найдите ответы здесь

Специально для Вас мы собрали 5 самых популярных вопросов.

Также Вы можете задать свой вопрос напрямую нашей службе онлайн-поддержки.

Мы работаем с 7:00 до 23:00 по МСК. Кнопка онлайн-чата находится справа внизу.

Как работает boostmmr.ru?

Вы платите нам за улучшение Ваших результатов в рейтинговых играх (матчмейкинг). Вы предоставляете нам логин и пароль от Вашего стим аккаунта, после чего мы приступаем к повышению рейтинга (если Вы выбрали услугу «Дуо бустинг», то нам потребуется только Ваш ник в стиме).

Статья в тему:  Как заставить парня бросить играть в доту

Сколько по времени Вы будете выполнять мой заказ?

Мы не можем назвать Вам точное время выполнения заказа. Это зависит от нескольких факторов, которые мы не можем контролировать. Например, размер вашего заказа, текущий объем заказов и доступность наших бустеров. Иногда это может занять пару дней, а иногда не более 24 часов. Так же, как правило, мы делаем от +150 до +400 ММР в сутки, зависимо от сложности заказа и загруженности.

Что включает в себя личный кабинет?

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

У меня не совпадает звание с вашим калькулятором.

Действительно это возможно. Однако наша цена формируется именно от текущего и желаемого ММР, а не звания. Сейчас никто точно не знает зависимости ММР от ранга, так же, в конце сезона Valve обычно уменьшают порог ММР для следующего звания на 300-500 ММР. Так что ближе к концу сезона ваше звание может сильнее отличаться от того, что на сайте.

Я не нашел подходящие мне услуги/опции.

Наши бустеры могут почти всё! Не стесняйтесь, напишите нам в онлайн-чат, возможно, мы сможем сделать для Вас специальное предложение, подходящее под Ваши условия.

Информация

Dota 2 является зарегистрированной торговой маркой Valve Corporation. Мы никаким образом не связаны и не одобрены Valve Corporation.

Все платежные операции проходят через сервис Robokassa и защищены сертификатами GlobalSign, PCI.

ИНН: 631819059653
ОГРН: 317500700036412 от 28.09.2017

Дорогу молодым

73-летняя Любовь Боркова стала главой комиссии по молодежной политике в Екатеринбурге и она дала первое интервью.

Статья в тему:  Как покинуть клан в world of tanks blitz

Советы игрокам

Только осознанные ставки на Дота 2 будут приносить выигрыш. Добиться этого можно путем погружения в дисциплину, в частности благодаря сервису Dota TV. Открыв игру и кликнув по вкладке «Просмотр», пользователю станет доступен список геймеров, сражающихся прямо сейчас. В верхней части таблицы находятся топовые киберспортсмены. За их действиями можно наблюдать от первого лица, выбрав в настройках трансляции стиль камеры «глазами игрока». Этот сервис позволяет разобрать по полочкам прошедший матч, определить роль каждого из 10 геймеров и выявить закономерности.

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

Сотни матчей ежемесячно, более половины киберспортивного контента в виде стримов, признание турнира The International кульминацией всего сезона, широкая роспись в БК — это делает ставки на Дота 2 топовой дисциплиной с перспективой роста.

Ссылка на основную публикацию
Статьи c упоминанием слов:

Adblock
detector