Page 2 of 2

Re: Догон

Posted: 17.03.2014 23:44
by Hedake
drabadan wrote:
Hedake wrote:за целью, в данном случае за тем, на ком висит атака. Тоесть скрипт в первом посте ходит по следам цели, меня интересует вопрос какую процедуру надо использовать, чтобы вычислялся оптимальный путь. Например, когда цель свернула на 90 градусов, а потом еще на 90, чтобы скрипт бежал не по следам, а по оптимальному пути, то есть срезал угол.
а почему ты думаешь, что чар бежит "по следам"? Догоняющий с учетом того как меняется местоположение убегающего определяет себе конечную точку своего движения и движется к ней. Если убегающий будет менять очень часто направление движения - будет казаться, что догоняющий бежит "по следам".
по тестам видно, что бежит по следам, углы не срезает, если убегающий бежит буквой "П", то догоняющий также повторяет эту траеткторию, но можно было бы срезать углы.

Re: Догон

Posted: 17.03.2014 23:53
by drabadan
Hedake wrote:
drabadan wrote:
Hedake wrote:за целью, в данном случае за тем, на ком висит атака. Тоесть скрипт в первом посте ходит по следам цели, меня интересует вопрос какую процедуру надо использовать, чтобы вычислялся оптимальный путь. Например, когда цель свернула на 90 градусов, а потом еще на 90, чтобы скрипт бежал не по следам, а по оптимальному пути, то есть срезал угол.
а почему ты думаешь, что чар бежит "по следам"? Догоняющий с учетом того как меняется местоположение убегающего определяет себе конечную точку своего движения и движется к ней. Если убегающий будет менять очень часто направление движения - будет казаться, что догоняющий бежит "по следам".
по тестам видно, что бежит по следам, углы не срезает, если убегающий бежит буквой "П", то догоняющий также повторяет эту траеткторию, но можно было бы срезать углы.
то-есть нужно подождать пока чар добежит до нижней вершины буквы "П" а потом начать движение, или предсказать, что чар будет в точке относительно своей позиции, скажем х+3 у+3 и начать движение в туда?(*сарказм)...
Ну или пораскинуть мозгами и двигаться не в чара а за него, но если промахнулся - побежишь дальше от необходимого направления.
А хотя если на лету подхватывать направления движения, а не двигаться непосредственно то можно попробовать...
короче, все ето еффекта скорее всего никакого не даст, так шта не выноси себе мозги - пвпшь на асисте\инжекте.

Re: Догон

Posted: 18.03.2014 0:19
by Hedake
на асисте вообще догона не встречал ))) а на инже возникла загвоздка со скриптом на абилы, который я выше выкладывал

Re: Догон

Posted: 18.03.2014 9:17
by Vizit0r
двух чаров давай и параметры шарда.

Если шард будет украинский, чтоб пинг поменьше - вообще отлично. Но русский тоже пойдет.

Re: Догон

Posted: 19.02.2020 22:02
by untoha
о, оказывается не только у меня на стелсе догон медленный. жаль это никак не решилось.

Re: Догон

Posted: 22.02.2020 11:45
by Vizit0r
странно, много раз слышал обратное.

Re: Догон

Posted: 22.02.2020 13:39
by untoha
свежим взглядом пересмотрел алгоритм.
предполагаю что моем случае причина была в использовании *moveXY*() , не в самой функции, а частом ее использовании, так как pathfinding дело не тривиальное.
попробовал Step(в_нужном_направлении), ситуация не изменилась, видимо, потому что Step() ждет ответ от сервера, а вот со StepQ() бот начал очень резво бегать и задержки пропали.
видимо потому что она не ждет ответа сервера, но изза этого StepQ() срабатывает на несколько шагов больше.

Конечно *moveXY*() удобнее в плане патфайндинга, бот застревает по минимуму, а со step() он застревает почти везде. может я moveXY както не правильно использую, хз
боту нужно бежать за мной и мои Х У меняются быстро, если ждать окончания moveXY, то бот прибежит туда, где меня уже нет. дилемма.

Re: Догон

Posted: 22.02.2020 14:00
by Vizit0r
ты выбирай, тебе "удобнее" или "лучше".
GetPathArray + идешь по массиву точек, после каждого 1-2 шагов пересчитываешь маршрут и т.д.

Re: Догон

Posted: 22.02.2020 14:34
by untoha
Vizit0r wrote:ты выбирай, тебе "удобнее" или "лучше".
GetPathArray + идешь по массиву точек, после каждого 1-2 шагов пересчитываешь маршрут и т.д.
с языка снял, уже доделываю

Re: Догон

Posted: 25.09.2020 16:24
by Tomers
Народ, попробуйте поюзать:

SetRunMountTimer(0);
SetRunUnmountTimer(0);
MoveThroughNPC:=0;

были похожие проблемы, решил таким способом