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

Лс что это дота

Dota 2. Словарь для дотера часть #3, Заключительная часть.

Приветствую вас. Здесь я расскажу о слэнгах в Dota 2.Это продолжение словаря дотера. На этот раз это 3 часть и скорее всего последняя. Перед чтением я посоветовал бы сначала прочесть предыдущие части этого словаря. Вот ссылки на них: Первая часть , Вторая часть. Без них вам может быть непонятны некоторые фразы, которые я буду использовать в этой статье. И так, начинаем!

Dota 2, словарь #3.

Рейдж — rage, гореть, игрок сильно злится.

Тильт — это когда у игрока падает мораль после неудачи и он из-за этого начинает играть хуже.

Фри-фарм — Free farm. У игрока комфортный лайн и он может легко фармить, а мешать ему никто не будет.

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

ЛС — Low skill. Обычно это говорят игроку, который плохо играет в игру.

Хай скилл — Hight skill. Полная противоположность ЛС’ у.

Контрпик — Пример: Враги пикнули лансера, а ваши союзники в ответ пикнули свена. Это и называется контрпиком. Когда кто-то пикает полную контру определённого героя.

Рак — игрок с клешнями вместо рук.

ООМ — как правило игроки говорят такое, когда не хватает маны на скилы.

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

GLHF — Good luck, have fun. Некоторые игроки говорят такое в начале и желают друг другу хорошей игры.

Суммонер — герой, который может вызывать войска.Призванных воинов также называют суммонами.

Ваншот — one shot. Убийство кого-то одним ударом (скилом)

EZ — Обычно игроки говорят такое, когда легко победили или когда хотят оскорбить противников и высмеять их.

DoT — Урон, который наносится со временем.

GJ — good job. Хорошая работа.

WP — well played. Хорошо сыграно.

Вайп — случай, когда определённая команда получает преимущество убивая противоположную тиму при этом ничего не теряя.

Свап лайнами — поменяться лайнами с тиммейтом.

B — back. Назад. Игроки говорят такое, когда не хотят, чтобы тиммейты шли куда-то. Проще говоря, они приказывают тиме отойти.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Что значит ЛС в интернете

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

Молодые пользователи всё чаще стали употреблять выражение «ЛС» касательно разнообразных тем и в любых беседах.

Давайте в этой статье разберемся, что это за странное сочетание букв.

Что такое ЛС простыми словами

ЛС – это многозначная фраза, которой пользуются граждане современного общества.

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

Значений слишком много, и с каждым годом круг смыслов расширяется.

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

В медицине

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

Значения данного понятия в медицине разделяются на следующие категории:

  • природные лекарства;
  • химические вещества;
  • антибиотики;
  • органопрепараты;
  • химико-фармацевтические препараты;
  • витамины;
  • вакцины с сыворотками;
  • эфирные масла и ферменты.

В действительности любые лекарства называют лекарственными средствами.

В играх

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

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

Вот важные характеристики:

  1. LAN работает, как частная система на более высокой скорости по сравнению с другими WAN.
  2. Существуют различные методы управления доступом, такие как Token Ring и Ethernet.
  3. Возможность совместного использования одного интернет-соединения между всеми пользователями в определенной географической области, например в офисе или коммерческом учреждении.

Другой вариант – в играх Dota 2, PvP, Aika 2, Dark Age сокращение обозначается, как low skill. Низкий уровень способностей героя во время боя.

В социальных сетях

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

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

Статья в тему:  Сумаил дота 2 сколько выиграл

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

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

Инстаграм

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

Ведение личного блога предполагает:

  1. Планирование фото и видео прямо в ленте Instagram с помощью Auto Post.
  2. Оптимизирование каждого сообщения для большего взаимодействия с помощью SmartSchedule и Hashtag Finder.
  3. Создание коммерческих публикаций с фотографиями и видеороликами, образовательные и мотивационные посты, короткометражки на 2-3 минуты за кадром и рекламные ролики.
  4. Можно автоматически скрывать хэштеги сообщения в первом комментарии, чтобы заголовок оставался чистым и свободным от беспорядка.
  5. Постоянное общение с друзьями и фанатами, потенциальными клиентами.
  6. Сделать свои сообщения более заметными с помощью тегов пользователей и местоположений.
  7. Анализ, что работает в каждой публикации и профиле, с помощью интеллектуальной аналитики.

Другое значение сокращения – это личное сообщение другу, знакомому, брату, сестре, дяде или незнакомому человеку.

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

Тик Токе

В Тик Токе — это личное сообщение, которые отправляются через Директ выбранному человеку с целью общения.

Здесь как и в Инстаграме, вся переписка осуществляется через Директ. С помощью современного сленга легко общаться без потери драгоценного времени. Многие слова собеседники пишут использую сокращённую версию слов.

Читайте также: Что значит ИЗИ, Коуч и ВП

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

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

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

Значений одного слова может быть более 100. Поэтому нужно различать сокращённые фразы и говорить с максимальной точностью.

Лс что это дота

Carry (кери)- очень мощные герои в поздних стадиях игры, если у них будет всегда достаточно золота.
Nuker (нюкер)- могут быстро убивать вражеских героев с помощью заклинаний с низким временем перезарядки.
Initiator (инициатор)- идеально подходят для инициирования боя с вражескими героями.
Escape (эскейп)- имеют способности, с помощью которых могут легко избежать смерти.
Durable (танк) – способны выдерживать огромное количество урона.
Disabler (дизейблер) – выводит врагов из строя хотя бы одним из своих заклинаний, не позволяя им что-либо сделать.
Lane Support (Помощники) – помогают защитить Carry команды на линии в ранней стадии игры, позволяя им набирать опыт.
Jungler (лесник) – эффективно получают опыт и деньги, убивая нейтральных крипов в лесу.
Support (сапорт) – могут уделять меньше внимания количеству получаемого золота и предметам. Полагаются на свои способности для получения преимущества над вражеской командой.
Pusher (пушер) – могут быстро уничтожать вражеские башни и казармы на всех стадиях игры.

5,990уникальных посетителей
61добавили в избранное
Статья в тему:  Что снимает еул дота 2

Ability (Абилка) – Способность.
Aggro, Agr (Агро, Агр) – Термин используется, когда вас начинают атаковать.
AoE, Area of Effect (Область действия) – Область, которую затрагивают те или иные заклинания. Также используется для обозначение радиуса действия, например “500 AoE” значит, что способность действует в радиусе 500 единиц вокруг цели.
Art (Арт) – Один из вариантов названия игровых предметов.
AP – Игровой режим All Pick
Auto Attack (Авто атака) – Атака обычными ударами.
AFK, Away From Keyboard – Отошел от компьютера
B, Back (Б, Бэк)
Отступление или назад.
Bait, Baiting (Бэйт, Байт, Байтинг) – Процесс выманивания героя в определенное место с помощью дружественного героя, над которым вражеский герой имеет преимущество. Зачастую байтинг производится для того чтобы приманенный вражеский герой был застигнут врасплох дружественной командой.
Backdoor (Бэкдор) – Атака вражеских строений при условии, что вражеские крипы на этой линии находятся дальше от их базы, чем ты.
Backstab (Бэкстэб) – Засада, или неожиданное нападение.
Backdoor Protection (Защита от бэкдора) – Защита строений от обхода (если строениям наносится урон – они автоматически восстанавливают свой показатель здоровья на определенную величину). Включается если вы атакуете вражеское строение, рядом с которым нет союзных крипов.
Bash (Баш) – Оглушение.
Bot, Bottom (Бот) – Нижняя линия на карте.
Buff (Баф) – Любой положительный эффект или усиливающее заклинание.
Burst, Burst Damage (Бурст) – Нанесение большого урона за короткий промежуток времени.
Bad Game, BG (БГ) – Плохая игра, неудачная игра.

Статья в тему:  Почему нельзя продать вещи дота 2

Cooldown, CD (Кулдаун, КД) (Перезарядка) – Перезарядка определенной вещи, например способности или выкупа.
Carry (Кэрри) – Роль героя, который может одолеть вражескую команду на поздних этапах игры.
Creep (Крип) – Обозначает определенного крипа.
Creep Stats, CS (Крип стат, КС) – Означает число добитых и заденаиных крипов игрока.
Cast (Каст) – Использование активной способности.
Caster (Кастер) – Герой, чья основная функция – его способности.
Clan War, CW (Клан вар, КВ) – Обозначает договорной матч между двумя командами.
Care – Обозначает осторожность.
Def (Defend) (Деф) – Обозначает защиту определенного объекта, например линию или строение.
Debuff (Дебафф) (Проклятие) – Способность или эффект, наносящий ущерб или негативно действующий на юнита.
Deny (Денай) (Добивание) – Добивание союзного крипа, башни или Героя, предотвращая получение вражеским Героем золота и опыта.
Disable (Дизэйбл) – Способность, которая не дает герою двигаться, использовать способности или атаковать.
DoT (Damage Over Time, Дот) (Урон с течением времени) – Мера урона, который наносится на протяжении короткого отрезка времени.
DPS (Damage Per Second, ДПС) (Урон в секунду) – Мера урона, который наносит юнит за одну секунду.

Сила
Шейкер, Шейк, ЕС – Earthshaker
Свен – Sven
Тини, Тиник, Тайни – Tiny
Кункка, Адмирал, Капитан – Kunkka
Бистмастер, Бист, Рексар -Beastmaster
Дракон, ДК – Dragon Knight
Клокверк, Клок, Ключик – Clockwerk
Омникнайт, Омник, Паладин, Пал – Omniknight
Ху(-а)скар, Ху(-а)ск – Huskar
Алхимик, Химик – Alchemist
Брюмастер, Пивовар, Панда(-рен) – Brewmaster
Трент, Дерево, Бревно – Treant Protector
Висп, Ио, Светлячок – Io
Кентавр, Кент – Centaur Warrunner
Тимбер, Пила, Ризрак, Резак – Timbersaw
Брист(-л), Ёж – Bristleback
Тускар, Туск, Морж – Tusk
Титан – Elder Titan
Легион(-ер) – Legion Commander
Каменная-панда, Панда(-рен) – Earth Spirit
Феникс, Феня, Икарус – Phoenix
Акс – Axe
Пудж, Мясник, Мясо, Бучер – Pudge
СК, Сенд Кинг, Скорп(-ион) – Sand King
Слардар, Селедка – Slardar
Тайд, Тайдхантер, Левиафан – Tidehunter
ВК, СК, Леорик, Скелет(-он) – Wraith King
Лайфстилер, Гуля, Найкс – Lifestealer
Найт Сталкер, НС, Баланар, Бала – Night Stalker
Дум, Люцифер – Doom
Бара, Баратрум, Спирит Брейкер – Spirit Breaker
Ликан, Ликантроп, Волк – Lycan
Хаос Кнайт, Нессадж, Нессай – Chaos Knight
Зомби, Андаинг – Undying
Магнус, Магнатавр – Magnus
Абаддон, Аба -Abaddon

Статья в тему:  Дота 2 лаунж как сделать сделку

Ловкость
Антимаг, Магина – Anti-Mage
Дровка, Тракса, Траха – Drow Ranger
Джагернаут, Джагер, Джага, Юрнеро – Juggernaut
Мирана, Потма – Mirana
Морф, Морфлинг – Morphling
Лансер, Фантом – Phantom Lancer
Венга – Vengeful Spirit
Рики, Рикимару -Riki
Снайпер, Шарпей – Sniper
Темплярка, Ланая – Templar Assassin
Луна – Luna
Гондар, БХ, Баунти – Bounty Hunter
Урса, Медведь – Ursa
Гирокоптер, Гиро, Вертолет – Gyrocopter
Друид, Медведь, Силлабир, Силла – Lone Druid
Нага, Сирена – Naga Siren
Тролль – Troll Warlord
Эмбер, Огненная-панда, Панда(-рен) – Ember Spirit
Блудсикер, Сикер, Блуд, Стригвир, БС – Bloodseeker
Невер, СФ, Невермор – Shadow Fiend
Разор – Razor
Веномансер, Веномант, Веник – Venomancer
Воид – Faceless Void
Морта, Мортред, Фантомка, Ассассин – Phantom Assassin
Вайпер – Viper
Клинкз, Боня – Clinkz
Бруда, Брудмаза, Паучиха, Мать – Broodmother
Банша, Профетка, Профет – Death Prophet
Вивер, Жук – Weaver
Спектра, Меркуриал – Spectre
Мипо, Геомансер, Гео – Meepo
Никс, Неруб, Анубарак – Nyx Assassin
Сларк, Мерлок – Slark
Медуза, Дуза, Горгона – Medusa
Террорблейд, Террор, Илидан, Соул Кипер – Terrorblade

Интеллект
Рилай, Кристалка, ЦМка – Crystal Maiden
Пак, Пук – Puck
Шторм, Электро-панда – Storm Spirit
Винда, Алерия, Виндранер, Виндрейнжер, ВРка – Windranger
Зевс – Zeus
Лина – Lina
Раста, Шаман – Shadow Shaman
Тинкер – Tinker
Фурион, Фура, Профет – Nature’s Prophet
Коза, Энча, Дриада – Enchantress
Джакиро, Дракон, ТХД – Jakiro
Чен, Негр – Chen
Сало, Сайленсер – Silencer
Огр – Ogre Magi
Рубик, Рубен – Rubick
Дизраптор – Disruptor
Котл, Котел, Эзалор, Кипер – Keeper of the Light
Скай, Скай-маг, Драгонас – Skywrath Mage
Оракул – Oracle
Минёр, Течис – Techies
Бейн, Атроп(-ос), Боня – Bane
Лич – Lich
Лион – Lion
Доктор, Вич, ВД – Witch Doctor
Энигма – Enigma
Некр, Некролит, Некропос – Necrophos
Варлок – Warlock
Акаша, Квопа -Queen of Pain
Баньша, Ведьма, Кробелус -Death Prophet
Пугна, Обливион -Pugna
Даззл – Dazzle
Лешрак, Леший -Leshrac
Сир, ДС -Dark Seer
Батрайдер -Batrider
Аппарат, АА – Ancient Apparition
Инвок(-ер), Каил, Карл – Invoker
ОД, Дестроер – Outworld Devourer
Демон, ШД – Shadow Demon
Визаж – Visage
Виверна, Аурот, ВВ – Winter Wyvern

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

Кто такой гуль и что такое zxc?

Гуль – это идеология, это субкультура в игре Dota 2. Игроков которые играют в режиме zxc называют гулями.

ZXC – режим дуэля в Dota 2 придуманный игроками и суть заключается в том, что Гули играют в миду(центральная линия) и пикают(выбирают) героя Shadow Fiend, они также могут выбрать брать ли им руны богатства(дают дополнительное золото в игре), игра идёт 10 минут и заканчивается при 2 условиях:

  1. 2 Убийства.
  2. Снесение первой башни.

ZXC – это не название команды или способоности, это комбинация Койлов ( Shadowraze ) Shadow Fiend’а , в первой Доте. То есть культура dead inside была еще при первой Доте. Они одинаковы, но работают по другому, а именно их растояние. Койл имеет три дальности:

  • Z – Ближнее расстояние
  • X – Среднее расстояние
  • C – Дальнее расстояние

Вот поэтому и прозвали ZXC

Также после того как убили вас могут нажать на паузу и написать “?” в чат и мутят. Мут — это вид бана, то есть блокировки, который применяют к участникам онлайн-игр. Происходит слово от английского mute , что значит «немой», «молчаливый» или еще бывает как «отключить».

Обычно в этом режиме играют очень сильные игроки 1 на 1. Также есть известный игрок которого называют “Дедом”

Если интересно прочитайте кодекс Гуля:

1. Ты не клоун. если ты ставишь себе на аву гуля, спамишь zxczxczcxczcxzxc, ставишь паузы после каждого кила без причин и просто позер – то это не значит, что ты гуль, и права называть себя им не имеешь
2. Тебе должно быть все равно. Ты аморал, без нравственных качеств. Тебя послали, и сказали что ты бездарь? Не позорься, не оправдывайся, не отвечай, хочешь доказать – докажи на деле, уничтожь в zxc , ты не терпила, ты не тратишь свое время. Ты обещал разбить вещи? Бей их, встань в амулет, отвечай за слова.
3. Не выпендрывaйcя. у тебя 3к птс(ММР) и ты врёшь, что ты смурф? закрой рот, это твой ММР, ты играешь на победу и не присваивай себе заслуг, которых не добился. Тебе никто ничего не обязан и ты тоже. Если ты ломаешь вещи из-за того, что тебе не пикнули саппорта – ты нытик, ты не гуль.
4. Каждый гуль должен хотя бы знать что такое zxc , а тем более уметь там постоять за себя. если для мужчин нормальна случайность обменяться кулаками с другим мужчиной, то так же норма для гуля ответить или заставить ответить за слова в zxc . не будь тряпкой, ты сильнее.
5. Сосредотачивайся на игре, zitraks mod. Твоя главная цель победить, ты должен уметь давать all mute(замутить всех) , справляться с тильтом и выигрывать непобедимое. враги должны бояться гулей, а не смеяться с нытика.
6. Если ты достоин называться гулем, то ты априоре ставишь себя выше остальных. Если ты уверен в себе, то забирай роль, фпшь героя, твоя игра – твои правила, но не руинь (специально поддаваться и припятствовать в игре) , пока не заруинили тебе. пикнули дабл мид? Иди на Shadow Fiend’е в лес и тащи соло, не забудь поставить паузу при смерти игрока и потапать (благодарить игрока) на него, насмехайся над ними, но не становись посмешищем, выигрывай все игры, если команда сама не захотела или не заслужила поражения, выбор твой
7. Аll chat (общий чат) для тебя не существует, зачем тебе писать врагам что то, кроме “?” после убийств и “)” после падения трона?
8. Убил мидера на фб(первая кровь)? “F9(пауза в игре) + ?” . У врага падает трон? “)” в all chat , но не больше, ты не clown.
9. Гули нормальные, ты не токсик и позер, ты нормальный, порофли с тимой если хочешь, хорошо общайся со своими ребятами если нужно, уважай тех, кто действительно этого достоин.
10. ЧСВ – положительное качество, ты сильнее и лучше всех, НО ты должен это оправдывать.
11. Будь верен своим идеалам. тебе не обязательно иметь гуля на аве, к чему это, поставь лил пипа или гослинга если хочешь, держись идеалов, но твой ник не должен быть отвратительным.
12. Никогда не пиши заглавными буквами. Пиши размеренно и по правилам, не будь быдлом, ведь это низко.
13. Запомни в последний раз, ты не клоун, не позер и не нытик. Ты – гуль, не позорься и не строй из себя не пойми что.
14. Соблюдай все правила, либо ты не гуль.

Статья в тему:  Что такое мидас в дота 2

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Статья в тему:  Что такое мидас в дота 2

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

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

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

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

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

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

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

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

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

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

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

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

Статья в тему:  Дота 2 лаунж как сделать сделку

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

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

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

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

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

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

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

Статья в тему:  Почему нельзя продать вещи дота 2

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

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

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

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

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

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

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

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

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

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

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

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

Статья в тему:  Как получить бесплатные скины дота 2

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Solo: «Если буду заканчивать карьеру в Dota 2, то вряд ли стану тренером»

Капитан Natus Vincere Алексей Solo Березин рассказал, рассматривал ли вариант продолжения карьеры в Dota 2 в качестве тренера. В интервью Тоне Tonya Предко для канала NAVI на YouTube он также порассуждал о мотивации Ильи ALOHADANCE Коробкина и поделился мнением о формате Dota Pro Circuit.

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

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

«Думал о разных вариантах развития карьеры. Не могу сказать, что держусь за карьеру в киберспорте именно потому, что нужна работа и какой-то доход. Нет, дело не в этом. Тренером быть, наверное, не моё, как и стримером. Аналитиком я могу поработать, если это The International — тем более это юбилейный TI. Но не могу сказать, что мне это близко и я могу заниматься этим на постоянной основе.

[Не тренер, потому что] я люблю “Доту”, люблю играть в “Доту” и люблю побеждать. Тренер, мне кажется, это большой шаг назад для меня в плане эмоций от “Доты”, наверное. Не знаю. Не готов сейчас об этом говорить. Скорее всего, если буду заканчивать карьеру [игрока], то совсем — вряд ли я буду тренером».

Solo отметил, что Коробкин почти сразу согласился на предложение присоединиться к NAVI.

«Илюха [ALOHADANCE] очень мотивирован. В интервью он говорил, что был готов заканчивать карьеру и уходить в покер, стриминг и так далее. Но я знаю, что, когда мы играли в VP, он очень хотел поиграть с нами — очень уважает нас как игроков. Поэтому он почти сразу согласился вернуться. Нам он тоже, в свою очередь, был нужен, как проверенный человек на этой позиции, которого Витя [GeneRaL] тоже уважает как игрока. Поэтому всё прошло гладенько, он очень мотивирован, старается. Посмотрим, что из этого получится».

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

По мнению капитана NAVI, формат первого сезона Dota Pro Circuit получился неудачным.

«Блин, да всё [не так с прошлым сезоном DPC]. Один матч в неделю — это очень неправильно, мне кажется. Потому что тяжело находиться в пиковой форме и держать концентрацию семь недель и семь матчей. Мне кажется, это не очень правильно. Плюс распределение очков DPC было абсолютно абсурдным. То есть ты получал, если я не ошибаюсь, за победу в своей региональной лиге 200 очков DPC, и за топ-4 на мейджоре, по-моему, ты тоже получал 200 очков DPC. Это абсолютно странно, потому что турнир, где соревнуются команды со всего мира, со всех регионов, должен гораздо больше отражать инвайт на The International, чем топ-1 в региональной лиге. Это глупо.

У меня много претензий [к DPC]. Я надеюсь, что формат изменится».

2 сентября NAVI представила обновленный состав по Dota 2, в который, помимо Solo и ALOHADANCE, вошли Алик V-Tune Воробей , Владимир No[o]ne Миненко , а также Виктор GeneRaL Нигрини . 15 сентября команда собралась на первый буткемп.

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