![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#126
|
|
Level 2 ![]() Класс: Рейнджер Характер: Chaotic Good Раса: Человек ![]() |
Люди, помогите чайнику... Я тут где-то напоролся на тему где было упоминание про то как посадить перса на стул, к примеру. Но там было сказано, что скрипты x2_am_sit и еще какой-то, x2_plc_sit кажется, короче они кривые, и их надо дорабатывать. Не могли бы вы мне на пальцах объяснить, что именно с ними надо сделать? и желательно с подробными коменнтариями. А то блин, сделал две табуреточки и пенек, повесил скрипт, помучался, а перс, собака такая, не садится! Стоит около него, на панельке действий висит действие "сесть", и все!!! (IMG:style_emoticons/kolobok_light/vava.gif)
*Ушел в кому* И такой вопрос: а есть скрипт на действие "Лечь"? Чтобы и на пол, и на кровать, допустим... Я просто сейчас делаю маленький тренировочный модуль, в котором будет все включено, но при этом хочу сделать его максимально качественно и реалистично. Стиль, обстановка, нпсы уже готовы, остались эффекты, диалоги, и вот самая больная тема - скрипты... Хелп... (IMG:style_emoticons/kolobok_light/sad.gif) |
![]()
Сообщение
#127
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Сложно что то говорить если человек не понимает. Тебе надо попробовать с азов самому... Скриптинг нужен всем, если ты не рисуешь локации и больше ничего.
Лечь... Ты видел лежащего НПС в игре? |
Guest_NWNmaster_* |
![]()
Сообщение
#128
|
![]() |
BAN ME
Сообщение отредактировал NWNmaster - Aug 26 2011, 04:11 |
![]()
Сообщение
#129
|
|
Level 19 ![]() Класс: Обыватель Характер: True Neutral Раса: Дварф NWN: Контент ![]() |
Конечно можно.
Только если анимация колеса будет предварительно прописана в максе и подготовлена для обращения через скрипт. (IMG:style_emoticons/kolobok_light/biggrin.gif) |
![]()
Сообщение
#130
|
|
Level 18 ![]() Класс: Страж Тьмы Характер: True Neutral Раса: Человек МАСТЕР D&D ![]() |
|
![]()
Сообщение
#131
|
|
Level 2 ![]() Класс: Рейнджер Характер: Chaotic Good Раса: Человек ![]() |
Если бы я знал с чего начинать, то начал бы. А так, никакого руководства под руками нет, чтобы азы какие-нибудь получить... Блин... Нырять то в бездну, не зная что там ох как не хочется...
|
Guest_NWNmaster_* |
![]()
Сообщение
#132
|
![]() |
BAN ME
Сообщение отредактировал NWNmaster - Aug 26 2011, 04:11 |
![]()
Сообщение
#133
|
|
Level 2 ![]() Класс: Рейнджер Характер: Chaotic Good Раса: Человек ![]() |
Цитата Лечь... Ты видел лежащего НПС в игре? Я специально еще раз прошел игру, чтобы убедиться, что глаза меня не обманули, и понял, что лежащий нпс в игре есть. Обычно это спящие орки и багберы, в пещерах. Скрин сделать не успел, потому что они вскакивают, и хотят меня побить. (IMG:style_emoticons/kolobok_light/vava.gif) В редакторе визуальных эффектов обнаружил действие лечь. (LAYDOWN, кажется.) Нпс там берет и реально ложится, правда только на пол, но все равно прогресс. А вот скрипт не нашел. Его реально сделать? Цитата Зачем тебе скрипт если есть анимация смерти и НПС падает на пол. Не катит, мне надо чтобы нпс после того как его растолкают не сваливался с ног как пьяный, а тихо уходил и ложился обратно. Там где лежал. Цитата Если бы я знал с чего начинать, то начал бы. А так, никакого руководства под руками нет, чтобы азы какие-нибудь получить... Блин... Нырять то в бездну, не зная что там ох как не хочется... Беру свои слова обратно, прочитал вики. (IMG:style_emoticons/kolobok_light/prankster2.gif) Нырнул в бездну. Мне кто-нить объяснит, что со скиптом "сесть" делать? (IMG:style_emoticons/kolobok_light/shout.gif) Сообщение отредактировал FreemanD - Aug 16 2007, 10:17 |
![]()
Сообщение
#134
|
|
Epic Level ![]() Класс: Бард Характер: Chaotic Neutral Раса: Животное МАСТЕР Пера ![]() |
Возможно, тут помогут разобраться. Есть скрипт:
Neverwinter Script Source #include "mf_hench" #include "c_animations" void C_GoDown(object oTarget) { float fTiming; fTiming = C_CustomAnimationLength(oTarget, "laydownb"); PlayCustomAnimation(oTarget, "laydownb", 0, 1.0); DelayCommand(fTiming, C_PlayCustomAnimation(oTarget, "proneb", 1, 1.0)); } void main() { object oPoint = GetObjectByTag("WP_RIV_AWAY"); object oBoy = GetObjectByTag("RIV_NPC_YOR"); object oBoy2 = GetObjectByTag("RIV_NPC_DAN"); object oMrin = GetHenchmanByTag("DRW_HEN_MRE01"); effect eEffect = EffectSleep(); if (GetHenchValid("DRW_HEN_MRE01")) { DestroyObject(GetObjectByTag("T_MISC_TAVERN")); int i = 0; object oObject = GetObjectByTag("T_ALCO_SLEEP",i); while (GetIsObjectValid(oObject)) { DestroyObject(oObject); i++; oObject = GetObjectByTag("T_ALCO_SLEEP",i); } } else { int i = 0; object oObject = GetObjectByTag("RIV_NPC_ALR",i); while (GetIsObjectValid(oObject)) { AssignCommand(oObject, ActionDoCommand(ApplyEffectToObject(EFFECT_TYPE_SL EP, eEffect, oObject,99999.0))); C_GoDown(oObject); i++; oObject = GetObjectByTag("RIV_NPC_ALR",i); } } DelayCommand(6.0,SetCutsceneMode(GetFirstPC(),FALS )); AssignCommand(oBoy2, ClearAllActions()); AssignCommand(oBoy, ClearAllActions()); DelayCommand(0.1,AssignCommand(oBoy2, ActionForceMoveToObject(oPoint))); DelayCommand(0.1,AssignCommand(oBoy, ActionForceMoveToObject(oPoint))); DelayCommand(20.0, DestroyObject(oBoy)); DelayCommand(20.0, DestroyObject(oBoy2)); } Помимо всего прочего отвечающий за то, чтобы персы с тегом RIV_NPC_ALR лежали на полу и не двигались. Все бы хорошо, но скрипт этот работает только в пределах одной локации, в то время как "дрова" лежат на другой... Есть варианты, как это можно поправить? |
![]()
Сообщение
#135
|
|
Level 9 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек NWN: Модмейкер Рыцарская Сага ![]() |
Цитата Возможно, тут помогут разобраться. Есть скрипт: Уходя – уходи! Цитата Я не жалею что потратил столько времени на такое бесперспективное и неблагодарное дело как модульмейкинг на НВН2, но жалею, что потратил его в русском комьюнити. Оскорбив все русское комьюнити, вылив кучу грязи на модмейкеров и скриптеров - просить о помощи???… Вытри слюни и сопли, и будь мужчиной! P.S. Западло такому человеку помогать… За 3 года мог бы хоть кодами NSS научиться пользоваться… |
![]()
Сообщение
#136
|
|
Epic Level ![]() Класс: Бард Характер: Chaotic Neutral Раса: Животное МАСТЕР Пера ![]() |
Не волнуйся, милая, буржуям я такой вопрос тоже задал.
|
![]()
Сообщение
#137
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Поиск сделай через локацию и на ней ищи нужных неписей.
Neverwinter Script Source object oSelf = OBJECT_SELF; // тут укажи любой объект в нужной локе. Тег уникальный.
object oObject = GetFirstObjectInArea(GetArea(oSelf)); while (GetIsObjectValid(oObject)) { if(GetObjectType(oObject)==OBJECT_TYPE_CREATURE) { if (GetTag(oObject)== "RIV_NPC_ALR") { AssignCommand(oObject, ClearAllActions(TRUE)); AssignCommand(oObject, ActionDoCommand(ApplyEffectToObject(EFFECT_TYPE_SL P, eEffect, oObject,99999.0))); C_GoDown(oObject); } } oObject = GetNextObjectInArea(GetArea(oSelf)); } |
![]()
Сообщение
#138
|
|
Epic Level ![]() Класс: Бард Характер: Chaotic Neutral Раса: Животное МАСТЕР Пера ![]() |
Задумался над таким моментом: как в скриптах менять параметр static у предметов? Допустим есть тайная дверь, которую игрок никак не должен увидеть до момента, когда ей нужно открыться. То есть логично сделать ее до этого static, а после наступления условия - этот static снять... каким образом это сделать?
|
![]()
Сообщение
#139
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
никак.
|
![]()
Сообщение
#140
|
|
Level 11 ![]() ![]() ![]() Класс: Воин Характер: Lawful Good Раса: Человек ![]() |
Я, конечно, скрипты не так хорошо знаю, но на С++ можно изменить, например Visible( виден объект, или нет).
Выглядет все так: Имя_объекта(в НВН тег или ResRef) -> Visible = true; Так может, в НВН так: Тег\ResRef -> static = true/false; ? (IMG:style_emoticons/kolobok_light/prankster2.gif) Сообщение отредактировал Белатрис - Sep 4 2007, 13:19 |
![]()
Сообщение
#141
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Я, конечно, скрипты не так хорошо знаю, но на С++ можно изменить, например Visible( виден объект, или нет). NWScript - не C++. Если уж на то пошло, то больше похоже на C.
Выглядет все так: Имя_объекта(в НВН тег или ResRef) -> Visible = true; Так может, в НВН так: Тег\ResRef -> static = true/false; ? (IMG:style_emoticons/kolobok_light/prankster2.gif) Сообщение отредактировал virusman - Sep 4 2007, 21:45 |
![]()
Сообщение
#142
|
|
Epic Level ![]() Класс: Бард Характер: Chaotic Neutral Раса: Животное МАСТЕР Пера ![]() |
идиотия. Неужто все тайные двери в официальной кампании НВН2 - просто запертые участки стены? о.О
|
![]()
Сообщение
#143
|
|
Вечно меняющийся ![]() Класс: Монах Характер: True Neutral Раса: Человек NWN: Скриптинг [Sn] ![]() |
Не асилил что есть запертые участки стены. Но что есть тайные двери - можно посмотреть в тулсете НВН2 (точнее как они реализованы).
Если запертая дверь, будет иметь галочку "Статик", то дверь будет отображаться. Если не будет "статики", объект опять будет видим, тут тоже логики не уловил. Если не ошибаюсь, в официальной компании НВН1 тайные двери были соответствующим плейсом, со скриптом на onXB, укрытые эффектом прозрачности (невидимки). Скрипт проверял: есть ли игрок в пределах XX метров, если есть, идет проверка его навыка "Spot" - и только в том случае, если игрок обойдет заданное ДЦ, эффект прозрачности удаляется с двери, а сама она открывается. Готовый скрипт, стало быть, нужно искать в компаниях первой или второй части игры (или писать самому). |
![]()
Сообщение
#144
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
Что до статиков, то до них скриптами не добраться. Они вообще хранятся отдельно и загружаются только один раз.
P.S. Эх, а хорошо ведь было бы так: ScriptName "00door" Begin GameMode foreach (object in module as nwn2::placeable) WHERE *$1 IS DOOR with (.pop) { if (Detected(%PC%)) Static = true; } the end. P.P.S. Надо создать топик: не знаю как тут, но в нвн1 можно сделать так... |
![]()
Сообщение
#145
|
|
Epic Level ![]() Класс: Бард Характер: Chaotic Neutral Раса: Животное МАСТЕР Пера ![]() |
Цитата Если запертая дверь, будет иметь галочку "Статик", то дверь будет отображаться. Если не будет "статики", объект опять будет видим, тут тоже логики не уловил. Логика в том, что если объект static -то мы не можем выбрать его курсором и совершить с ним какие-то действия.Цитата Что до статиков, то до них скриптами не добраться. Они вообще хранятся отдельно и загружаются только один раз. Типичная ёпсидиановская идиотия. Я уж решил поступить изящно и двери просто удалить, вместо того чтобы их открывать, но выяснилось что статичные двери даже не удаляются. Придется опускаться до кретинизма вроде "неоткрываемых секретных дверей, про существование которых персонаж догадываться не должен" или дедовским способом перегораживать проходы шкафами, ящиками и камнями.
|
![]()
Сообщение
#146
|
|
Level 19 ![]() Класс: Обыватель Характер: True Neutral Раса: Дварф NWN: Контент ![]() |
У Door State есть вариант "No visible model" (он же Destroyed), которым можно воспользоваться при ситуации:
Допустим есть тайная дверь, которую игрок никак не должен увидеть до момента, когда ей нужно открыться. Вопрос в том, можно ли его менять через скрипты. Сообщение отредактировал Vhall - Sep 4 2007, 21:09 |
![]()
Сообщение
#147
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Логика в том, что если объект static -то мы не можем выбрать его курсором и совершить с ним какие-то действия. этого же эффекта можно добиться и просто не поставив галочку Статик и Активный. (IMG:style_emoticons/kolobok_light/smile.gif) У Door State есть вариант "No visible model" (он же Destroyed), которым можно воспользоваться при ситуации раньше 100 пудов можно было такое проделывать с плейсами. В нвн2 и с дверьми - я не пробовал.
|
![]()
Сообщение
#148
|
|
Level 11 ![]() Класс: Вор Характер: Neutral Evil Раса: Эльф NWN: Скриптинг [PW] Validor2 ![]() |
Цитата Если не ошибаюсь, в официальной компании НВН1 тайные двери были соответствующим плейсом, со скриптом на onXB, укрытые эффектом прозрачности (невидимки). Скрипт проверял: есть ли игрок в пределах XX метров, если есть, идет проверка его навыка "Spot" - и только в том случае, если игрок обойдет заданное ДЦ, эффект прозрачности удаляется с двери, а сама она открывается. Готовый скрипт, стало быть, нужно искать в компаниях первой или второй части игры (или писать самому). впринципе это все скриптами и без спец плейсов реализуется... рисуется тригер, у него на входе проверка спота.... если чек прошел, то в нужном месте появляется плейс типа двери, у которого на он клик стоит скрипт переноса чара в нужное место... короче тупо плейс сделаный под дверь (IMG:style_emoticons/kolobok_light/smile.gif) а так в палитре нвн2 видел какие то секретные двери, но что у них за фичи и как ими пользоваться я честно говоря не пробовал... |
![]()
Сообщение
#149
|
|
Level 18 ![]() Класс: Страж Тьмы Характер: True Neutral Раса: Человек МАСТЕР D&D ![]() |
Задумался над таким моментом: как в скриптах менять параметр static у предметов? Допустим есть тайная дверь, которую игрок никак не должен увидеть до момента, когда ей нужно открыться. То есть логично сделать ее до этого static, а после наступления условия - этот static снять... каким образом это сделать? В кампании это, вроде сделано предметами - сама секретная дверь и шкаф, который ее закрывает. Так вот этот шкаф имел static - false, collision - true. И поскольку эти двери становились видны только после надевания очков, то почему не сделалать так же? |
![]()
Сообщение
#150
|
|
Level 1 Класс: Дварф-Защитник Характер: Neutral Good Раса: Дварф ![]() |
Здравствуйте уважаемые мастера.
Вот наткнулся в скриптах на отладочную функцию: Neverwinter Script Source PrettyDebug( sOut ); PrettyDebug( "Total influence with " + GetStringByStrRef( GetCompanionNameStringRef( nCompanion )) + " = " + IntToString( nNewInfluence )); ИМХО понятно, что срабатывает она при включении отладки и выводит текст. Вопрос: 1.где и как включается этот отладочный режим. 2. куда выводиться отладочная информация(окно сообщений,экран, что нить особое...). P.S. Сорри, если вопрос нубский или написал не в том топике, прошу не бить больно (IMG:style_emoticons/kolobok_light/smile.gif) P.P.S.(поиск юзал (IMG:style_emoticons/kolobok_light/sad.gif) ) |
![]() ![]() |
Текстовая версия | Сейчас: 30th April 2025 - 01:49 |