| Yoko http://forum.yoko.com.ua/ |
|
| Как получить координаты обратные данным? http://forum.yoko.com.ua/viewtopic.php?f=3&t=11980 |
Page 1 of 2 |
| Author: | Ururu [ 2007-05-20 14:29:20 ] |
| Post subject: | Как получить координаты обратные данным? |
Пример 1
Получаем координату обратную данной. Координата -2;3 Устанавливаем переменные: Code: х3=-3 Получаем обратную координату 2;-3 ************************************ Пример 2
Как тут получить среднюю обратную координату? Если задано несколько координат (две, три и т.д.) |
|
| Author: | DerMeister =) [ 2007-05-20 14:37:38 ] |
| Post subject: | |
Что значит "обратную координату"? Исходя из того что ты тут зарисовал достаточно обратить знаки координат. Насчет средней вообще непонятно. ты не примеры приводи, ты смысл объясняй. |
|
| Author: | Ururu [ 2007-05-20 14:50:01 ] |
| Post subject: | |
Хочу убежать от моба в оптимальном направлении =) З.Ы. Во что придумал =) Определив координаты, сверять направления:
Получается 24 направления. Если несколько направлений недоступны, то проверять свободные (на наличие соседних свободных). Только вот как с этим разобратся, если окажется что 2 направления паралельны? |
|
| Author: | Destruction [ 2007-05-20 15:20:21 ] |
| Post subject: | |
Дык бежать в обратную сторону, чем стоит моб Смотри ф-цию getWalkDir. |
|
| Author: | Ururu [ 2007-05-20 15:21:06 ] |
| Post subject: | |
Вот тебя я и ждал А если несколько мобов?? |
|
| Author: | Destruction [ 2007-05-20 15:22:23 ] |
| Post subject: | |
Ururu wrote: Вот тебя я и ждал
А если несколько мобов?? А если несколько - то нужно подумать Ты сказал от МОБА, а не от толпы - так, что не надо мне тут |
|
| Author: | Destruction [ 2007-05-20 15:24:14 ] |
| Post subject: | |
Подумал. Представь ситуацию, что ты стоишь, вокруг тебя 8 мобов, образующих квадрат 3х3. Какое направление будет оптимальным для убеганий?) Мобы - на то и мобы, что от них можно убегать в любую сторону, просто не нужно подходить к ним близко. А совсем класс будет, если мобы будут телепортироваться - тогда у тебя убегалка ваще фиг знает чего намутит |
|
| Author: | Ururu [ 2007-05-20 15:26:04 ] |
| Post subject: | |
В том и дело. Бегу, встретил моба. Нужно отбежать в оптимальном направлении (от них) и дальше стремится в нужное направление. З.Ы. Есть вариант конечно искать только первого моба и убегать, но это не красиво =) |
|
| Author: | Nmy [ 2007-05-20 15:56:39 ] |
| Post subject: | |
ну ты замутил делаеш бота- каторого запускаеш он сам бегает, убивает, приносит денег ? некуда ты неубежыш, будут палки, будут стены и будут другие |
|
| Author: | Ururu [ 2007-05-20 16:11:24 ] |
| Post subject: | |
Мне просто нужно пробежать через толпу шустрых мобов =) Я уже почти оформил мвсль =) |
|
| Author: | DerMeister =) [ 2007-05-20 16:17:40 ] |
| Post subject: | |
нда, ты не учел самого гавного - мобы тоже перемеаются, и следует прогнозировать это перемещение. Если считать мир уо двумерным, то чар имеет 2 степени свободы, которые образуют 8 возможных элеметнарных перемещений. Если считать "скорость" чара и моба одинакивыми, то следует обходить не мобов, а зоны их возможных элементарный перемещений. Тоесть, из равенства скоростей выходит, что следует в каждый момент времени выберать путь, обходящий не 1 клетку, а квадрат размером 3 на 3 (это, кстати, без учета того, что моб может атаковать на расстоянии). Для случая нескольких мобов можно, в общем случае, разделить пространство на 4 зоны: непроходимую, зону неизбежного контакта с мобом, зону поражения моба, безопасную зону. Далее, с помощью существующих и хорошо расписанных алгоритмов, стоишь траекторию (с учетов приоритета зон), и на каждом своем перемещении корректируешь её (это исходя из того, что чар - самый быстрый объект в игре, иначе чар никогда не убежит от противника и убегалка не имеет смысла). |
|
| Author: | Ururu [ 2007-05-20 16:37:08 ] |
| Post subject: | |
как я понял можно тогда расписать весь путь на полосы, каждая полоса, это квадрат, если моб в квадрате А, то идти ерез квадрат Б. правильно? З.Ы. а что это за тема писать в файл статику (проходную и нет), нулями и еденицами |
|
| Author: | DerMeister =) [ 2007-05-20 17:44:54 ] |
| Post subject: | |
Ururu wrote: З.Ы. а что это за тема писать в файл статику (проходную и нет), нулями и еденицами Бинарная карта называется... чего тут непонятного? Ururu wrote: как я понял можно тогда расписать весь путь на полосы, каждая полоса, это квадрат, если моб в квадрате А, то идти ерез квадрат Б.
правильно? Судя по всему, ты сам не понимашь что ты хочешь получить в конечном результате. |
|
| Author: | Ururu [ 2007-05-20 19:46:31 ] |
| Post subject: | |
Я знаю что мне надо. Просто как собака, все понимаю, сказать немогу =) А как создать такую карту (бинарную) нужно ведь map.mul читать... |
|
| Author: | Grin [ 2007-05-20 20:13:21 ] |
| Post subject: | |
Рассказываю идею;) Вспомним физику... Что есть сила в геометрическом представлении?;) Вектор... направление, которого указывает направление дествия силы, а его длина пропрциональна значению этой силы. Так вот система уравновешена, тогда и только тогда, когда геометрическая сумма всех сил равна 0;) тобишь дает нулевой вектор. Типерь применительно к нашему случаю;) Мы расматриваем чара как точку к которой приложены все силы, но нам не хватает 1 которая бы уравновесила бы всю систему;) именно этот вектор и покажет нам куда нужно будет бежать;) Теперь делаем упрощение, будем считать что это чар оказывает на всех монстров действие;) и все вектора будут исходить от него. Теперь что есть дилна вектора... Длина это не длина отрезка, а то на сколько опасен монстр в даный момент (учитывая его место положение с чаром и его параметры), преобразовав длины всех векторов по такому принципу и найдя последний вектор (потом его нормализовав) получаем на правление куда надо ломится;) кстати длина получившегося вектора будет также говорить на сколько опасна ситуация, если длина получилась очень большая то не факт что чар выживит;)) ПС если надо могу оформить наглядными картинками;) |
|
| Author: | DerMeister =) [ 2007-05-20 20:15:22 ] |
| Post subject: | |
Quote: Кому: DerMeister
Добавлено: Вс Апр 22, 2007 9:47 Тема: Re: Привет! Привет! В открытый доступ выкладывать пока рано. Байт-карта - это массив нулей и единиц, частично генерируемый инжектовским скриптом (статика) и частично редактируемый вручную (динамика, дома). Могу сделать для тебя привейт-билд библиотеки для тестирования, с примером использования. Сейчас я разрабатываю мап-билдер для этой библиотеки - конвертацию "на лету" статичных данных из mul-файла для преобразования в байт-карту, а в будущем планирую встроить в Стелс некий анализатор пакетов, с тем, чтобы в байт-карту подтягивались данные о динамике. Таким образом будет реализована универсальная ходилка. Так что переходи на стелс, там скоро будит такая штука |
|
| Author: | Ururu [ 2007-05-20 20:25:44 ] |
| Post subject: | |
Я во втором своем посте хотел это выразить, но незнал как =) З.Ы. Можно картинки в студию ? =) З.З.Ы. На стесл перейду когда окошко прикрутите =) |
|
| Author: | DerMeister =) [ 2007-05-20 20:28:55 ] |
| Post subject: | |
Grin wrote: Рассказываю идею;)
Вспомним физику... Что есть сила в геометрическом представлении?;) Вектор... направление, которого указывает направление дествия силы, а его длина пропрциональна значению этой силы. Так вот система уравновешена, тогда и только тогда, когда геометрическая сумма всех сил равна 0;) тобишь дает нулевой вектор. Типерь применительно к нашему случаю;) Мы расматриваем чара как точку к которой приложены все силы, но нам не хватает 1 которая бы уравновесила бы всю систему;) именно этот вектор и покажет нам куда нужно будет бежать;) Теперь делаем упрощение, будем считать что это чар оказывает на всех монстров действие;) и все вектора будут исходить от него. Теперь что есть дилна вектора... Длина это не длина отрезка, а то на сколько опасен монстр в даный момент (учитывая его место положение с чаром и его параметры), преобразовав длины всех векторов по такому принципу и найдя последний вектор (потом его нормализовав) получаем на правление куда надо ломится;) кстати длина получившегося вектора будет также говорить на сколько опасна ситуация, если длина получилась очень большая то не факт что чар выживит;)) ПС если надо могу оформить наглядными картинками;) Вот ты отжег... Тагда я могу предложить систему цетра масс... считаем имеем дискретное распределение массы в пространстве - "масса" i-того элеметнта - характеристика моба. Дальше считаем положение центра масс и пологаем, что в любой момент времени этот центр масс движется к чару с некоторой скоростью, далее рыгак архимеда и тп... уравновешиваем рычаг всеми возможными способами... Естественным выводом становится догма о том, что нужно двигаться от цетра масс с относительной скоростью >0. Только все это бред! Легко доказать, что такие системы управления находятся вблизи точки равновесия, и при незначительном изменении параметров, можут становится неустойчивыми. (результирующий вектор может начать вращаться вокруг чара и получется фигня). На мой взяд следует применять СУ с ОС, тоесть систему по отклонению, а не по возбуждению. |
|
| Author: | Ururu [ 2007-05-20 20:33:30 ] |
| Post subject: | |
Чем тебе ненравятся вектора? Это вполне реально, и у чара больше шансов выжить будет, нежели просто тупо ломанутся через мобов. |
|
| Author: | DerMeister =) [ 2007-05-20 20:40:49 ] |
| Post subject: | |
Ururu wrote: Чем тебе ненравятся вектора? Это вполне реально, и у чара больше шансов выжить будет, нежели просто тупо ломанутся через мобов.
мде, я же написал почему... если тебе нужно тупо двигатся в противоположную сторону от "угрозы", тогда твои вектора напрямую сводятся к распределению массы в системе. ТОглько не нужно морочатся кто воздецствует... Полагаешь что ты и есть центр масс, резуьтатом вычислений будет вектор между тобой и реальным цетром масс. Дальше тупо движешься в противополоджном направлении. ПС: http://ru.wikipedia.org/wiki/Центр_масс Только вот система такая может становится колебательной, что будит выглядеть как идиотизм |
|
| Page 1 of 2 | All times are UTC+02:00 |
| Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |
|