Jump to content
Korean Random
GPCracker

Улучшенная система прицеливания / Advanced Aiming System

Recommended Posts

Я так понял что положение цели описывается вектором, что если запоминать два предыдущих вектора для

организации сглаживания дерганья маркера?

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

Share this post


Link to post

Short link
Share on other sites

Я так понял что положение цели описывается вектором, что если запоминать два предыдущих вектора для

организации сглаживания дерганья маркера?

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

 

Ну вот прислал сервер вектор1, через 1,5 сек прислал вектор2, через 0,8 сек прислал вектор3, а через 2,5 сек прислал вектор4.

 

Чего тут и как вычислять чтоб маркер не рывками двигался 1,5 сек, 0,8 сек, 2,5 сек а плавно? Считать скорость и двигать по прямой пока новые координаты от сервера не придут?

Share this post


Link to post

Short link
Share on other sites

Ну вот прислал сервер вектор1, через 1,5 сек прислал вектор2, через 0,8 сек прислал вектор3, а через 2,5 сек прислал вектор4.

 

Чего тут и как вычислять чтоб маркер не рывками двигался 1,5 сек, 0,8 сек, 2,5 сек а плавно? Считать скорость и двигать по прямой пока новые координаты от сервера не придут?

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

Вряд ли это секунды.

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

Т.е. если сервер к нашему тику не прислал новое значение, то используем предыдущее.

При захвате цели инициализируем сразу 3 вектора первоначальным полученным значением.

А дальше каждое новое полученное значение сдвигает старые.

Результат же вычисляем по 3 векторам.

Share this post


Link to post

Short link
Share on other sites

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

Вряд ли это секунды.

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

Т.е. если сервер к нашему тику не прислал новое значение, то используем предыдущее.

При захвате цели инициализируем сразу 3 вектора первоначальным полученным значением.

А дальше каждое новое полученное значение сдвигает старые.

Результат же вычисляем по 3 векторам.

 

Похоже вы ни чего не поняли. Вектор это не направленный отрезок, а матрица-столбец с тремя координатами, определяющими в пространстве положение модели танка. Сервер присылает именно такой вектор, данные приходят с задержками, есть задержка по пингу но она маленькая и есть серверная задержка, она зависит от расстояния от игрока до цели, чем расстояние больше чем дольше тайм-аут сервера. Так например на расстоянии в 700 метров задержка до 1-1,5 сек доходить может. А на расстоянии в 1000-1400 метров значки на миникарте вообще раз в 2 сек обновляться могут.

 

Так вот проблема рывков маркер в том, что движущийся танк сам рывками перемещается да еще и направление при этом меняет, вот потому маркаре перед ним как флажок на длинной палке скачек туда-сюда. Если это КВ ползет за 200 метров от вас то еще нормально будет, а если ст едет или лт на 300-500, то маркер бесполезен.

Share this post


Link to post

Short link
Share on other sites

Я так понимаю сервер с какой то определенной частотой обновляет движение засвеченных танков. Вряд ли это секунды. Если сервер редко (секунды) обновляет, то можно сделать собственный тикрейт, допустим обновлять значение трех векторов раз в 0.1 сек. Т.е. если сервер к нашему тику не прислал новое значение, то используем предыдущее. При захвате цели инициализируем сразу 3 вектора первоначальным полученным значением. А дальше каждое новое полученное значение сдвигает старые. Результат же вычисляем по 3 векторам.

Всем этим занимается движок игры, и узнать, когда получено обновление от сервера невозможно, можно лишь узнать текущий статус. А делать сallback() - это нехорошо.

Заметил одну интересную вещь: если следить за целью стволом, дерганье становится не таким сильным, плюс цель дергается 1-2 секунды после засвета, дальше более-менее стабильна.

Share this post


Link to post

Short link
Share on other sites

Заметил одну интересную вещь: если следить за целью стволом, дерганье становится не таким сильным, плюс цель дергается 1-2 секунды после засвета, дальше более-менее стабильна.

 

А все засветившиеся себя так и ведут, первые 0,5-1,5 сек рывочки, а потом плавненько идёт. Я скажу почему так. Игра весьма интересно сделано. Клиент он не просто воспроизводит данные присылаемые с сервера, нет. Клиент это урезанная копия сервера, на клиенте имеются все механизмы для игры в автономе, т.е. можно тупо сгенерить бой, зайти на танке со всеми плюшками и начинать рассекать, при этом можно еще и стрелять и хиттер пробития будет обсчитывать пробития и попадания. Именно таким клиент и был изначально, но затем полную его версию оставили на сервер, а в клиентских версиях вырезали часть механизмов заменив их на хуки, которые сидят в самом exe, получают данные с сервера и вызывают функции из питона.

 

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

 

Тут есть и плюсы и минусы, плюс конечно в том, что всё плавно и плавность не сильно пингозависима, даже при 200-250 мс всё плавно, главное чтоб лагов не было, а вот точность соответствия ситуации в клиенте с ситуацией на сервере при этом падает.

 

В математике есть аналог этому, линейная vs сплайновая интерполяция. Сплайны дают гладкую кривую, но между точками они ведь могут сильно врать.

Share this post


Link to post

Short link
Share on other sites

Так например на расстоянии в 700 метров задержка до 1-1,5 сек доходить может. А на расстоянии в 1000-1400 метров значки на миникарте вообще раз в 2 сек обновляться могут.

А есть возможность в клиенте сделать меньше период опроса? (в частности где именно в скриптах или swf например карты можно это поменять?)

Share this post


Link to post

Short link
Share on other sites

А есть возможность в клиенте сделать меньше период опроса? (в частности где именно в скриптах или swf например карты можно это поменять?)

 

Это с сервера так инфа приходит с задержками. Оптимизация типа нагрузки на сервер.

Share this post


Link to post

Short link
Share on other sites

С отключенной проверкой версии клиента работает?

 

СУ-152 с МЛ-20 играть

И на КВ-2 с шайтанкой) Edited by GPCracker
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

про проверку забыл, на арте работает вроде бы )

Проверка сделана, чтобы мод от старых патчей не пихали в новые и не писали посты типа "аа пачиму ни работаит??!11". Ибо читать народ не умеет, только нажимать большую кнопку "Скачать" (доказано неоднократным (!) повторением вопроса, ответ на который изначально был написан в шапке жирным шрифтом). А так сразу пишет, что надо обновиться. Твик с конфигом - это для тех, кто понимает, что он делает. Если мод на патч встает нормально, у него меняется версия (перекомпиляция под новый патч без изменений), мод перезаливается. Если нет, адаптируется, потом заливается.
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Проверка сделана, чтобы мод от старых патчей не пихали в новые и не писали посты типа "аа пачиму ни работаит??!11". Ибо читать народ не умеет, только нажимать большую кнопку "Скачать" (доказано неоднократным (!) повторением вопроса, ответ на который изначально был написан в шапке жирным шрифтом). А так сразу пишет, что надо обновиться. Твик с конфигом - это для тех, кто понимает, что он делает. Если мод на патч встает нормально, у него меняется версия (перекомпиляция под новый патч без изменений), мод перезаливается. Если нет, адаптируется, потом заливается.

Товарищ, не горячитесь. Мы в Вас верим и очень ждем от Вас маленькой плюшки в скором времени. Из всех модов на просторе WoT этот модик для меня является самым важным. На бревномётах с ним гораздо проще стрелять с упреждением и по целям пропавшим из засвета. Ну и просто в даль, мне кажется, с ним любая шайтан-труба лупит мама не горюй :)

Share this post


Link to post

Short link
Share on other sites

Мы в Вас верим и очень ждем от Вас маленькой плюшки в скором времени.

Плюшки будут, хватит всем, под 0.9.4 есть Альфа, вот только патч не вовремя вышел( Скорее всего обнова будет где-то в первых числах января.

Share this post


Link to post

Short link
Share on other sites

 

 

Скорее всего обнова будет где-то в первых числах января

Ох как не скоро-то... Ну что ж, придется отложить свои бревнометалки до начала января. Кстати, еще в 9.5 при автоматическом захвате цели на артиллерии место разрыва снаряда, показанное на картинке, отличалось от того, где разрыв был на самом деле. Проще говоря, стреляю в фуллового ИСа, сняряд якобы разрывается метрах в 20 от него, но в ответ я слышу не "накрыл", а "попадание" и минус 600хп. Вырубил автоматический захват, всё стало нормально

Share this post


Link to post

Short link
Share on other sites

Проще говоря, стреляю в фуллового ИСа, сняряд якобы разрывается метрах в 20 от него, но в ответ я слышу не "накрыл", а "попадание" и минус 600хп. Вырубил автоматический захват, всё стало нормально

А по подробнее? Опять проблема взрывов снаряда в воздухе?

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...