Писал античит, в основе стандартные методы защиты, проверка файлов, проверка хуков на важные функции движка и opengl функций ну еще пару методов которые помогают вычислисть читера.
в конечном итоге все последнии читы используют ring0 инжекторы, то есть хукать loadlibrary а аналогичные функции для ловли инжекта из ring3 уже смысла нет, но на хуках glbegin и прочее все равно ловятся.
Но теперь стали использовать читку памяти из hl.exe в ring0, а что бы рисовать врагов, вовсе отказались от перехвата gl функций, рисуют на канвасе рабочего стола gdi функциями (работает только в winxp, из того что видел).
интересует методы как снизить возможности нечестной игры, возможно ли както криптовать структуру об игроках или выносить ее в другое место в памяти?
обычно чтобы найти указатель на эту структуру, дабы не вешать хуков и не оставлять следов ищут по патерну. Ищу метод чтобы данные хранились так чтобы по текущим патернам невоможно было найти структуру.
может есть еще какие идеи?
конкретно для халфы как для движка с закрытыми сорцами ничего не посоветую, но методы радикальные давно известны.
Во первых делать скриншот экрана игрока и засылать его администратору. Во вторых движок должен учитывать наиболее распространенные методы читинга по характерным действиям самого игрока и незаметно делать читёру разные необъяснимые пакости, которые трудно ловятся дебаггером. То есть много читёров поляжет в неравной борьбе, прежде чем создатель чита поймет что движок его чит опознал и необъяснимые глюки - это реакция движка на чит.
Нечто вроде аллергии.
Боюсь твои труды не оправдают себя. Посмотреть на MyAC (вроде самый успешный сейчас), он даже opengl32.dll не блокирует.
Не знаю как UCP, который запускал игру так, что хрен узнаешь вообще, запущена ли она в системе, но на сколько я помню, прозрачные стены на нем все-таки работали, как-то через драйверы .
Цитата:
Дядя Миша писал: Во первых делать скриншот экрана игрока и засылать его администратору.
И на так убого, как это делает MyAC. На Windows 7 при нормальной игре если PrintScreen возвращает черный экран, то MyAC вернет тоже самое.
Не знаю как работают всякие Fraps'ы и заснимут ли они включенные читы, но по-моему нужен подобный подход.
Многие админы и без читов банят, только за то что ты их обыгрываешь.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Я тут , будучи бывшим задротом Point Blank припоминаю как юзали такую чтуку как CheatEngine и вытворяли с игрой что хотели
То длинный нож , то большый ранг , то анти разброс (до 0 разброс ставили у оружий) . Из других режимов переводили обьекты - Динозавра (типо зомбомода) на ДМ переносили. Ну или бессмертие себе делали.
За раз в 3 месяца , после ломания новоой обновы античита , читаками забивались все сервера.И бунили по 8к людей
рисуются квадраты по цвету команды, которые показывают позицию игрока.
информация о команде узнается по модели игрока.
насчет админов это хорошо, но нет столько времени следить за 100+ онлайном, да и системе я больше доверяю чем человеческому фактору, особенно когда банят просто хороших игроков.
Дядя Миша писал: *чешет репу*
ну опытный игрок по звуку шагов определит позицию игрока.
неопытный - по читу.
есть ли смысл вообще огород городить?
это конечно хорошо не спорю, но когда ты стоишь и не издаешь звука, и ты просто умераешь из не откуда это не вариант. а когда более менее средний игрок с такой чтукой играет, то ему вообще равных нету.
смысл есть, нужно отрезать доступ тем кто нечестно играет.