Позиционирование
-
судя по данным поиска, тут уже неоднократно обсуждались баги с позиционированием.
http://forum.motronline.com/viewtopic.php?t=78805&highlight=%EF%EE%E7%E8%F6%E8%EE%ED%E8%F0%EE%E2%E0%ED%E8%E5
http://forum.motronline.com/viewtopic.php?t=75599&highlight=%EF%EE%E7%E8%F6%E8%EE%ED%E8%F0%EE%E2%E0%ED%E8%E5
http://forum.motronline.com/viewtopic.php?t=74617&postdays=0&postorder=asc&highlight=%EF%EE%E7%E8%F6%E8%EE%ED%E8%F0%EE%E2%E0%ED%E8%E5&start=0.многое, что там описано, продолжается и до сих пор. хотелось бы услышать ответ администрации, нормально ли это?
будет ли исправлено? если да, то когда?
з.ы.: сам сталкивался с вещами, описанными опсаном.+Когда иду через прекаст в локи, мне часто говорят что я доходил до края локи, но у меня отображалось как будто бы я нареспе, хотя по входящему дамагу было заметно, что с какого-то времени начинает очень сильно дамагать(т.к. сам дамагер, то полагаю что продвинувшись с респа, я становлюсь одиночной мишенью - для дамагеров это как красная тряпка для быка). если же удается вылезти из локи, то как правило это выглядит как дашь с респа клеток на 8 вперед( у меня на экране).
Ну и по мобам. качаясь, очень часто мобы дашатся через стенки, причем такие, что обходить их очень далеко. иногда моб отображается в одном месте, наводишься на него - ничего не происходит, если подойти вплотную - он очень быстро пролетает до того места, где он был на самом деле. в лабе 3 такие даши как правило могут привести к смертям, т.к. мобы дашатся не только от чаров, но и к ним откуда-нибудь из близого места, но ограниченного от чаров непроходимой стенкой. -
Игра идёт по UDP протоколу, как и большинство онлайновых игр. Главное отличие от TCP - не гарантируется правильность и своевременность доставки пакета. Это означает, что при плохом соединении наблюдается рассинхронизация того что происходит у тебя (то есть отображается) и того, что на сервере(то есть считается и посылается другим). Кроме как сменить провайдера никакого другого решения нет, ибо это один из ключевых моментов работы большинства онлайновых игр.
-
UgluskR, это не только у меня... я вроде бы объяснил.
-
Я тоже объяснил. Это у всех всегда. Только по разному проявляется. Причём поменять всё можно только переписыванием схемы взаимодействия сервера с клиентом, то есть полного изменения базовой архитектуры игры, что, во-первых, делать никто не будет (то бишь непосредственно разработчик) из-за коллоссальных затрат, а во-вторых проблема всё равно останется, изменится только её проявление. А единственное решение избежать проблему - перевод на TCP протокол, вызовет не проблемы с отображением позиционирования, а постояные дисконекты и стояние на месте с последующим перемещением на 1!!! клетку вместо положеных 8, что будет ещё хуже. "Из двух зол выбирают меньшее".
-
UgluskR, тогда почему, скажем, год назад таких багов не было?
-
UDP пакеты тут совершенно не при чём.
Если персонаж начал перемещение на соседнюю клетку и в пути клиент получил пакет с командой отрисовки анимации (получение урона, действие каста) то эта анимация остановит персонажа,хотя на сервере будет считаться что персонаж на следующую клетку всё же перешел.
Естественно это приводит к глюкам в прекастах,когда ты начинаешь двигаться и вдруг рядом падает 20+ метеоров Это ошибка клиента а не сервера. Пишите в Гравити ) -
Это как раз и есть специфика работы почти всех онлайновых игр, так как по-умолчанию считается что у тебя нестабильное соединение и клиент никогда не прав, в отличии от сервера. Из багов с позиционированием по-сути остались только прыгающие мобы через препятствия и укусы мобов через фаервол, а всё остальное так и должно быть...
-
и все же хотелось бы услышать ответ администрации :? .
UgluskR, ты судишь только со стороны сага. -
Я сужу со стороны программиста клиент/сервер приложений
-
UgluskR, раньше такого небыло
Раньше был обратный баг, когда тебе рисуется что ты стоишь за локи, а в реале ты в нём или ан респе) -
UgluskR, протокол передачи тут непричем. Перевод на TCP глупость и никакого результата не даст. Если судить по твоей логике, то из-за UDP протокола почти всегда наблюдались бы проблемы. Проблемы же наблюдаются только при определенных условиях или в определенных местах. Рассинхронизация происходит по другим причинам. Самая главная в том, что мы играем на эмуляторе, а эмулятор и клиент писали совершенно разные люди (намек на различные задержки после скиллов, механика движения мобов и т.д.).
Убрать данный эффект полностью не удасттся как минимум потому, что в эмуляторе не удастся достичь нужного взаимодействия сервера с клиентом. Хотя некоторые баги убрать возможно и насоклько мне известно, работа над этим постоянно ведется. -
UgluskR, перед тем как писать глупости проверял бы что пишешь. Ragnarok Online не использует протокол UDP. Соединение клиент-сервер происходит по протоколу TCP, который гарантирует и целостность и порядок и доставку пакетов.
А ошибки позиционирования происходят по уже описанным причинам - остановка персонажа анимацией, некорректный просчет клиентом действий моба и иных несоответсвий клиента и сервера.