![]() |
|
![]() ![]() ![]() |
|
GGuz |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 20.4.2007 Репутация: нет Всего: 1 |
К примеру взяли мы и создали шахматный сервер, где народ сидит и играет друг с другом в шахматы. Возможно ли программно определить что человек играет в шахматы при помощи компьютера? К примеру можно проверять на запущенные программы на кампе играющего, проверять его действия(свернул окно во время хода) и т.д. К сожалению программу можно запустить на другом кампе и результат такого подхода будет равен нулю. У кого какие идеи, мысли? Поделитесь, буду рад.
|
|||
|
||||
Akina |
|
||||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
И тебе очень быстро начистят ряшку за подсад трояна...
В одной отдельно взятой партии - имхо нет. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
||||
|
|||||
bio_hazard |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.6.2007 Репутация: нет Всего: 1 |
Скорее всего расчитывать стоит только на честность, техническими средствами не реально проверить кто ваш противник.
|
|||
|
||||
GGuz |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 20.4.2007 Репутация: нет Всего: 1 |
Пусть не за одну партию, пусть за 100 партий. На счет запущенных программ, это да, а вот на счет юзерских кликов, то это все ок. К примеру ход юзера, он кликает, но кликает не по окну моей проги(в которой играет шахматы), потом опять его ход, а потом опять и опять и после каждого хода происходит клик или сворачивание моей проги, значит человек жульничает. Но это в любом случае не вариант...
http://chessplanet.ru/ - тут реализованно, сам проверял, сыграл при помощи проги(не известной) и практически сразу меня вычислили Еще какие нить варианты будут? ![]() |
|||
|
||||
maxdiver |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 29.1.2008 Где: Саратов Репутация: 16 Всего: 18 |
GGuz, интересно, как вообще можно вычислить вариант, когда программа-"помощник" запущена на другом компьютере?
Разве компьютерные ходы чем-нибудь отличаются от человеческих? Имхо, нет. По поводу проверки запущенных программ - ну можно проверять по заголовкам открытых окон, чего здесь особо предосудительного? Для трояна как-то слабовато ![]() |
|||
|
||||
SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 6 Всего: 74 |
Факторов можно придумать кучу:
начиная от троянских(наличие запущеной программы, клики, обработка событий) заканчивая аналитическими- время совершения хода, совпадение с ходом возможных эмуляторов(т.е. я предполагаю, что все шахматные эмуляторы играют на победу и расчитывают шаги намного вперед)- берем 2-3-4-5 разных программ и смотрим, как они сходят -------------------- Всем добра ![]() |
|||
|
||||
solverr |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 31.12.2008 Репутация: нет Всего: 1 |
Время от времени делать скриншот экрана пользователя и вручную их просматривать. Насколько мне известно, покеррумы так и делают. Для защиты от полностью автоматизированных ботов можно использовать капчи.
|
|||
|
||||
MaXL |
|
|||
![]() Developer ![]() ![]() Профиль Группа: Участник Сообщений: 380 Регистрация: 24.10.2005 Где: Владивосток Репутация: нет Всего: 2 |
ну вот это уже реально троян. Вот тут предложили по поводу хода возможных эмуляторов, то ИМХО времени не хватит проверять, если игровок будет много тупить будет слишком, либо если заранее подготовить БД таких ходов. Тут самый оптимальный вариант это время хода. Смотреть несколько партий, а потом предъявлять если что, что будет бан. Видел на одном сайте было так, что просто игроку выводилось, что соперник свернул окно игры(ну или активизировал другое). Но ИМХО, когда играешь в шахматы, есть аська и т.п, и иногда приходиться разрываться ![]() -------------------- MaXL |
|||
|
||||
SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 6 Всего: 74 |
MaXL, я не знаю точно про программы, эмулирующие игру в шахматы, никогда не использовал
![]() -------------------- Всем добра ![]() |
|||
|
||||
MaXL |
|
|||
![]() Developer ![]() ![]() Профиль Группа: Участник Сообщений: 380 Регистрация: 24.10.2005 Где: Владивосток Репутация: нет Всего: 2 |
SoWa, эмулировать можно по разному. В какой-то программе я видел нужно указать на сколько ходов вперёд просчитывать, и вот если поставить на три хода, то после пяти-шести ходов, он уже начинает задумываться(секунд пять). А если ещё больше поставить, так вообще умрёт. Только вот определить, на сколько ходов поставил читер невозможно.
Ну а ещё как вриант, сделать black list куда каждый может пожаловаться на читера. И там уже по обстоятельствам. -------------------- MaXL |
|||
|
||||
SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 6 Всего: 74 |
Вот, например, через веб-интерфейс проблематично отслеживать программы.
Думаю в сторону алгоритма распознования читера. -------------------- Всем добра ![]() |
|||
|
||||
GGuz |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 20.4.2007 Репутация: нет Всего: 1 |
Если ограничиваться только одним кампом, тогда сворачивание окон и определение запущенных приложений, будет достаточно и куда более эфективнее предложенного Вами способа...
Ваш ход, вы свернули, опять Ваш ход и опять свернули, 50 партий и все сворачивания приходится именно тогда, когда Ваш противник сделал ход - не кажется фантастическим совпадением? Это всего лишь одна из ступеней защиты(на нее нельзя полностью положиться, но является хорошим дополнением)
Скажите пожалуйста, а как на читера будут жаловаться? Т.е. как может юзер определить что его соперник играет не честно? Ну разве что только сидя со своим соперником в одной комнате ![]()
Ясный пень что придется писать декстоп приложение, т.к. полагаться на клиентские скрипты довольно таки опасно, ответ получаемый сервером может быть заменен... Конечно этим не будет заниматься рядовой юзер, но если турнир будет с призовым фондом, тогда на шахматном сервере начнут сидеть не шахматисты, а хакеры ![]() |
||||||||
|
|||||||||
GGuz |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 20.4.2007 Репутация: нет Всего: 1 |
Берем 5 программ: Первая думает 2 сек Вторая думает 3 сек Третья думает 4 сек Четвертая думает 5 сек Пятая думает 6 сек Прибавим 3 сек к каждой(время переключения пользователем между шахматной программой и сайтом). Получаем следующее: если юзер думает от 5 сек до 9 значит он играет не сам. В этом где то есть истина, но до факта читерства очень далеко! В принципе как одна из ступеней защиты, этот вариант может подойти, но только из-за того что некоторые ходы как правило должны будут выполняться быстрее нежели 5 и более сек.(на пример первые 3 - 5 ходов) Если что то не так понял, поправьте ![]() Это сообщение отредактировал(а) GGuz - 9.1.2009, 22:07 |
|||
|
||||
kamre |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 330 Регистрация: 24.3.2006 Репутация: нет Всего: 13 |
Программа с трояном - полный бред и не уважение к пользователю. Да и смысла в ней никакого нет:
1) играть можно с одного компа, а ходы на другом считать 2) клиента можно запустить в виртуальной машине |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |