ibash.org.ru - Новый цитатник Рунета

Форум: Open Source и читерство 1 > [RSS]

Форум: Вход Регистрация Участники Поиск RSS

Shock
09.03.2010 - 14:35

Как борятся с читерством в Open Source играх (например, Нексуиз) при игре по сети и сингплеере на рекорды, кроме как идеологическими методами?

Я понимаю, что значительная часть логики перенесена на сервер, а на клиенте, в основном, только отображения. Но, я подозреваю, что в том же Нексуизе каждый игрок имеет данные о координатах всех других игроков (и не только тех, кто в поле видимости) и таким образом может существовать клиент, с картой, на которой изображено положение всех игроков.

Или, скажем, открытая игра Tower Defense, где можно к концу набрать количество очков, число которых отправляется на сервер. Но, так как известен формат данных, то можно отправить произвольное значение, реально большое, но при этом не достигнутое. Например, Топ-1 набрал 8986 очков. Тогда мы отправляем 9012 и вуаля - число вполне реальное, и мы уже топ-1. При этом, если бы игра была закрытая, то можно было бы встроить алгоритм шифрования результата

RoadRunnеr
#14 - 09.03.2010 - 20:13

Та же "пауза" - клиент шлет серверу запрос на паузу и получает положительный ответ, после чего и отображает соотв. надпись. Затем, при снятии паузы, отсылает соотв. запрос на сервер для продолжения игры. Так что, Шок, ты что-то не то говоришь...

Shock
#15 - 09.03.2010 - 20:33

> Так что, Шок, ты что-то не то говоришь...
меня интересуют именно честные методы борьбы с читерством на стороне клиента в оупенсорс играх. ньюанс с перенесением части логики на сервер я понимаю, но:
1. это труднее запрограммировать, чем просто втыкнуть простую защиту на клиенте
2. это требует постоянного и надёжного соединения "на каждый чих"
3. это производит нагрузку на сервер.

допустим, я пишу оупенсорс ТоверДефенс на Питоне, который должен работать в офлайне. бегут существа, за каждое убитое существо начисляются очки. чем глубже существа продвинулись к выходу - тем меньше очков за них начисляют. плюс я хочу, чтобы игроки могли в конце игры могли нажать кнопку "опубликовать" и таким образом с лёгкостью померятся членами с другими игроками.

Задание: максимально затруднить выкладывание фальшивого результата при условии идеально-открытого кода клиента и сервера. (например, использование закрытого ключа при открытом алгоритме шифрования или т.п. - разрешается)

есть вариант все рассчёты производить или дублировать на сервере, но тогда всплывают те три недостатка, что были описаны выше. и что я тут не то говорю?

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

но кроме варианта послезащиты хочется еще вариант предварительной защиты от подобных нечестностей.

naryl
#16 - 10.03.2010 - 01:03

Любая защита легко обходится написанием бота ;)

Можно попробовать анализировать демку автоматически.

unikoid
#17 - 10.03.2010 - 07:36

>Любая защита легко обходится написанием бота ;)
Можно поподробней, чет я не вкуриваю.

naryl
#18 - 10.03.2010 - 18:56

Не отправляй запрос с завышенным score. Напиши программу, которая честно заработает тебе столько очков.

unikoid
#19 - 10.03.2010 - 19:45

А, ну это очевидно. Правда смысла лично я не вижу, все таки игры созданы чтобы получать процесс удовольствия от игры, в первую очередь, я считаю.

Asterozoa
#20 - 10.03.2010 - 19:50

А читерство по твоему онанизм:)

unikoid
#21 - 10.03.2010 - 20:02

Скорее наоборот, читерство - отстранение от процесса или сведение его к механическим операциям.

доброжелатель
#22 - 10.03.2010 - 22:03

Возможное пристанище Няшгъа: http://nowere.net/b/res/28298.html

к0s7ёr
#23 - 16.03.2010 - 18:48

няшг, ты правда был там??

Xenius
#24 - 19.09.2010 - 20:33

Если будет какая-то "защита" — делом чести будет её обойти.
По-моему, оптимально — полагаться на честность других игроков и самому не обманывать.
Что касается чисто SP игр (то есть даже без писькомерства), то никакой "защиты" тем более не требуется, а наоборот желательно, что бы в самой игре были соответствующие опции, чтоб не перекомпилировать, что делать лень.
К списку вопросовСтраницы: 1 >

Быстрый ответ
Имя:      Пароль:    
Текст сообщения:

«ibash.org.ru — Новый цитатник Рунета» Почта вебмастера: imail@ibash.org.ru