![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#4926
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
|
![]()
Сообщение
#4927
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Остроумно, маэстро, однако делу это не поможет.
|
![]()
Сообщение
#4928
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Вопросов тут задали много, модулей построили мало (IMG:style_emoticons/kolobok_light/smile.gif) Оттуда и сарказм. Если человек хочет получить ответ на форуме, он должен правильно задать вопрос. Золотое правило общения на форумах.
Задача то какая? Тупо все животные убегают с криками "Аааа! Спасайтесь зоофил!!" И все? |
![]()
Сообщение
#4929
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Ну допустим стоит себе пасется дикая зёбра, игрок проходит рядом и она отбегает, угроза же.
|
![]()
Сообщение
#4930
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Начерти триггер, на нем определи зёбру, игрок наступил на триггер, зёбра с криками ужаса убежала. Все.
|
![]()
Сообщение
#4931
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Отбежит она разок, игрок снова подойдет, и? Есть другой вариант? Прописать в скриптах именно самой животинки реакцию на PC, например?
|
![]()
Сообщение
#4932
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
ИИ - один из самых сложных аспектов геймдева. Тебе нужен либо программист, либо попытаться найти готовое решение, например, тут в закромах или на https://neverwintervault.org/
Если хочется самому, то копать в сторону события OnHeartbeat моба и функций поиска игрока в определённом радиусе. |
![]()
Сообщение
#4933
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Да, спасибо, я на ваулте много интересного находил, буду думать.
|
![]()
Сообщение
#4934
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Залез в базу скриптов для новичков. Переработал скрипт -fenix-а за 1 минуту под твои нужды.
Скрипт ставется на слот OnPerception в св-вах зёбры. Neverwinter Script void main()
{ object oPercep = GetLastPerceived(); // последний воспринятый объект // если последний воспринятый объект был увиден и если он является игроком if ( GetLastPerceptionSeen() && GetIsPC(oPercep)) { SpeakString("Спасайся! ЗООФИЛ!!!"); //сюда вписывай свои действия, типа убежала зёбра на сто метров } } |
![]()
Сообщение
#4935
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
О! Спасибо мил человек, низкий поклон (IMG:style_emoticons/kolobok_light/rolleyes.gif)
|
![]()
Сообщение
#4936
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Появился новый вопрос, хы. Мне нужно, чтобы открывалась ветка диалога при определенном уровне, но так, чтобы не приходилось перебирать каждый классовый уровень персонажа в проверке, а то это будет некорректно работать, если игрок нескольких классов.
|
![]()
Сообщение
#4937
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Все есть в скриптах для новичков. Позавчера читал, когда писал прошлый скрипт.
|
![]()
Сообщение
#4938
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
Как оно скомпилировалось? location lActivator = GetItemActivatedTarget(); Возвращает object же. ну так, по памяти пишу... там нужно было GetItemActivatedTargetLocation() (IMG:style_emoticons/kolobok_light/smile.gif) но ведь скопмпилировалось же у него! (IMG:style_emoticons/kolobok_light/smile.gif) Цитата Можно сделать, чтобы животные дикие разбегались от игрока? используй функции, ActionMoveAwayFromLocation ActionMoveAwayFromObject в скрипте на OnPerception (примерное название) в слотах моба Вот Айван привел кусочек скрипта как раз на это событие Сообщение отредактировал Melisse - Sep 9 2017, 12:34 |
![]()
Сообщение
#4939
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
В базе скриптов есть скрипт на рубку дерева, вопрос следующий: как сделать рандомный предмет получаемый при срубе из нескольких на выбор. Я вижу как все это прописано в OnDamaged, но не знаю как правильно построить функцию рандома, сам пытался, но все через Ж.
|
![]()
Сообщение
#4940
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Функция рандома там встроена (IMG:style_emoticons/kolobok_light/smile.gif) Генерирует число в заданном диапазоне. Тебе нужно только в зависимости от числа-результата задать ресреф нужного итема.
|
![]()
Сообщение
#4941
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Да, я знаю, что она есть, но не знаю как её правильно вставить в скрипт, чтобы его не сломать.
|
![]()
Сообщение
#4942
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Что-то типа:
CODE int x = random(3) + 1; if (x == 1) { resref = "item1"; } else if (x == 2) { resref = "item2"; } else if (x == 3) { resref = "item3"; } Потом этот ресреф скормить функции создания. Писал по памяти (IMG:style_emoticons/kolobok_light/smile.gif) |
![]()
Сообщение
#4943
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Спасибо, буду ковыряться х)
А возможно сделать, чтобы ветка диалога открылась только если рядом находится плейсебл с определенным тегом/ресрефом? |
![]()
Сообщение
#4944
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
Нужно поставить в диалог на вкладку с названием "Текст проявляет при...", если у тебя русская версия тулсета Neverwinter Script int StartingConditional()
{ object oPC = GetPCSpeaker(); object oPlaceable = GetNearestObjectByTag ("ТЭГ_ОБЪЕКТА", oPC , 1); if (GetIsObjectValid(oPlaceable) && GetDistanceBetween (oPC, oPlaceable) < 30.0f) // в радиусе 30 метров от игрока { return TRUE; } return FALSE; } |
![]()
Сообщение
#4945
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Огромное спасибо, это то, что нужно!
А в совершенных действиях можно, чтобы этот ближний плейс заменился на другой? |
![]()
Сообщение
#4946
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
Попробуй это, но уверенности нет
Проверь правописание функций - потому что без тулсета, навскидку Neverwinter Script void CreatePlaceable (object oSubject) ;
void main() { object oPC = GetPCSpeaker(); object oPlaceable = GetNearestObjectByTag ("ТЭГ_ОБЪЕКТА", oPC , 1); if (GetIsObjectValid(oPlaceable)) { location lLoc = GetLocation(oPlaceable); SetLocalLocation (oPC, "lLocationPlaceable", lLoc); AssignCommand(oPC, DelayCommand(3.0f, CreatePlaceable (oPC))); DestroyObject (oPlaceable); } } void CreatePlaceable (object oSubject) { location lCreate = GetLocalLocation (oSubject , "lLocationPlaceable"); CreateObject (OBJECT_TYPE_PLACEABLE, "РЕС_РЕФ_ПЛЭЙСА_ДЛЯ_СОЗДАНИЯ", lCreate); } Сообщение отредактировал Melisse - Sep 12 2017, 16:41 |
![]()
Сообщение
#4947
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Спасибище гигантское, это работает именно так, как мне надо было! Это здорово.
|
![]()
Сообщение
#4948
|
|
Level 3 ![]() Класс: Пьяный Мастер Характер: True Neutral Раса: Человек ![]() |
Уууу, я сделал ворона с нужными мне характеристиками, но с него падают стандартные перья. Как мне от них избавиться?
|
![]()
Сообщение
#4949
|
|
Level 1 Класс: Варвар Характер: Chaotic Neutral Раса: Человек ![]() |
Всем привет, села перепроходить HOTU и столкнулась с проблемой, у меня застопорился роман. Короче, роман с Валеном и за стадию 3, то есть третий диалог, оно не идет вообще. Пыталась копаться в sav файле, нашла там нужную переменную, но половина кодировки неправильная а чем нужнооткрывать его не знаю, я открывала в ноутпаде. Порылась в редакторах сейвов, они обычно редактируют самого персонажа и переменные которые к нему привязаны, нужную найти так и не смогла. В conversation editor нашла что переменная, которая мне нужна, это ivalenstage и она должна быть равна 3, но из всего этого непонятно как она меняется, или сразу после диалога и там стоит задержка, или нужно для этого поднимать "очки влияния". Вроде делала все то же самое как в предыдущем прохождении когда все работало. Может, кто-нибудь подкинет скрипт чтобы получить нужное значение переменной или подскажет что для этого нужно в консоли написать? Так, после каждого сюжетного квеста примерно в конце локации стабильно появлялся диалог, а тут дошла до третьей главы, на всякий случай переиграла с начала 2й главы разик, так ничего и нет.
Извините, я знаю что это очень тупо, но я без понятия куда это писать. Я не могу создавать темы в форуме по самой игре, и вообще нигде. (IMG:style_emoticons/kolobok_light/unsure.gif) |
![]()
Сообщение
#4950
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Попробуйте ваш сейв переименовать в .MOD, будет возможно отредактировать вашего персонажа и переменные в тулсете.
|
![]() ![]() |
Текстовая версия | Сейчас: 26th April 2025 - 04:07 |