Отскок назад

  • Автор темы Автор темы Die
  • Дата начала Дата начала

Die

Величайший
Проверенный
Легенда Истоков
Старожил I степени
Сообщения
515
Розыгрыши
0
Решения
1
Репутация
614
Реакции
261
Баллы
1 523
Здравствуйте, интересует способ фикса данного бага:
Или хотя бы какой пакет отвечает за это? Склоняюсь к MoveBackwardToLocation, но не уверен.
 
типа того, так же желательно реализовать счетчик количества отклонений, и при достижении определенного порога принудительно синхронизировать клиент, или же при получении последующих правильных координат обнулять его

Код:
       int ping = 256 + (L2GameClient.getPing() * activeChar.getMoveSpeed()) / 1000;
       else if(diff > ping)
       {
           activeChar.validateLocation(1);
       }

А не проще ли проверить как это реализовано на ПТС сервере, чем городить велосипеды? Иной раз L2PHX и клиента вполне достаточно чтобы понять логику работы некоторых функций.
 

прости, 90% сборок сейчас разрабатываются на овере. мы не говорим за мусор вроде интерлюда, потому что там что игроки что админы из каменного века всё ещё не вышли, а овер уже давно лыжей назвать нельзя.

Оффтоп:

@jois, спасибо
А у Вас проблемы с ИТ хрониками? А ну да, продажи вашего ХВ всё хуже и хуже, надо же как-то клиентов тянуть из других хроник. Я вот не понимаю, какая Вам разница кто на чём сидит?
 
А не проще ли проверить как это реализовано на ПТС сервере, чем городить велосипеды? Иной раз L2PHX и клиента вполне достаточно чтобы понять логику работы некоторых функций.
как вы узнаете алгоритм генерация пути птс сервера по пакетам?
 
как вы узнаете алгоритм генерация пути птс сервера по пакетам?

А кто говорил про генерацию пути? Причём здесь она? Вопрос в асинхронности клиента и сервера. Или я тему неправильно понял?
 
А кто говорил про генерацию пути? Причём здесь она? Вопрос в асинхронности клиента и сервера. Или я тему неправильно понял?
валидацию спрашивает клиент, когда у клиента конфликт в пермещении или интервал наступил, а сервер просто коректирует. Вся суть в накоплении ошибки. Сервер валидирует не в том месте и не в то время, и получается расинхрон перемещения сервера и клиента. Клиент думает, одно, а серверу пофиг. Там валидация формул математики 1 класса distance = speed * time +- добавить и должно как железное быть. Клиент бежит сам по себе, когда сервер отправил пакет разрещающий пермещение, соль не в пинге, а во времени и скорости вычисления на стороне сервере. Формула в идеале должна быть расчитана на системы реального времени.
 
валидацию спрашивает клиент, когда у клиента конфликт в пермещении или интервал наступил, а сервер просто коректирует. Вся суть в накоплении ошибки. Сервер валидирует не в том месте и не в то время, и получается расинхрон перемещения сервера и клиента. Клиент думает, одно, а серверу пофиг. Там валидация формул математики 1 класса distance = speed * time +- добавить и должно как железное быть. Клиент бежит сам по себе, когда сервер отправил пакет разрещающий пермещение, соль не в пинге, а во времени и скорости вычисления на стороне сервере. Формула в идеале должна быть расчитана на системы реального времени.

Берём ПТС сервер на локальной машине, L2PHX и клиент.
  1. Шлём перса бежать вдаль и смотрим пакеты, регистрируем время.
  2. Потом усложняем процедуру добавив пинг клиенту. Например взять хаб на 10 МБит и включить клиент за ним. Можно запилить прокси с лютым пингом. Проверяем тоже самое.
  3. Потом иммитируем отвал клиента, так, чтобы клиент не получал пакеты с сервера. регистрируем что и когда он шлёт.
А уж потом все домыслы обретают реальные очертания. А так, это всё больно похоже на сферического коня в вакууме. Как видите не так уж и сложно.
 
А не проще ли проверить как это реализовано на ПТС сервере, чем городить велосипеды? Иной раз L2PHX и клиента вполне достаточно чтобы понять логику работы некоторых функций.
а кто сказал что оно не так работает?
 
Просто рука лицо! Вся соль в ревалидации, это не правится сферическими затычками в пакетах, если конечно валидация вообще есть. Это комплексное решение как переписыванием алгоритма валидации так и пересчета пути и к тому же корректной имплементации пакета NetPing(который кстати ни где не реализован, почти) как лаг компенсатора. На всю эту дичь что бы не швыряло и т.д. я потратил почти месяц, если кому интересно велком

Как решить проблему тебе тут ни кто не поможет, ибо так ни кто этой хрени тут по сути и не решил и не тут только.
 
А так, это всё больно похоже на сферического коня в вакууме. Как видите не так уж и сложно.
Ну так запили, в чем проблема ? Линейная алгебра + геометрия + реверс инжинир. Вообще тфу.
 
Просто рука лицо! Вся соль в ревалидации, это не правится сферическими затычками в пакетах, если конечно валидация вообще есть. Это комплексное решение как переписыванием алгоритма валидации так и пересчета пути и к тому же корректной имплементации пакета NetPing(который кстати ни где не реализован, почти) как лаг компенсатора. На всю эту дичь что бы не швыряло и т.д. я потратил почти месяц, если кому интересно велком

Как решить проблему тебе тут ни кто не поможет, ибо так ни кто этой хрени тут по сути и не решил и не тут только.
Странно, но проблема такая же и у Вас)
 
Если бы камера нормально отдалялась с первого раза получилось бы...
 
Т.е. типа это тоже самое что и на вашем видео в котором швыряет даже вперед при масс спаме MoveToPawn ?
 
Т.е. типа это тоже самое что и на вашем видео в котором швыряет даже вперед при масс спаме MoveToPawn ?
Моего видео тут нет, разве что Выше с вашего тест сервера. Первое видео я нашёл в интернете и хочу понять проблему. У вас замечена только первая часть (при клике). При спаме скиллом, всё нормально.
 
Само смещение назад может быть обусловлено исключительно клиентской частью и отображением движущегося объекта. на всех ява(почти) серверах швырят по сторонам от простого массового проклика при движении в любую точку. Суть проблемы описана выше вкратце.
 
Само смещение назад может быть обусловлено исключительно клиентской частью и отображением движущегося объекта. на всех ява серверах швырят по сторонам от простого массового проклика при движении в любую точку. Суть проблемы описана выше вкратце.
Но как видно на видео в конце (там где фикс) у человека всё нормально работает.
 
Назад
Сверху