Как стать автором
Обновить

Комментарии 116

к сожалению, так называемый «maphack» теоретически возможен во всех играх где сервер хостится одним из игроков… возможным выходом является запуск игры на выделенных серверах как поступили S2 Games с Heroes of Newerth (да, я знаю что жанр игры другой)… там игра хостится на серверах выделенных S2 Games и каждый игрок получает ТОЛЬКО те данные которые он может знать/видеть в данный момент исходя из игровой механики
Вообще-то в SC II сервер хостится Blizzard'ами, а не одним из игроков.
К сожалению, не имею StartCraft II потому не знал… Однако, если это действительно так, тогда вдвойне странно что каждый игрок получает всю информацию
Ну а как реплей-то писать? :-) Надо начать с изменения механизма реплеев, а там уже можно и информации порезать.
Ну как как… писать на сервере, с центральным репозитарием повторов :) (собственно, так это реализовано в упомянутой мной игре)
Если все действия происходят на сервере, то сохранять изменения на сервере не составит труда.

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

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

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

а вар 3 точно подхватывает.
Ну вот в DoTA когда играешь, хост выходить и всех выкидывает. Там 5 на 5 играют.
ну вот в доте, когда хост выходет, и есть хоть один игрок, который способен хостить (порты открыты, и все такое) то он подхватывает.

не всегда срабатывает, но больше 50% точно. (причем я сам нередко такие игры подхватывал)

играю иногда на games.alkar.net, там pvpgn, и это точно не сервер хостит, т.к. после этого у того кто подхватил даже начинает работать кик.

Про механизм «подхватывания» слышу в первый раз, но это не противоречит моим словам. :)
в баттлнете — да.
а при игре по сети и в первом старкрафте, и в третьем варкрафте мапхак точно работает.
Действительно не заметить такого слона-то. Хотя конечно дебаггинг после релиза стандартная себе весч, но ближайшие пару месяцев SC2 не быть кбиердисциплиной )
Ближайшие пару месяцев будем играть сингл и усиленно патчиться.
Он еще в бете стал кибердисциплиной.
Имелось ввиду на практике. Конечно, он был ей заведомо.
Это вообще не баг… То что туман войны обсчитывается на стороне клиента известно еще с варкрафта 3, однако это вообще не помешало его спортивности.
А еще можно играть по человечески, и не эксплуатировать подобные баги. Вы для удовольствия играете или главное победа, а средства не важны?
Очевидно, что, если бы автор статьи играл лишь ради победы, то он бы об этой баге сюда не написал.
Кэп подсказывает что лично я собираюсь использовать это, и играю я для удовольствия. Но раз уж баг существует, надо о нем сообщить, поскольку такая идея может посетить уйму других людей.
Может о нем стоит сообщить в Blizzard? Мне кажется, что их представители хабр не читают.
Ну, Вы что, никогда не слышали поговорку «Главное не участие а победа»?
Всегда найдутся желающие использовать те или иные дырки. Автор лишь сообщает о дырках, видимо, в надежде, что их таки закроют )
Плохо то, что сообщает он это не в поддержку Близзард, а посетителям на Хабре :)
Я — для удовольствия, а тот урод, который на террановской базе юзает мапхак и все это удовольствие портит. Вы хотите в такие игры играть? ИМХО лучше информацию, как раз, обнародовать и дождаться исправления.
Не то место для опубликования и ожидания исправления, не находите?
Не нахожу. Блог технический, читают его огромные массы населения, вполне возможно что и какое-нибудь русское, сотрудничающее с близзардом, подразделение фаргуса — тоже, оно как раз и донесет мысль куда надо, причем очень быстро.

Да и вообще, с хабры это сейчас по форумам всех баттлнетов в зоне действия IP адресации разнесется.
Действительно, Вы правы. Это гораздо быстрее чем написать в Blizzard.
Ну точно быстрее, чем написать, к примеру, в Google =) У них, по-моему, вообще все письма извне сразу в Trash идут.
По крайней мере «резонанс» никто не отменял. Одно сообщение в близзард запросто может затеряться, а вой на всех доступных форумах — явно пнет к действию. Помните как сотрудник Google с MicroSoft? Стоило опубликовать дыру — мигом залатали, до этого 2 недели бюррократией отмахивались.
Дело в том, что близард уже в курсе этой проблемы, т.к. в варкрафте 3 ситуация та же самая и мапхаков и дропхаков для него было уже несколько штук (из-за чего был глобальный отток пользователей с баттл-нета, т.к. играть было неинтересно), а уж сколько резонанса было на _официальных_ баттл-нетовских форумах — не сосчитать.

И только в марте этого года вышел Е-патч «фиксивший» несколько хакерских тулзов (там очень смешные баги на самом деле).
НЛО прилетело и опубликовало эту надпись здесь
Пахнет бредом. У них совсем другие масштабы и эти «мапхакеры» это капля в море пользователей. Репутация и комфорт намного важнее.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Да это не так важно. Проиграл мошеннику и ладно. Должно быть have fun всегда =) Я вот заметил во втором этапе бета-тестирования, что юниты стали тупее, чем раньше. Когда играл весной, юниты были настолько умными, что я никогда не заморачивался по поводу того, что юнит обойдет все преграды и дойдет до точки отправления. Начиная со второго этапа бета-тестирования юниты стали ломиться в стену. Например отправил зилотов через атаку на противников, а они вместо того, чтобы обходить друг друга, толкаются в спину, пока впереди-идущий не погибнет.
На турнире за победу дают вполне реальные деньги. 1500 евро не предел.
Всем известный Slayer's Boxer я видел и 50, и 100 тысяч выигрывал =) Но это не для меня)) В 22 года уже надо не этим заниматься, я думаю))
НЛО прилетело и опубликовало эту надпись здесь
А вы видели 40-летних футболистов, хоккеистов? Согласен, что этим стоит заниматься, если это приносит доход. Но все это временно, до определенного возраста. Тот же Кулер вроде тоже прекратил в quake 3 играть. Да точно могу сказать, что тот же Slayer's Boxer сейчас не играет уже))
Ага, у Боксера жена и дети =)
Сергей Федоров, например. Ягру почти 40 и таких примеров, на самом деле, не так мало. Но не стоит сравнивать спорт реальный, с киберспортом. Доходы близко не стояли, да и многие футболисты и хоккеисты потом становятся тренерами. Будущее киберспортсменов, лично для меня, видется слишком туманно.
Оно туманно в СНГ. В Европе, США и тем болие азии все поставлено на поток вполне себе как реальный спорт.
В 40 лет физические кондиции уже не те. Всегда ваш, КО.
Как и ментальные кондиции, собственно.
НЛО прилетело и опубликовало эту надпись здесь
Боксер играет, ему 31, у него новый ник. А перерыв был вызван службой в корейской армии.
BTW, в армии он тоже играл. В команде Air Force ACE.
Сейчас он в команде SK Telecom T1 и вроде со старым ником…
Он на сколько я помню WCG 2003 выиграл, и из его серьезных побед — это пожалуй последняя. А вообще, поскольку Лим из кореи, а в корее киберспорту уделяют огромное внимания (уделяли во всяком случае, уже не особо слежу), там это дело выгодно и там игроки сидят (сидели) на зарплатах, и достаточно приличных зарплатах.

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

P.S. Играл с ним пару раз, играет как робот, успевает абсолютно все и везде =))
Как раз загнулся-то варкрафт, таких гонораров как в ск больше ни в одной игре нет.
Турниры проходят не в специальных для этого местах? Как Вы там хаки использовать собираетесь?
Они проходят в интернете. HDH Invitational, Zotac CUP и др. турниры по бете. С релизом их количество только возрастет.
Призы в этих турнирах превышают 1-2 тысячи евро?
Насколько я знаю, призовые доходили до 2500. А какая разница?
Ну для меня разница существенная, если призовой фонд мизерный, то и наличие читеров не так страшно.
HDH First Place: 1500 USD
Starcraft 2 не стоит 100 миллионов, по последним сведениям речь шла о разработке и поддержке World of Warcraft.

Поправьте этот момент, пожалуйста :)
Поправил =)
Эксплуатировать эту багу иным образом, чем изначально описанный в статье, скорее всего, не выйдет. Потому что на примере вова близы научились защищать клиент от всякого рода хаков (статьи про защиту вов-клиента — исключительно увлекательное чтиво). Этот конкретный случай сработал, видимо, именно потому, что поддерживался родным клиентом.
Научился защищать? Есть тонна хаков и ботов, которые не палятся варденом. Другое дело что запалив большинство из них другие игроки напишут кляузу.

Впрочем тот же бот для рыбалки наверное использует полсервера…
Тонна? Можно поконкретнее, с названиями? :)
Нельзя :) Я как-то натыкался на целый форум, посвященный этому, где люди обсуждали вполне работающие телепорты, спидхаки и прочую живность. Проверять как-то не хотелось.

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

Я особо не злоупотреблял :) Мой аккаунт в порядке.
Ну а в Низине Шолозар всегда целые стаи роботов-горняков летают :)
Вроде с 3.3.5 вышел варден 2, с которым обещали побанить кучу ботоводов.

Правда говорят но-гкд хак еще работает
Впервые слышу. Надо погуглить по теме.
Нагуглил
По ходу ничего не изменилось.
Как вариант во время игры писать файл с шифрованием, а после окончания игры, расшифровывать.
Ну а мапхаки, которые снифят трафик — для этого есть Warden. Да и SC2 это не WoW — прямого профита от ботов/хаков нету, поэтому рисковать battle.net аккаунтом, что бы из бронзы подняться в сильвер, имхо, нету смысла.
> Как вариант во время игры писать файл с шифрованием, а после окончания игры, расшифровывать.
Слив засчитан.
Можно допилить клиента игры чтоб включал полный vision

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

Вы не представляете как это увеличивает нагрузку на сервер. Держу несколько серверов CS, и пробовал ставить дополнение которое блокирует wallhack (просмотр сквозь стены) путем проверки vision для каждого игрока. В результате нагрузка на ЦП возрастает в 3-4 раза. При этом если загрузка ЦП будет на уровне 90-100%, то сервер просто не будет успевать делать видимыми игроков, которые резко выпрыгивают из-за угла.
При этом в CS один персонаж на одного игрока, я боюсь представить что будет в SC2 4х4 с 200 лимитом.
НЛО прилетело и опубликовало эту надпись здесь
Не путайте трехмерный шутер и плоскую клеточную стратегию. Фактически, каждый клиент ассоциирован с изменяющимся массивом видимых ему клеток. А дальше идет тупая проверка по массиву :-) Дешевая операция.
Конечно надо будет просчитывать клифы, кселнаги и т.д., но это всё вполне себе несложно.
Мапхак — всегда был и есть в Warcraft 3 и сделан точно так же. При этом ладдер абсолютно нормально живет.

А живет все потому, что нормальный игрок по стилю игры и по реплею легко видит, что его противник использует мапхак. Ну проиграл ты одну игру из-за него — подумаешь. Отправляешь реплей в Близзард, те проверяют и банят ключи мапхакера. Десяток использований мапхака — минус 300 баксов. Так что мапхакеров в ладдере мало.

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

В тему:

Весьма сомнительно что такое прокатит в SC II, поскольку подглядывание фактически недоказуемо. Можно спалить билд-ордер противника, заметить что он ставить нычку и отправить туда разведку… всё это выльется в срач, ложные наказания и т.д.
При просмотре реплея легко заметить, когда противник слишком оперативно реагирует на ваши действия, даже не спалив их предварительно.
Ну если противник лох — да. Если он игрок среднего уровня, то это практически невозможно.
+1

это действительно палится

я очень много играл в Вар3 на профи-уровне с профи. И мапхак мне никогда не мешал. А мапхакеры спокойно палились.
Не надо забывать, что в SC2 есть функция first-person replay. Будет подозрительно, если человек будет пялиться в туман войны постоянно :)
НЛО прилетело и опубликовало эту надпись здесь
В SC1 структура replay-файла известна и активировать FP-replay можно только с помощью неофициальных плагинов, которые дописывают туда дополнительную информацию. Думаю в Warcraft ситуация примерно такая же.
Кстати, один из методов выловить мапхакера в SC1 — проверить, не выделял ли он юниты соперника, которые находились для него в тумане войны.
В продвинутых мэпхаках выделение юнитов в тумане отключено :)
Не очень знаком с мапхакахми. Следующим шагом мапхакеров было отключение логирования выделения вражеских юнитов (не только в тумане войны). Соответственно они вычислялись отсутствием этих данных (надо же апгрейды смотреть). Но это относилось только к игрокам хорошего уровня. Да и было давно, сейчас наверно и это пофиксили.
Пишется и посмотреть можно — достаточно в режиме просмотра реплея поставить галочку «Автокамера», таким образом можно запалить нубов с мапхаком, но игроков высокого уровня запалить практически невозможно — но случаи были.
Для первого старкрафта ICCUP например использует свой Antihack Launcher, который отслеживает все модификации клиента, в том числе горячие (непосредственно в памяти). Как минимум это позволяет раскрыть ник-спуфинг, как максимум — автоматически дропнуть с сервера при обнаружении попытки нечестной игры. Можно конечно сломать сам ланчер, но что-то мне подсказывает, что это не самое простое занятие.
> что это не самое простое занятие,
да и не факт что очень уж разумное, клиент ICCUP постоянно обновляется. Что будет работать сегодня, не будет работать завтра. Да и потом игра настолько динамичная, что открывать где-то реплей, пока ты играешь вообще нереально, тебя к этому времени уже убьют.
Зачем реплей? Мапхак позволяет открывать карту прямо во время игры, вроде бы.
Автор в статье посоветовал открыть реплей :) Старкрафт2 кстати имеет достаточно оригинальную защиту от взлома, там сначала запускается лаунчер, который открывает игру в trace режиме, а сама игра открывает в свою очередь launcher в том же режиме и оба друг друга палят от изменений, но как всем известно эту защиту обошли во время бета теста и дали возможность играть тем, у кого небыло ключа. Так что спастись от мапхака почти невозможно, разве что в конце игры обозвать своего оппонента «сраным мепхакером» и БМно выйти :)
Палишься, лол :)
Палились те, с кем я играл.
Багу, как и многие другие, пофиксят. Уверен.
НЛО прилетело и опубликовало эту надпись здесь
Народ, ну не надо строить из себя не пойми кого. Да, как уже писал выше, туман войны обсчитывается на клиенте, но не является проблемой, по крайней мере не такой как вы думаете.

1. Точно такая же ситуация была и в Warcraft 3. Там мапхакеры банились на раз, потому как уличивший вас в хаке может отправить реплей на рассмотрение ГМам. А на реплее прекрасно видно как вы не с того ни с сего приходите и убиваете экспанд поставленный в неожиданном месте, или отбиваете дроп, или строите прямую контру без разведки.

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

3. Баны будут раздаваться быстро и точно, при этом не стоит забывать что в Battle.net используется реальные имя и фамилия человека, а так же за каждый новый аккаунт придется снова платить. А при выходе новых аддонов цена будет расти.

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

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Думаю, концентрация мапхакеров будет очень мала и особенно сильно на ситуацию не повлияет :)
Мапхак (да и любой другой *хак) это проблема для баттл-нета, начиная от того, что пользователи уходят — так как им (при их скиле) становится банально не интересно играть с соперником, у которого такой же скилл, но есть «преимущество» и заканчивая тем, что теряют смысл игры типа 3х3 и ФФА.

А вы сами пробовали посылать реплеи на hacks@blizzard.com? Насколько я помню их смотря раз в полгода\год, поэтому мапхакер может резвиться несколько месяцев, прежде чем его ключ забанят (если забанят), потому что на этот мыл идет тысячи реплеев, в которых нет мапхака, а есть хороший игрок.
НЛО прилетело и опубликовало эту надпись здесь
Она на носу.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Конечно есть, он в папке с реплееями. .sc2replay
НЛО прилетело и опубликовало эту надпись здесь
Можно. Разрешаю.
НЛО прилетело и опубликовало эту надпись здесь
ваша операционная система тиранит вас, не дает читать файлы?
в виндовс всего несколько файлов защищищены так, что их нельзя прочесть из юзер-мода. это ветки реестра в которых храняться всякие ключи и хеши паролей, и еще что-то подобное.
и то, есть способ прочитать их, по крайней мере в вин хп. (в семерке не проверял)

НЛО прилетело и опубликовало эту надпись здесь
Про unlocker слышали? Он ищет хендлы файлов других процессов и закрывает их. Собственно метод тот же, если у хендла есть право на чтение, то можно спокойно читать, или продублировать хендл с правом на чтение.
НЛО прилетело и опубликовало эту надпись здесь
накрайняк, можно написать тулзу для работы с диском напрямую, мимо операционки.
но я думаю есть и более цивилизованные способы.
>Пути исправления…

это типа на случай, если программисты близзарда читают хабр и при этом не знают, как исправить баг/фичу, автор решил им подсказать?

кстати, пункт 2 не реализован в большинстве игр, потому и работают всякие wallhack-читы
Кстати, никто не знает, будет ли трансляция онлайн сегодня с торжественного открытия продаж игры в Москве?
Возможно автору стоит поюзать Drophack. После старта дропает всех игроков, соответственно вам ачивки и уровень.
Хабр открыл для себя maphack.
Этому хаку уже 10 лет в обед и как-то все живут с этим.
За такое весь аккаунт банят, потерять. У меня лично на акке WoW, Diablo 2, SC1, SC2 2 версии, как-то не хотелось бы потерять все это.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации