Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Синхронизация
#11
Map Написал:Видел такое на многих проектах, если персонаж проваливается в текстуру или падает под землю, в меню действий есть кнопка синхронизации, нажимаешь и чар синхронизируется.
Бред. Вы всегда знаете минимальную высоту, которая возможна во всем мире. В чем проблема поднимать игрока, если он пересекает этот лимит?

Warencense Написал:Значит эти многие проекты с кривым геодвижком. Опытные Java/C разработчики, которые решили заняться разработкой сервера для ММОРПГ, уже давно сделали валидацию позиции игрока (то есть если даже если чар упал, что с нормальным движком практически не происходит, то он появляется в ближайшей безопасной точке рядом с началом падения). Вроде у сира l2cccp видел Smile
Расскажите это реализации падений на серверной стороне, т.к. то говнонепотребство, которое в л2ж-сервере, либо в оверах (в СССР не знаю, но сомневаюсь, что кто-то вообще этим запаривался) - которое работает без учета скорости падения, вектора падения и других вещей.
Собственно, к чему это я про падения? Виновник торжества далеко не только геодвижек.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#12
Что ПТСы с офом дырявые в синхе и валидации координат, что явы. Ничто не изменится Wink
Ответ
#13
Ну тут не кнопку делать, а работать с геодатой и движком. Тут как не крути, если персонаж проваливается проблема на стороне сервера, не соответствии плоскости игрового мира. На крайний случай можно вычислить допустимые области, при загрузке гео. Если предел нарушен, пускать луч по Z и находить первую поверхность. Тут еще надо вычислять путь от которого идет персонаж, дельта по времени, ошибка может быть например на много этажках. Представим если персонаж бежал по пятому этажу, провалился на три этаже вниз, его может откинуть на 2 этаж или 3. Ну тут тонкости уже.. Если вы не знаете векторной алгебры и плохо разбираетесь в программировании, платите, пусть вам делаю, скопировать вставить не получится. То можно накрутить, и будете платить два раза.
Ответ
#14
Pointer*Rage Написал:Бред. Вы всегда знаете минимальную высоту, которая возможна во всем мире. В чем проблема поднимать игрока, если он пересекает этот лимит?


Расскажите это реализации падений на серверной стороне, т.к. то говнонепотребство, которое в л2ж-сервере, либо в оверах (в СССР не знаю, но сомневаюсь, что кто-то вообще этим запаривался) - которое работает без учета скорости падения, вектора падения и других вещей.
Собственно, к чему это я про падения? Виновник торжества далеко не только геодвижек.

Да я знаю, но все же зависимость от геодвига есть. В общем, можно сделать вывод, что данная кнопка в шаровых исходниках не присутствовала, ну а бесплатно ее никто не даст.
Ответ
#15
Map Написал:В том дело, что не определяет, у меня персонаж на крутых склонах, падает постоянно вниз...

Друг мой любезный , зайди на тот же lineage2.com и скинь свою тушку с склона. Проблема в том что клиент не выстилает аля isFalling мы оперируем по факту смену координат в любой плоскости. Дергать будет в любом случаи. Логика в ValidateLocation
Как по вашему происходит падение ? Визуально это происходит как падение, а по факту мы якобы меняем свой Z по типу бега, "клиент падает" быстро , а скорость у нас скажем 50. Еще остались вопросы почему дергает ? Если выпилить к херам валидацию, дергать не будет, уверяю вас, но клиенты будут летать в камера мод.
А по синхронизируйте , все буквально. Валидируйте клиент нормально и ни каких кнопок не нужно будет.

Добавлено через 8 минут
KilRoy Написал:Что ПТСы с офом дырявые в синхе и валидации координат, что явы. Ничто не изменится Wink
Это жертва, на такие баги как в B&S и т.д. и т.п. Где можно менять скорость как угодно, получив от сервера разрешение на это, скажем при падении... почти все игры так нагибали. НЦСофт решил в ладве решить через жопу, но радикально.

Добавлено через 24 минуты
Pointer*Rage Написал:Виновник торжества далеко не только геодвижек.
Пиристань плизик, это мувемент, тут жи геодвиг как Агузарова и помидор :redlol::redlol::redlol: Данные мы инкапсулируем с кротовых нор и данные координат телепортруем под средством квантового перемещения ведра.
Ответ
#16
Deazer, ну зачем же было ведро и его квантовые скачки рассекречивать, теперь все будут знать, что movement это сунуть игрока в ведро и пнуть на пару тиков по направлению heading'a.
Ответ
#17
Deazer, где мои чипсы, которые отправлялись по схеме квантовой телепортации: чипсы-ведро? Если ты не замечал, то падение происходит не просто вниз, вектор, так же, имеет небольшое смещение по X & Y. Сила по Z около 80%-90%.
Все эти дела можно вычислить заранее (если мы, внезапно, не проваливаемся сквозь текстуры конечно) и корректно обрабатывать.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Синхронизация FaintSmile 0 1,327 02-12-2011, 10:40 AM
Последний пост: FaintSmile

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)