Задать вопрос

Защита от читерства в шутерах

Привет ребята! Расскажите идеи, как защищаться от читерства в шутерах.
Один из способов — переносить логику на сервер и это отличный способ, который позволяет убрать большинство нечестных приёмов.
Но, скажем, в Контре можно сделать так, чтобы при наведении мыши на врага — она автоматически фокусировалась в голову, таким образом достаточно прицелиться примерно и потом считать хэдшоты.
Особо интересуют алгоритмы в открытых играх, как с этим борются?
Статистический вариант (больше 70% хедшотов — бан) не подходит, ибо
1. алгоритм можно подстроить так, чтобы он впритык входил в процент
2. могут быть матёрые игроки, которые могут быть круче этой статистики.

ps. я читал про PunkBuster и VAC (хотя не вникал в детали), но насколько подобная защита файлов может использоваться в открытый движках а-ля Nexuiz?
  • Вопрос задан
  • 3811 просмотров
Подписаться 14 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 6
misha91
@misha91
возможно поможет какая нибудь из античит-систем, например DONtLie AntiCheat
Ответ написан
На мой взгляд можно сделать защиту и на сервере и на клиенте. Сервер разрешает подключаться только клиенту, который не подвергался модификации. Причём проверку факта оригинальности клиента делать только на сервере и делать её «размазанной», а не в виде какого-нибудь явного вызова, который можно легко перехватить сниффером сетевых пакетов.

Понятное дело, что невзламываемых защит не существует. И любая, даже самая навороченная защита, при наличии желания и ресурсов, будет взломана. Тут всё будет упираться в себестоимость этого взлома и себестоимость использования взломанного (пропатченного) клиента. Использование пропатченного клиента будет приводить к бану с потерей аккаунта со всеми артефактами.
Ответ написан
splatt
@splatt
Увы, если бы было решение проблемы боттинга — то думаю, оно бы уже использовалось в 99% играх.

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

Я могу посоветовать только одно решение — использовать постоянно обновляемый античит, и постоянно заполнять базу хешей/алгоритмов/сигнатур читов. Например, давать игрокам плюшки за то, что они сообщают о новых читах. Это, конечно, подло, но это сократит количество читеров до минимума, т.к. как только новый чит будет появляться в паблике, он будет заносится в базу античита.
Ответ написан
На каждую защиту будет новый чит. Да и нарушение порядка на сервере читами не ограничиваются.
Самое надежное — команда админов с полезным инструментами в игре + система блокировки (по аккаунту как в Steam или серийнику харда).
Ответ написан
Комментировать
justrestless
@justrestless
На примере Punkbuster: MD5 файлов в реалтайме, проверка памяти игры, проверка запущенных процессов, возможность снятия скриншотов.
Но хочу заметить, что PB практически бесполезен.
Ответ написан
Комментировать
@Eddy_Em
Предложите любую античитерскую систему, и мы тут же расскажем вам, как ее обойти ☺
Даже на [десяти]гигабитных сетях (т.е. только для локалки, причем хорошей) если вы эдак раз 30 в секунду будете отдавать всем клиентам полноразмерное изображение игрового поля, найдутся читеры, которые напишут несложную программку отслеживания вариаций между кадрами и обнаружения движущихся целей…
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы