Войти на сайт

Авторизация, ждите ...
×

ТЕМА: Самостоятельные NPC - кто какие знает подходы?

Самостоятельные NPC - кто какие знает подходы? 9 года 4 мес. назад #76433

  • tvorimvsevmeste
  • tvorimvsevmeste аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 250
  • Спасибо получено: 50
Хочу сделать в игре стратегические элементы. Кто знает, как заставить NPC реагировать не только на Героя, но и на других NPC? Как при этом с тормозами, и от чего они происходят?
Поживем — увидим,
доживем — узнаем,
переживем — научимся…
Администратор запретил публиковать записи гостям.

Самостоятельные NPC - кто какие знает подходы? 9 года 4 мес. назад #76439

  • zmeelov66
  • zmeelov66 аватар
  • Вне сайта
  • Светлый дракон
  • Патологический бездельник ^_^
  • Сообщений: 504
  • Спасибо получено: 369
  • Проект месяца 3 место2 место Готв
Ну, собственно, есть один способ.
На последней странице команд, в правом столбце, сверху, есть такая команда как "узнать местоположение" или как-то так.Там можно получить данные об ID тайла, номере региона и (о чудо!) ID NPC.Итак, для этого надо открыть эту самую команду и либо отметить место куда может подойти НПС на карте(их может быть несколько, так что надо несколько разных команд, соответственно с разными координатами), либо, если НПС с которым должны контактировать, сам перемещается, надо получить данные о его координатах, приплюсовать и отнять по единице(зависимо от того какой тайл на наличие НПС мы хотим проверить) и задать эти переменные в качаестве координат в команде "узнать местоположение"(да, да, там есть такая функция).Присваем значение ID НПС отдельной переменной и если оно не равно нулю, то происходит взаимодействие.Так же если между разными НПС происходит разное взаимодействие, то можно создать разные условия.К примеру если переменная "ID НПС" = 3, и нам известно, что это какой-то торговец, то НПС с ним торгует, а если ID = 4, то это монстр, которого НПС забьет.Естественно если ID равен 0, в этом месте нет никакого события.
Надеюсь, ты понял о чем я))))
Последнее редактирование: 9 года 4 мес. назад от zmeelov66.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: poca

Самостоятельные NPC - кто какие знает подходы? 9 года 4 мес. назад #76440

  • Sypherot
  • Sypherot аватар
  • Вне сайта
  • Заблокирован
  • Сообщений: 1239
  • Спасибо получено: 1044
  • 2 место 2 место ГотвПроект месяца 2 местоЗа 3 место на конкурсе маппингаДаритель СтимкеяПроект месяца 3 местоОраторПроект месяца 1 местоПаладин
zmeelov66 пишет:
Ну, собственно, есть один способ.
На последней странице команд, в правом столбце, сверху, есть такая команда как "узнать местоположение" или как-то так.Там можно получить данные об ID тайла, номере региона и (о чудо!) ID NPC.Итак, для этого надо открыть эту самую команду и либо отметить место куда может подойти НПС на карте(их может быть несколько, так что надо несколько разных команд, соответственно с разными координатами), либо, если НПС с которым должны контактировать, сам перемещается, надо получить данные о его координатах, приплюсовать и отнять по единице(зависимо от того какой тайл на наличие НПС мы хотим проверить) и задать эти переменные в качаестве координат в команде "узнать местоположение"(да, да, там есть такая функция).Присваем значение ID НПС отдельной переменной и если оно не равно нулю, то происходит взаимодействие.Так же если между разными НПС происходит разное взаимодействие, то можно создать разные условия.К примеру если переменная "ID НПС" = 3, и нам известно, что это какой-то торговец, то НПС с ним торгует, а если ID = 4, то это монстр, которого НПС забьет.Естественно если ID равен 0, в этом месте нет никакого события.
Надеюсь, ты понял о чем я))))
В ХР, насколько я помню, такой команды нет вообще. Это раз.
Два: предлагаемый тобой алгоритм, скорее всего, придется пилить для каждой неписи, что, как минимум, долго и муторно.
Всего хорошего, и спасибо за рыбу
Администратор запретил публиковать записи гостям.

Самостоятельные NPC - кто какие знает подходы? 9 года 4 мес. назад #76441

  • zmeelov66
  • zmeelov66 аватар
  • Вне сайта
  • Светлый дракон
  • Патологический бездельник ^_^
  • Сообщений: 504
  • Спасибо получено: 369
  • Проект месяца 3 место2 место Готв
Сиф, а что копипаст нынче утром отменили?Надо всего-то поменять проверяемые координаты, а если их выщитывать переменными так вообще ничего не надо.Разве что реакция может быть иногда разной, зависимо от вида неписи, но блин, надо всего-то рассмотреть возможные взаимодействия и для каждого вида неписи придумать свои.А потом снова копипаст)))
Там ведь не по одной неписи каждого типа, и типов не может быть слишком много.
И вообще, чего ты хочешь?В мукере любой алгоритм выходящий за рамки элементарных команд можно назвать муторным.К тому же это единственный вменяемый вариант.
Хотя если ты предложишь выщитывать расстояние между всеми НПС и если разница равно 1 включать взаимодействие - ради Бога xD)))))
Администратор запретил публиковать записи гостям.
Модераторы: NeKotZima
Время создания страницы: 0.190 секунд