Здравствуйте!
Хотел бы задеть один важный вопрос любой сетевой игры, а именно защиту от читерства.
Ситуация такая, есть гоночный симулятор(хотя, это не очень важно, в бродилке похожие проблемы), я пока остановился на сетевом решении от Photon. Все примеры, которые мне попадались с решений от SmartFox/Photon и прочих, юзают неочень защищенную систему — вся механика рассчитывается у клиента, который посылает свои координаты серверу. По сути, никакой проверки нету.
Вот, например, если игрок каким-то образом заюзал какой-нить спидхак или что-то подобное, то сервер это схавает. Вот были координаты игрока (0.0.0) и тут, хоп! — резко стали (10000.10000.10000).
Пока вижу несколько решений:
- проверка скорости на стороне сервера. Если скорость игрока, которую получил сервер, выше максимально допустимой — банить игрока.
- проверка координат на стороне сервера. Если координаты игрока, за последние N-секунд резко увеличились — банить.
Ну вот пока всё, что пришло в голову.. Проверки конечно, хорошо, но только частично могут обезопасить(в большинстве случаев).
И еще, каким макаром внедряют читы? Сразу говорю, я не очень хорошо представляю, как это происходит. Но думаю примерно так — когда юнити шлёт серверу инфу, взломщик перехватывает эти инфу и вносит свои вредоносные правки.
Ну вот вроде пока всё, хочется услышать Ваше мнение по поводу безопасности и использованию читов!
Заранее спасибо!