Перейти к содержанию
Asterios

Admin

Administrator
  • Постов

    19 398
  • Зарегистрирован

  • Посещение

Весь контент Admin

  1. Не может быть. Игроки всем довольны? Наверное форум сломался...
  2. Радиусы откорректируем, для удобства, чтобы в руте 20 мог достать 40. Но это не совсем ошибка. По поводу пики - да, стало ближе, т.к. мы убрали технические добавки к радиусу, которые ранее были сделаны из за несовершенства движка. Так же, эти радиусы стали более точно отображаться.
  3. Зря мы эту функцию добавили, надо было оставить как раньше. Если зашел в игру, то оффтрейд просто заканчивался.
  4. Я конечно не на всех горах проверял, но похоже, что дополнительно исправилась проблема с проваливанием под землю при падении с гор. Забавно, ведь у нас не было цели это исправить, а причину этого бага я искал несколько лет, и так и не нашел
  5. Итог на сегодня: - исправлено большинство проблем с движением, различие между серверными и клиентскими координатами сведено к минимуму - исправлены проблемы с отвязыванием чаров, невозможностью сидеть и прочее - корректная обработка изменения скорости персонажа во время движения (дебафы на замедление и прочее) - исправлена скорость шага - исправлено движение в воде. Некоторые проблемы остались, но стало гораздо лучше. - как ни странно, дополнительно улучшен поиск пути. Пример - башни в фортах. Ранее, если кликать на лестницу, то чар забегал под нее. Если кликать повыше, то чар мог странным образом оббежать всю башню вокруг, и только потом забежать на нее. Теперь же, можно просто кликнуть на самый верх башни, и чар туда добежит (вероятно, не на всех башнях это сработает). Более того, ранее чар цеплялся за лестницу, визуально оставался внизу, а на самом деле забирался наверх. Теперь же, если чар зацепится, что через несколько секунд его позицию исправляет сервер. Все протестировано множество раз, надеюсь мы не пропустили никаких новых проблем. PS: Преследование при касте не проверяли, но исправлял там радиусы, должно помочь, проверьте.
  6. Еще учитывайте, что даже если никакого десинка нет, то все равно, спина у цели может оказаться не там, где кажется. Потому что любой каст или атака мгновенно разворачивает к цели. Причем, если вы начали бежать вокруг кастующего, а каст долгий, то визуально он будет поворачиваться в вашу сторону непрерывно (т.к. кастует), но на сервере он не поворачивается, а стоит лицом туда, где вы были на момент начала каста. Более того, когда он закончит каст, в клиенте он будет развернут в вашу сторону, а на сервере он останется развернутым в сторону, откуда начинал каст. И угол поворота станет правильным только тогда, когда он сделает шаг, или что-то еще скастует, но не поворачиваясь. Этим тоже займусь, давно хочу сделать разворот к цели и на сервере тоже, в реальном времени. Но прошлые опыты правильного результата не дали. Да и спорный это вопрос, ведь если во время каста он будет всегда к вам развернут, то спину будет найти невозможно даже в теории, т.к. он к вам лицом. Зато, появится шанс найти спину, если он кастует в кого-то другого. А так же, отображаемое станет действительным, что важно. Вероятно, это стоит делать только вместе с исправлением, которое позволит учитывать спину у backstab не в конце его каста, а в начале. Я должен закончить исправления и все протестировать.
  7. Если объяснить по простому: исходные коды клиента скомпилированы, собраны в виде непонятных для человека файлов. Его нельзя изменить, только какие-то отдельные кусочки, и то, это очень сложно. То, что некоторые игроки видоизменяют клиент, не значит что они смогли бы к примеру поменять там алгоритмы движения, это "закрытая" часть. Мы могли бы взять к примеру Enreal Engine 4, и сделать на его базе новый клиент. Это было бы проще, чем изменить старый. Но все равно, заняло бы пару лет работы и много денег.
  8. Расскажу о некоторых причинах рассинхронизации при движении, которые были до всех исправлений: В клиенте, при движении, персонаж где-то пол секунды (точное время еще нужно выяснить) идет шагом, и только потом разгоняется и переходит на бег. Ранее, наш движок полностью игнорировал этот факт, что вносило существенную погрешность в формулу. Т.к. мы эту разницу конечно же заметили, то когда-то давно компенсировали ее, домножив ВСЕ время движения на 1.05 (5%). Итоговый результат на длинных дистанциях получался хорошим, но был небольшой десинк в начале движения. Но если много кликать, или двигаться постоянно меняя цель но не останавливаясь, этот десинк накапливался до больших размеров. Эту проблему мы решали просто периодически корректируя итоговое положение чара (дергания и прыжки, либо ускорение/замедление движения иногда). Так же, существовал старый баг с добавлением 50мс к движению на сервере, что частично скрывало возникающие проблемы (сервер давал клиенту время добежать и не останавливал чара раньше времени), но точности местоположению чара это само собой не добавляло, и вызывало кучу других проблем. Когда я добавил понятие "разгона", т.е. шага в начале каждого движения (процесс движения делится на две части с разными скоростями), десинк пропал, но появилась другая проблема - очень сложно сдетектить ситуацию, когда персонаж уже разогнался, но вы кликнули бежать еще раз. Получалось, что сервер считал пол секунды такого движения как шаг, а в клиенте персонаж бежал, отсюда новый десинк. Особенно, это влияло на преследование одним чаром другого, когда идут постоянные начало/конец движения, по несколько раз в секунду. Итоговое различие доходило до 1000 (!!!) единиц на тестах. Это на самом деле большая проблема, и я прямо сейчас занимаюсь ее решением. Побочные эффекты, вроде отвязывания чаров, прыжков, и других поломок - это лишь мелкие баги, возникающие в процессе правок. Вы не на то обращаете внимание. Я их уже устранил (на тестовом сервере). Конечно, есть и другие причины десинка: персонаж при движении может в клиенте зацепиться за угол, или за моба, а в сервере ничего этого не происходит. На этот случай клиент иногда присылает серверу оповещение, что движение заблокировано. Но это не всегда происходит, да и не всегда помогает серверу. Этим мы тоже займемся позже, но полностью решить не получится. Так же, отдельно имеется проблема с десинком из за изменившейся во время движения скорости. Для нее уже есть решение, но займусь позже.
  9. Проблемы с отвязыванием петов/чаров и невозможностью сидеть - это все просто баги, которые мы поправим, это не так важно. Важны отзывы о текущей ситуации с движением. Раши, блинки, рассинхронизация при движении - как с этим, лучше стало?
  10. В общем, пока так играйте, вроде вполне играбельно. И опишите все замеченные проблемы. На сегодня закончил.
  11. Вроде починил мобов, и предположительно преследование при атаке/касте. Если преследование для каста не починится, значит уже завтра более детально тестить/разбираться будем. Рестарт через 10 минут. х5 на столько большой, что ему нужно очень много времени. Не смотря на все оптимизации загрузки и периодические чистки неактивных аккаунтов. 31 гигабайт база. Для сравнения, х7 всего 6.5 гб, х55 - 12 гб.
  12. Через 5 минут проверяйте снова.
  13. Еще улучшил, проверяйте. Так же, проверьте как стало с кастом, нормально ли догоняет/кастует. Раши тоже проверьте, и нужно как-то более детально разобрать, если проблема осталась. Потому что, конечная точка раша задается еще в начале каста, а не в конце. Может быть, здесь другая проблема была, то что чар мог преследовать цель на сервере, пока раш анимировался.
  14. Большинство из увиденных вами проблем существовало всегда. Просто этого всего не было видно, либо проблемы проявлялись по-другому.
  15. Значит, все уже более-менее хорошо, осталось оттюнинговать. Что тоже непростой процесс.
  16. Исправил большинство проблем. В том числе, с рашами и застреванием у стен (когда надо было выделять себя). Упреждение убрал для всех кроме петов. Через 3 часа снова проверяйте. Конечно, еще остались проблемы, но их должно стать намного меньше.
  17. На самом деле - хуже не стало. Просто я убрал валидейты, которые заставляли чара смещаться обратно при рассинхроне. Я могу их вернуть, и ряд других механизмов, которые устраняли следствия. Но лучше, постараюсь вначале исправить сами проблемы, точнее уменьшить их. За репорты спасибо, теперь понятнее.
  18. А подробнее? Я мысли читать не умею, и на скрине ничего не понятно.
  19. Вы даже не можете понять, что забегание вперед цели к рассинхрону отношения не имеет. Это упреждение, для того чтобы цель было проще догнать. Но видимо придется его отключить, т.к. ножи так и будут ныть... По поводу ШС - посмотрю, но тоже к рассинхронам отношения не имеет. Просьба сегодня больше не писать владельцам ШС, блинка, раша и всем кто имеет отношение к ножам. Жду репортов от других проф, стало ли лучше. Да, и мы даже нашли причину, но это слишком сложный вопрос, поэтому пока что отложили.
  20. Это к сожалению так и будет. Уменьшить проблему можно только убрав галочку "снижать нагрузку в фоновом режиме".
  21. 10 часов вместе с Abaddon`ом потрошили движок перемещений... надеюсь, результат вам понравится - улучшено следование петов за хозяином, в том числе он теперь ходит немного сбоку - найдена несколько причин рассинхронизации, большая часть устранена - убраны постоянные рывки при перемещении чаров - оттюнингован процесс атаки, теперь персонажи бьют не за километр, а как положено - улучшено преследование целей при атаке, проще догнать и лучше работает упреждение Но это неточно.
  22. Причину этого бага вероятнее всего исправил, но повторить его не смог на тестовом. Проверить получится только завтра утром. По поводу второго бага - пока ищу причину.
  23. А помогает ли выделить себя и нажать Esc? Это важный момент. А подробнее? Каждый раз, или иногда? И точный способ повторения нужен, здесь все очень расплывчато описано.
×
×
  • Создать...