JackShcherbakov
@JackShcherbakov

Как решить проблему с подделкой координат в браузерном мультиплеере?

Здравствуйте! Есть идея - сделать мультиплеерную игру. Моя задача - сделать так, что бы 2 игрока видели передвижения друг друга на своих мониторах. Я хочу реализовать это путем переслыания JSON с координатами каждого игрока друг другу. Графика будет реализована на HTML и CSS. У каждого игрока будет свой файл на вебсервере, который и будет управлять всем (да, я знаю, что так делать лучш не надо, но чисто в практических целях я хочу сделать именно так, хотя в дальнейшем, разумеется, я это изменю)

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

Как защититься от этого? Заранее благодарю.
  • Вопрос задан
  • 185 просмотров
Решения вопроса 1
  • rishatsharafiev
    @rishatsharafiev
    React/Redux, Django
    Проверять, чтобы он не прошел от предыдущей координаты, больше чем на одну клетку на север, юг, восток, запад, северо-запад и т.п. (всего 9 направлений), и не двигать его дальше, пока не получит ответ от сервера, что координата валидна. Подойдет формула для вычисления расстояния между двумя точками в двухмерном пространстве. При иных условиях, если требуется больше клеток за раз в игре, уже нужно искать баланс, между безопасностью и функционалом, например, можно увеличить лимит разовых переходов до 2-3 шагов.
    287.gif
    Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы