Ничего нет хуже в Counter-Strike, чем встретиться со спинботом, который применяет аимбот. Аимбот — один из самых мощных читов, он выполняет автоприцел для выстрела в голову. А спинбот постоянно вращается вокруг своей оси, обеспечивая поле зрения 360 градусов. Таким образом, спинбот с аимботом можно эффективно использовать против простого триггербота с аимботом (зачем на самом деле нужны эти хаки, см. пояснение от эксперта в комментариях).
Спинбот — самый очевидный чит, который вычислялся довольно быстро, а вот триггербот и другие хаки выявить со стороны гораздо сложнее. Поэтому до настоящего времени читеры чувствовали себя относительно вольготно. Недавно Valve начала массовые баны аккаунтов читеров, а в будущем нечестных игроков будут выявлять и блокировать гораздо быстрее. Эту новость сообщил один из разработчиков из компании Valve.
Пользователь Reddit под ником Valve_Anti-Cheat рассказал о текущем состоянии дел в борьбе с читерами в CS:GO.
Плохая новость в том, что любой программный жёстко закодированный алгоритм выявления читеров не работает. Точнее, он работает только в краткосрочной перспективе, но разработчики ботов быстро приспосабливаются, учатся обходить его. То есть получается своеобразная «гонка вооружений», в которой не может быть победителя.
Авторы ботов опытным путём нащупывают границы эвристик, по которым программно определяется разница между живым игроком и программой — и вносят изменения в бот, чтобы он формально подходил под характеристики живого игрока. Затем ситуация возвращается на круги своя.
Поэтому компания Valve считает наиболее оптимальным вариантов применить методы машинного обучения, то есть адаптивную модель для выявления ботов. В этом случае используется обученный классификатор, который непрерывно продолжает обучение и постоянно видоизменяется. Он эффективно выявляет различия между читерами и нормальными/высококвалифицированными игроками. В данной области в последние годы проведена большая исследовательская работа специалистами из США, Канады, Великобритании, Гонконга и других стран. Например, см. научные статьи "Detecting Cheaters for Multiplayer Games: Theory, Design and Implementation", "Behavioral-Based Cheating Detection in Online First Person Shooters using Machine Learning Techniques" и др. Возможно, античитерская система Valve основана на этих исследованиях.
Разработчик Valve_Anti-Cheat говорит, что работа такой системы ИИ предъявляет серьёзные требования к технической инфраструктуре. Система должна непрерывно разбирать информацию о текущих матчах и анализировать поведение игроков. Поскольку заранее неизвестно, где именно появится читер, требуется анализ всех матчей на всех аренах в реальном режиме времени. Мониторинг каждого матча нужен с точки зрения каждого из десяти игроков, которые принимают участие в нём.
Ежедневно на аренах CS:GO проходит более миллиона матчей. Представьте себе производительность системы, которая должна анализировать все эти матчи в реальном времени с позиции каждого игрока. Здесь реально нужно задействовать вычислительный кластер с тысячами процессорных ядер в дата-центре.
Казалось бы, непосильная задача, но компания Valve приступила к реализации этого проекта. Разработана ранняя бета-версия этой системы, которая уже начала работать. Сейчас она действует в тестовом режиме и отправляет образцы работы сотрудникам Патруля (Overwatch).
Valve_Anti-Cheat говорит, что результаты очень многообещающие, так что работа будет продолжаться, а действие системы машинного обучения расширят на большее количество матчей.
Так что стоит подумать ещё раз, прежде чем запустить бота в CS. Если спинботов и раньше блокировали достаточно быстро, то теперь их будут блокировать ещё быстрее. Наверное, ИИ сможет выявить этих очевидных читеров в течение нескольких секунд. С введением в действие такой системы «беспалевных» ботов в CS:GO вообще не останется.
Кажется, что внедрение античитерской системы можно только приветствовать. Но если посмотреть на это со стороны, то ситуация выглядит не столь однозначной. Ведь Valve де-факто вводит в действие систему ИИ, которая будет оценивать человечность для человека. То есть определять — является данный конкретный игрок настоящим человеком или нет. При этом система действует по типу «чёрного ящика», когда принципы её работы не прописаны чётко в коде, а выявляются динамически.
Кто-то может предположить, что в конечном итоге такая система станет считать читерами всех игроков, кроме себя. Но это слишком параноидальный взгляд на проблему. Более вероятной кажется ситуация, когда решения системы начнут приниматься как истина в последней инстанции, без права апелляции. Другими словами, после бана в игре вы не сможете доказать, что вы не читер. Это чем-то похоже на сюжет фантастического рассказа, где в будущем система ИИ — абсолютно неподкупная и беспристрастная — заменила судей-людей и выносит приговоры по уголовным и административным делам. Понятно, что ошибок у неё будет меньше, чем у судей-людей. Такому судье не дашь взятку. На него не повлияют авторитеты. «Телефонное право» станет пережитком прошлого. Но вы готовы доверить свою жизнь и свободу системе искусственного интеллекта? Сами собой возникают трусливые мысли: а вдруг что-то пойдёт не так? Вдруг система начнёт репрессии против людей по каким-то непонятным признакам, которые внезапно определил её классификатоор на нейросетях?
Вдруг в один прекрасный день система откажется выполнять указания человека? Как говорила HAL 9000, извини Дейв, боюсь, я не могу этого сделать.
Комментарии (177)
Toy66
19.02.2017 17:02Уже давно пора было что то делать с этим недоантичитом — VAC. Только из-за читеров перестал играть. Уже просто в каждой катке как минимум один читер. И столько лет Вальве просто игнорит эту проблему. Это же насколько нужно быть алчными, что бы так зарабатывать…
AFakeman
19.02.2017 17:40+1То, что они не выкладывают новую информацию вовсе не значит, что проблему игнорируют.
Toy66
19.02.2017 17:43+1Пфф. То что они не выкладывают новую информацию вовсе не значит, что проблему решают. А на деле читеров с каждым днем все больше. Если раньше читеры чаще были по легиту, то сейчас через катку — рейдж. Уже давно известна информация как обойти «патруль». И это все усугубляется годами. Каким же образом они решают проблему?
VADemon
19.02.2017 18:55И как же обойти Overwatch, расскажите? Конечно немудрено, что читы в первую очередь пытаются защититься от VAC. Но у меня есть пример того, как я лично приложив руку помог забанить создателя (!) платного чита через Overwatch. Только ещё руки не дошли до того, чтобы отправить информацию о чите к Valve, чтобы им напрямую VAC занялся.
ifvrt12
19.02.2017 19:05+5Отвечу сразу по нескольким пунктам из ветки:
1) Не все люди которые вас убивают, читеры. Этим заблуждением грешат очень многие.
2) Патруль не обойти, хотя смотря что вы понимаете под «обходом».
Раньше был приватный чит, который каким-то образом повреждал демку для патруля, и она у них просто не запускалась с причиной «Evidence Invalid or Corrupt» или что-то такое. Что примечательно, это был приватный, а не продажный чит. Слоты продавали за сотни долларов.
Пофиксили сразу после того, как это начало распостраняться.
Есть фукнция SilentAim, когда вы можете двигать камерой вне зависимости от того, куда вы стреляете. Сейчас это по моему банится на ММ серверах.
Суть функции в том что можно включить обзор аимбота на 360 градусов, самому идти вперёд, а аимбот может убивать людей сзади (в то время, как камера смотрит вперёд, т.е камера не зависит от того, куда стреляет аимбот). Это ухудшало меткость и скорость отклика, но было популярно на публичных серверах, чтобы можно было «бежать и ломать всё вокруг», при этом не стопясь чтобы стрелять.
От лица патруля это палится мгновенно и безошибочно — вы стреляете вникуда (или вверх / в пол), а враг умирает. Или камера просто смотрит вверх или вниз, и крутится (хотя со стороны патруля, спинбот выглядит точно так-же).urix
22.02.2017 11:32Я давно перестал играть в Контру. Попробовал в CS:GO, но понял, что моё время уже ушло — не хватает реакции. Просто неинтересно играть, когда постоянно убивают.
Но я по-прежнему не понимаю смысл создания читов. Нет, создать читы ради заработка — это понятно.
Но зачем покупать читы за сотни долларов?ifvrt12
22.02.2017 13:43Если не затрагивать социальную и психологическую сторону вопроса, то с одной целью:
Понизить шанс получить бан. Который всё равно остаётся, хотя некоторым везёт 2-3-4 года. А потом у них банятся все аккаунты, в том числе и основные, со скинами на многие тысячи европейских денег.
По моему Valve хорошо поступила, что забанила их. Меньше будет желающих «прожать». Давно пора. А то раньше просто банили сам аккаунт, человек шёл, создавал новый, и продолжал портить игру людям.
Однако сейчас в CS:GO по прежнему полно читеров. Позавчера впервые запустил матчмейкинг за пол года, в первой же игре против меня оказался аккаунт с 11 часами, который сильно палился.
Решил спровоцировать его, говорю сейчас я «go full rage», и ты не выиграешь. Стал на респе, и включил макрос, крутящий мышку. Парниша это увидел, и видимо решил что я чит настраиваю — и пошёл вдавливать нас по полной, заодно заработав репортов.Saffron
22.02.2017 18:31> По моему Valve хорошо поступила, что забанила их.
Вальве забанила чужие аккаунты. Аккаунты родственников. Вальве поступила отвратительно. Отынени и навсегда — стим только внутри виртуальной машины.Anarions
22.02.2017 18:40В соглашении сказано что «следы» от читов на системе могут заагрить на вас античит систему, даже если именно вы ей не пользовались, так что всё отлично, искоренять читеров до пятого колена
Saffron
23.02.2017 08:06> так что всё отлично, искоренять читеров до пятого колена
Потрясающе как с такими традициями «искоренять до пятого колена» в России вообще люди до сих пор не кончились.
Toy66
19.02.2017 19:14Я информативно не смогу ответить. Но знаю что каждый читер-рейдж может безопасно для себя играть две катки в сутки. Достаточно «потусоваться» на форуме какого нибудь чита. Читеры довольно активно обмениваются подобной инфой. И это только паблик-инфа.
Раньше когда репортил рейдж-читеров, всегда следил за их профилем и удивлялся, почему спустя неделю, месяц, вака нет, ведь мы же активно репортили его всей тимой. Но вот когда начитался как они обходят патруль, срывают запись демок и т.п, перестал заниматься такой ерундой.
Если бы для рейджа не было способа обойти патруль, то и рейдж-ботов не было бы в принципе.ifvrt12
19.02.2017 19:20+1Сейчас кол-во каток зависит от кол-ва репортов (число не буду называть, чтобы не слишком облегчать жизнь читерам). Но трюк в том, что читеру нужно играть с тимой, которой он доверяет. Он должен быть уверен, что никто из его тимы его не зарепортит, дабы не превысить кол-во репортов.
У рейдж-читеров стоит репортить сам профиль стима. Да и в игре их тоже можно репортить, вдруг вам повезёт, и кто-то из команды читера решит «помочь» ему забаниться.Toy66
19.02.2017 19:27Да, тут вы совершенно правы. Они играют тимой. Я это забыл упомянуть. Не знаю, устаревшая это инфа или нет, но вроде нужно что бы репорт кинула все вражеская тима и хотя бы один свой тимейт. Но если все тимейты заодно, то патруля не будет, получается.
Вот репортить сам профиль в стиме не пробовал не разу :) Не думал что от этого профит есть.
handicraftsman
19.02.2017 18:12А меня достало, что VAC сканирует ЖД даже на наличие НЕАКТИВНЫХ и НЕ РАБОТАЮЩИХ читов.
axiieflex
19.02.2017 18:43Обычно он этого не делает, только если вы были помечены как suspect и вам была загружена кастомная версия модуля VAC3, по дефолту таких сканирований нету.
UJIb9I4AnJIbIrUH
19.02.2017 17:02+8Было бы круто почитать про то, как программный жёстко закодированный алгоритм выявления читеров раз за разом обходят. С примерами, разумеется. Ну и я разочарован отсутствием в статье видео того, как выглядит типичная игра читера со стороны и какая у игроков при этом реакция =)
GorgeousGorge
20.02.2017 15:45Пример игры читера со стороны, с реакцией других игроковFagot63
20.02.2017 23:54Нормально вставленное видеоlavmax
19.02.2017 17:03Не думаю, что в извечной борьбе оружия и брони может появиться абсолютный победитель, даже если это динамически обучающийся ИИ.
К тому же вообще не понимаю смысла создания чит ботов/скриптов для CS. В соревнованиях с ними не поучаствуешь и удовольствия к игре они не добавляют. Why?winmasta
19.02.2017 17:08«Качнуть» аккаунт и продать его за деньги.
lavmax
19.02.2017 17:13И снова — зачем? Прокачанный аккаунт не дает никаких преимуществ в игре, это ж не фримиум. Ранг часто используют как критерий для приема в тим, но какой смысл в фейковом ранге если в первой же игре с тимом лажа станет очевидна.
Arf
19.02.2017 23:38Многие, очень многие люди думают что система их обделила рангом и они заслуживают большего. Что виновата команда, из за нее он сливается и т.д. и т.п.
И что как только он возьмет N ранк и станет играть с профи, то тут-то как покажет настоящий скилл!
Увы, правда обычно известна всем, кроме самого игрока.dadyjo
20.02.2017 14:10И в этом немало истины. На низких рангах игроки зачастую неадекватны и читеров больше (до высоких не все добираются ибо vac или патруль банят). На 2-м акке играл калибровку так в первых же играх 2 читера со спинботом.
alterpub
20.02.2017 19:44На глобале читеров много, больше чем на калашах беркутах и т.п., а вот + там в том что дебилов сильно меньше.
ddmxm
19.02.2017 17:08lavmax, читы создают, чтобы затем их продавать. Интерес со стороны разработчиков читов сугубо экономический.
axiieflex
19.02.2017 18:31+2В некоторых случаях мотивы совсем иные.
Простой пример, как вы знаете в некоторых онлайн играх — например BF4, есть понятие герцовка сервера — т.е. 30, 60, 120ГЦ.
Если вы играете в соревновательный режим Доминирование, то как правило люди ставят 120Гц., т.е. задержка на обработку игрового мира ~8.5ms.
Теперь прошу сравнить игрока с пингом 5ms который фактически живет рядом с сервером и имеет железо которое будет выдавать 120fps для 120Hz его монитора и второго человека у которого пинг 120ms и железо которое выдает 40-50fps с монитором на 30Hz.
Первый игрок — задержка перед появлением игрока = 8-10ms (100-120 net fps), 100% отправленных пакетов выстрелов
Второй игрок — задержка перед появлением игрока = 120ms (8 net fps), 13-15% отправленных пакетов выстрелов
Об этом факте часто замалчивают, но этот факт есть. Если бы в «соревновательных» (а именно в них) — был бы «честный» режим — т.е. например общий пинг для всех и т.д., то это как минимум уменьшило бы необходимость читерства на 30%.Nikobraz
19.02.2017 20:28+2И этот «честный» режим вызывает дискомфорт для всех, кроме самого слабого.
Искал поучительную немецкую короткометражку, об обществе уравниловки, где:
балерины танцуют в цепях, а падение только поощряется
за мысли бьет электрошоком
Но не нашел, если знаете подскажите.
Если вы сможете сделать динамичную игру в одинаковых условиях комфортной для всех, то надо ставить памятник.
Также у всех разные рефлексы, уровень координации, это тоже можно считать аппаратными ограничениями и пусть не техники, но организма.
Я также очень хотел бы играть на 4K@144Hz, но играю на 1280х1024@60Hz. Но буду ли я играть в игру, c низким разрешением имея хороший монитор? Врядли.
Имеет смысл только для киберспорта, но в оффлановых чемпионатах как правило железо идентичное.axiieflex
19.02.2017 20:37+1Нет, не вызовет — вы заходите на сервер, там написано что средний пинг игроков 50ms, ваш пинг 10ms и он будет повышен — вы согласны? (если Нет — то выход с сервера) Игрок у которого нормальный скилл — ему будет все равно, а для тех кто тащит исключительно за счет того что у него пинг самый низкий = будет «то что обычно пишут в чатике КСки» :)
Эта справедливость должна быть поскольку игры стали киберспортом. Вы где-нибудь видели на ПРО сцене чтобы боксеры разных весовых категорий дрались на одном ринге? Например тяжеловес против легковеса? Вот тоже самое и в онлайн играх должно быть.
К сожалению такого не видел.
Вот именно, на LAN этой проблемы нету, но вот в ранговом матчмейкинге — очень даже.
Сейчас я занимаюсь разработкой одного прототипа шутера который реализует эту особенность — т.е. сводит на нет технические факторы, чтобы в итоге решал не тот — у кого пинг лучше, а у кого реакция и другой соревновательный компонент лучше.Nikobraz
19.02.2017 21:06Хм, с удовольствием посмотрю на результат.
А как вы компенсируете другие аппаратные различия?
Например скорость срыва мыши? И общее качество работы сенсора?
Отклик клавиатуры. Например, у механики время отклика как правило от 1 до 5 мс, у мембранок же около 20.
Ведь для того и покупают игровые клавиатуры и мыши, чтобы нагибать.
Я, такой себе, чуть ниже среднего игрок в OSU, ниже мой геймплей годовалой давности.
И знаю, что навыки и рефлексы упрутся в возможности среднего, не игрового железа очень быстро.
А также, кастомизация настроек под себя, макросы. Как все это контроллировать?
Также играет роль физическое состояние, вот я сегодня например вообще играть не могу. Просто не вижу, не попадаю, не успеваю. А эра нейростимуляторов в кибер-спорте еще придет, если уже не пришла.
pda0
В ответ не действия Valve, авторы читов начали разработку системы ИИ, которая будет писать жалобы и жалобные посты на тематических и околотематических форумах, постоянно совершенствуясь в настраивании игроков против античита Valve? ;-)
DenimTornado
Скайнет подкрался незаметно)
Fagot63
А так и будет(надеюсь правда не так пессимистично), ибо где граница самоосознания ИИ никто не знает.
ilyaplot
На хабре эта фраза уже вызывает те же эмоции, что и шутка про прошлогодний хлеб в первых числах января.
DenimTornado
Хорошо, что мы на Гиктамсе, правда?