Как получить координаты обратные данным?

Ask for help

Moderators: Murderator+, Murderator

Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Как получить координаты обратные данным?

Post by Ururu »

Пример 1
Image
Получаем координату обратную данной.
Координата -2;3
Устанавливаем переменные:

Code: Select all

х3=-3
х2=-2
х1=-1
х0=0
х-1=1
х-2=2
х-3=3
у3=-3
у2=-2
у1=-1
у0=0
у-1=1
у-2=2
у-3=3

Получаем обратную координату 2;-3


************************************


Пример 2
Image

Как тут получить среднюю обратную координату? Если задано несколько координат (две, три и т.д.)
Шард Антарес
Ururu
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

Что значит "обратную координату"? Исходя из того что ты тут зарисовал достаточно обратить знаки координат.
Насчет средней вообще непонятно. ты не примеры приводи, ты смысл объясняй.
DerMeister сейчас на нейрале!
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Хочу убежать от моба в оптимальном направлении =)


З.Ы. Во что придумал =)
Определив координаты, сверять направления:
Image
Получается 24 направления.
Если несколько направлений недоступны, то проверять свободные (на наличие соседних свободных).
Только вот как с этим разобратся, если окажется что 2 направления паралельны?
Шард Антарес
Ururu
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Дык бежать в обратную сторону, чем стоит моб :)

Смотри ф-цию getWalkDir.
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Вот тебя я и ждал :)
А если несколько мобов??
Шард Антарес
Ururu
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Ururu wrote:Вот тебя я и ждал :)
А если несколько мобов??

А если несколько - то нужно подумать :)

Ты сказал от МОБА, а не от толпы - так, что не надо мне тут :wink:
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Подумал.

Представь ситуацию, что ты стоишь, вокруг тебя 8 мобов, образующих квадрат 3х3.

Какое направление будет оптимальным для убеганий?)

Мобы - на то и мобы, что от них можно убегать в любую сторону, просто не нужно подходить к ним близко.

А совсем класс будет, если мобы будут телепортироваться - тогда у тебя убегалка ваще фиг знает чего намутит :wink:
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

В том и дело. Бегу, встретил моба. Нужно отбежать в оптимальном направлении (от них) и дальше стремится в нужное направление.

З.Ы. Есть вариант конечно искать только первого моба и убегать, но это не красиво =)
Шард Антарес
Ururu
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

ну ты замутил
делаеш бота- каторого запускаеш он сам бегает, убивает, приносит денег ? :lol:

некуда ты неубежыш, будут палки, будут стены и будут другие
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Мне просто нужно пробежать через толпу шустрых мобов =)
Я уже почти оформил мвсль =)
Шард Антарес
Ururu
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

нда, ты не учел самого гавного - мобы тоже перемеаются, и следует прогнозировать это перемещение. Если считать мир уо двумерным, то чар имеет 2 степени свободы, которые образуют 8 возможных элеметнарных перемещений. Если считать "скорость" чара и моба одинакивыми, то следует обходить не мобов, а зоны их возможных элементарный перемещений. Тоесть, из равенства скоростей выходит, что следует в каждый момент времени выберать путь, обходящий не 1 клетку, а квадрат размером 3 на 3 (это, кстати, без учета того, что моб может атаковать на расстоянии).
Для случая нескольких мобов можно, в общем случае, разделить пространство на 4 зоны: непроходимую, зону неизбежного контакта с мобом, зону поражения моба, безопасную зону.
Далее, с помощью существующих и хорошо расписанных алгоритмов, стоишь траекторию (с учетов приоритета зон), и на каждом своем перемещении корректируешь её (это исходя из того, что чар - самый быстрый объект в игре, иначе чар никогда не убежит от противника и убегалка не имеет смысла).
DerMeister сейчас на нейрале!
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

как я понял можно тогда расписать весь путь на полосы, каждая полоса, это квадрат, если моб в квадрате А, то идти ерез квадрат Б.
правильно?

З.Ы. а что это за тема писать в файл статику (проходную и нет), нулями и еденицами
Шард Антарес
Ururu
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

Ururu wrote:З.Ы. а что это за тема писать в файл статику (проходную и нет), нулями и еденицами

Бинарная карта называется... чего тут непонятного?


Ururu wrote:как я понял можно тогда расписать весь путь на полосы, каждая полоса, это квадрат, если моб в квадрате А, то идти ерез квадрат Б.
правильно?


Судя по всему, ты сам не понимашь что ты хочешь получить в конечном результате.
DerMeister сейчас на нейрале!
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Я знаю что мне надо. Просто как собака, все понимаю, сказать немогу =)

А как создать такую карту (бинарную) нужно ведь map.mul читать...
Шард Антарес
Ururu
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Рассказываю идею;)
Вспомним физику... Что есть сила в геометрическом представлении?;)
Вектор... направление, которого указывает направление дествия силы, а его длина пропрциональна значению этой силы.
Так вот система уравновешена, тогда и только тогда, когда геометрическая сумма всех сил равна 0;) тобишь дает нулевой вектор.
Типерь применительно к нашему случаю;) Мы расматриваем чара как точку к которой приложены все силы, но нам не хватает 1 которая бы уравновесила бы всю систему;) именно этот вектор и покажет нам куда нужно будет бежать;) Теперь делаем упрощение, будем считать что это чар оказывает на всех монстров действие;) и все вектора будут исходить от него. Теперь что есть дилна вектора... Длина это не длина отрезка, а то на сколько опасен монстр в даный момент (учитывая его место положение с чаром и его параметры), преобразовав длины всех векторов по такому принципу и найдя последний вектор (потом его нормализовав) получаем на правление куда надо ломится;) кстати длина получившегося вектора будет также говорить на сколько опасна ситуация, если длина получилась очень большая то не факт что чар выживит;))

ПС если надо могу оформить наглядными картинками;)
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

Кому: DerMeister
Добавлено: Вс Апр 22, 2007 9:47
Тема: Re: Привет!
Привет! В открытый доступ выкладывать пока рано. Байт-карта - это массив нулей и единиц, частично генерируемый инжектовским скриптом (статика) и частично редактируемый вручную (динамика, дома). Могу сделать для тебя привейт-билд библиотеки для тестирования, с примером использования.

Сейчас я разрабатываю мап-билдер для этой библиотеки - конвертацию "на лету" статичных данных из mul-файла для преобразования в байт-карту, а в будущем планирую встроить в Стелс некий анализатор пакетов, с тем, чтобы в байт-карту подтягивались данные о динамике. Таким образом будет реализована универсальная ходилка.

Так что переходи на стелс, там скоро будит такая штука :)
DerMeister сейчас на нейрале!
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Я во втором своем посте хотел это выразить, но незнал как =)

З.Ы. Можно картинки в студию ? =)

З.З.Ы. На стесл перейду когда окошко прикрутите =)
Шард Антарес
Ururu
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

Grin wrote:Рассказываю идею;)
Вспомним физику... Что есть сила в геометрическом представлении?;)
Вектор... направление, которого указывает направление дествия силы, а его длина пропрциональна значению этой силы.
Так вот система уравновешена, тогда и только тогда, когда геометрическая сумма всех сил равна 0;) тобишь дает нулевой вектор.
Типерь применительно к нашему случаю;) Мы расматриваем чара как точку к которой приложены все силы, но нам не хватает 1 которая бы уравновесила бы всю систему;) именно этот вектор и покажет нам куда нужно будет бежать;) Теперь делаем упрощение, будем считать что это чар оказывает на всех монстров действие;) и все вектора будут исходить от него. Теперь что есть дилна вектора... Длина это не длина отрезка, а то на сколько опасен монстр в даный момент (учитывая его место положение с чаром и его параметры), преобразовав длины всех векторов по такому принципу и найдя последний вектор (потом его нормализовав) получаем на правление куда надо ломится;) кстати длина получившегося вектора будет также говорить на сколько опасна ситуация, если длина получилась очень большая то не факт что чар выживит;))

ПС если надо могу оформить наглядными картинками;)

Вот ты отжег... :) он сам не понимает чего хочет, а ты ему такое...
Тагда я могу предложить систему цетра масс... считаем имеем дискретное распределение массы в пространстве - "масса" i-того элеметнта - характеристика моба. Дальше считаем положение центра масс и пологаем, что в любой момент времени этот центр масс движется к чару с некоторой скоростью, далее рыгак архимеда и тп... уравновешиваем рычаг всеми возможными способами... Естественным выводом становится догма о том, что нужно двигаться от цетра масс с относительной скоростью >0.

Только все это бред! Легко доказать, что такие системы управления находятся вблизи точки равновесия, и при незначительном изменении параметров, можут становится неустойчивыми. (результирующий вектор может начать вращаться вокруг чара и получется фигня).
На мой взяд следует применять СУ с ОС, тоесть систему по отклонению, а не по возбуждению.
DerMeister сейчас на нейрале!
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Чем тебе ненравятся вектора? Это вполне реально, и у чара больше шансов выжить будет, нежели просто тупо ломанутся через мобов.
Шард Антарес
Ururu
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

Ururu wrote:Чем тебе ненравятся вектора? Это вполне реально, и у чара больше шансов выжить будет, нежели просто тупо ломанутся через мобов.

мде, я же написал почему... если тебе нужно тупо двигатся в противоположную сторону от "угрозы", тогда твои вектора напрямую сводятся к распределению массы в системе. ТОглько не нужно морочатся кто воздецствует... Полагаешь что ты и есть центр масс, резуьтатом вычислений будет вектор между тобой и реальным цетром масс. Дальше тупо движешься в противополоджном направлении.
ПС: http://ru.wikipedia.org/wiki/Центр_масс
Только вот система такая может становится колебательной, что будит выглядеть как идиотизм :)
DerMeister сейчас на нейрале!
Post Reply