MOTR logo
    • Категории
    • Последние
    • Популярные
    • Метки
    • Пользователи
    • Группы
    • Зарегистрироваться
    • Войти

    Синхронизация позиции между клиентом и сервером

    Запланировано Прикреплена Закрыта Перенесена Архивные предложения
    24 Сообщения 16 Posters 1.2k Просмотры
    Загружаем больше сообщений
    • Сначала старые
    • Сначала новые
    • По количеству голосов
    Ответить
    • Ответить, создав новую тему
    Авторизуйтесь, чтобы ответить
    Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
    • A Не в сети
      Astir
      отредактировано

      Zeno, да от куда же мы знаем.... узнаем что рассинхронизировалось только как % слили

      вроде стоишь, а тебя кто-то бьет и ты не можешь понять в чем дело

      или наводишь на моба, который рядом стоит, а на самом деле он чуть ли не за пределами экрана, и влетаешь в кучу мобов

      или ставишь на себя пневму от ренжевых атака, думаешь все, ты в безопасности, а тут вдруг по тебе дабл или бумер проскакивает

      1 ответ Последний ответ Ответить Цитировать 0
      • ZenoZ Не в сети
        Zeno Модераторы
        отредактировано

        Тогда в предложении нет никакого смысла.

        Правила общения на форуме

        1 ответ Последний ответ Ответить Цитировать 0
        • XeniaX Не в сети
          Xenia
          отредактировано

          Zeno, вот мое имхо, если небудет лень и покажут где взять исходники сервера буду разбиратся

          ! Х
          !---------------------------------- --------------
          ! У Е
          ! А

          Х = моб, моб хочет двигатся, выбирается рандом из точек вокруг, выпадает точка У, чтоб к ней попасть надо обойти преграду, сервер считает расстояние перехода с учетом обхода А1, если оно меньше некого К1 моб пошел обходить. На клиенте, получив значения Х и У, рассчитывается расстояние между ними учитывая обход А2, если оно выше некоторого К2 идет обход.
          Прикол в том что А1=А2, К1>К2. тоесть клиент решает что моб неможет идти ибо далеко и монстр идет толкьо на сервере, отображения на клиенте нету!

          Если моб во время своего "фантомного" для клиента перемещения увидит игрока, А, например в точке Е, он начнет атаковать, для игрока моб находится в точке Х и атакует его через стену, а бывает вообще невидно кто атакует. Для моба и сервера все ок, моб на точке Е чар в А....

          С персонажами:

          чар идет от Х к Т
          Х---------------Е------------>Т

          когда он находится в Е, в персонажу наносится урон - идет стоп рейт, некоторое время, но оно опять же разное на сервере и клиенте.
          Или же в точке Е чар дает команду атаковать(хилить) кого то вне досягаемости сервер проверяет что дейтвие невозможно и останавливает чара в точке Е. Клиент же после проверки и поняв что действие невозможно, продолжает прежнее движение. Итого на клиенте мы в точке Т, на сервере в точке Е.

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

          1 ответ Последний ответ Ответить Цитировать 0
          • ZenoZ Не в сети
            Zeno Модераторы
            отредактировано

            Второго ни разу не видел. Обычно происходит наоборот. На сервере персонаж оказывается в точке Т, в клиенте в точке Е.

            Правила общения на форуме

            1 ответ Последний ответ Ответить Цитировать 0
            • Первое сообщение
              Последнее сообщение