Город Мастеров
IPB

Здравствуйте, гость ( Вход | Регистрация )

 Правила этого форума ПРАВИЛА РАЗДЕЛА
14 страниц V  « < 4 5 6 7 8 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты: Все вопросы, Алгоритмы, оптимизация, особености и хитрости в скриптинге
FreemanD
сообщение Aug 10 2007, 11:33
Сообщение #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)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Aug 11 2007, 00:04
Сообщение #127


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Сложно что то говорить если человек не понимает. Тебе надо попробовать с азов самому... Скриптинг нужен всем, если ты не рисуешь локации и больше ничего.

Лечь... Ты видел лежащего НПС в игре?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Guest_NWNmaster_*
сообщение Aug 12 2007, 15:13
Сообщение #128








BAN ME

Сообщение отредактировал NWNmaster - Aug 26 2011, 04:11
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Aug 12 2007, 15:33
Сообщение #129


Level 19
Иконки Групп

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



Конечно можно.
Только если анимация колеса будет предварительно прописана в максе и подготовлена для обращения через скрипт. (IMG:style_emoticons/kolobok_light/biggrin.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Griffon
сообщение Aug 13 2007, 08:54
Сообщение #130


Level 18
Иконки Групп

Класс: Страж Тьмы
Характер: True Neutral
Раса: Человек
МАСТЕР D&D



Цитата(FreemanD @ Aug 10 2007, 12:33) *
вопрос: а есть скрипт на действие "Лечь

Зачем тебе скрипт если есть анимация смерти и НПС падает на пол.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
FreemanD
сообщение Aug 13 2007, 11:41
Сообщение #131


Level 2
*

Класс: Рейнджер
Характер: Chaotic Good
Раса: Человек



Если бы я знал с чего начинать, то начал бы. А так, никакого руководства под руками нет, чтобы азы какие-нибудь получить... Блин... Нырять то в бездну, не зная что там ох как не хочется...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Guest_NWNmaster_*
сообщение Aug 13 2007, 13:10
Сообщение #132








BAN ME

Сообщение отредактировал NWNmaster - Aug 26 2011, 04:11
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
FreemanD
сообщение Aug 16 2007, 10:14
Сообщение #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
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Валеско
сообщение Aug 23 2007, 20:05
Сообщение #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 лежали на полу и не двигались. Все бы хорошо, но скрипт этот работает только в пределах одной локации, в то время как "дрова" лежат на другой... Есть варианты, как это можно поправить?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение Aug 24 2007, 06:05
Сообщение #135


Level 9
Иконки Групп

Класс: Обыватель
Характер: Lawful Good
Раса: Человек
NWN: Модмейкер
Рыцарская Сага



Цитата
Возможно, тут помогут разобраться. Есть скрипт:


Уходя – уходи!

Цитата
Я не жалею что потратил столько времени на такое бесперспективное и неблагодарное дело как модульмейкинг на НВН2, но жалею, что потратил его в русском комьюнити.

Оскорбив все русское комьюнити, вылив кучу грязи на модмейкеров и скриптеров - просить о помощи???… Вытри слюни и сопли, и будь мужчиной!
P.S. Западло такому человеку помогать… За 3 года мог бы хоть кодами NSS научиться пользоваться…
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Валеско
сообщение Aug 24 2007, 06:34
Сообщение #136


Epic Level
Иконки Групп

Класс: Бард
Характер: Chaotic Neutral
Раса: Животное
МАСТЕР Пера



Не волнуйся, милая, буржуям я такой вопрос тоже задал.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Aug 24 2007, 06:58
Сообщение #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));
    }
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Валеско
сообщение Sep 4 2007, 10:12
Сообщение #138


Epic Level
Иконки Групп

Класс: Бард
Характер: Chaotic Neutral
Раса: Животное
МАСТЕР Пера



Задумался над таким моментом: как в скриптах менять параметр static у предметов? Допустим есть тайная дверь, которую игрок никак не должен увидеть до момента, когда ей нужно открыться. То есть логично сделать ее до этого static, а после наступления условия - этот static снять... каким образом это сделать?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Sep 4 2007, 12:23
Сообщение #139


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



никак.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Белатрис
сообщение Sep 4 2007, 13:19
Сообщение #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
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
virusman
сообщение Sep 4 2007, 13:44
Сообщение #141


Level 17
Иконки Групп

Класс: Волшебник
Характер: Neutral Good
Раса: Человек
NWN: Скриптинг [PW]
Axistown SR 1.9
NWNX



Цитата(Белатрис @ Sep 4 2007, 14:19) *
Я, конечно, скрипты не так хорошо знаю, но на С++ можно изменить, например Visible( виден объект, или нет).
Выглядет все так:
Имя_объекта(в НВН тег или ResRef) -> Visible = true;
Так может, в НВН так:
Тег\ResRef -> static = true/false; ? (IMG:style_emoticons/kolobok_light/prankster2.gif)
NWScript - не C++. Если уж на то пошло, то больше похоже на C.

Сообщение отредактировал virusman - Sep 4 2007, 21:45
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Валеско
сообщение Sep 4 2007, 13:57
Сообщение #142


Epic Level
Иконки Групп

Класс: Бард
Характер: Chaotic Neutral
Раса: Животное
МАСТЕР Пера



идиотия. Неужто все тайные двери в официальной кампании НВН2 - просто запертые участки стены? о.О
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Sep 4 2007, 14:43
Сообщение #143


Вечно меняющийся
Иконки Групп

Класс: Монах
Характер: True Neutral
Раса: Человек
NWN: Скриптинг [Sn]



Не асилил что есть запертые участки стены. Но что есть тайные двери - можно посмотреть в тулсете НВН2 (точнее как они реализованы).

Если запертая дверь, будет иметь галочку "Статик", то дверь будет отображаться. Если не будет "статики", объект опять будет видим, тут тоже логики не уловил.

Если не ошибаюсь, в официальной компании НВН1 тайные двери были соответствующим плейсом, со скриптом на onXB, укрытые эффектом прозрачности (невидимки). Скрипт проверял: есть ли игрок в пределах XX метров, если есть, идет проверка его навыка "Spot" - и только в том случае, если игрок обойдет заданное ДЦ, эффект прозрачности удаляется с двери, а сама она открывается. Готовый скрипт, стало быть, нужно искать в компаниях первой или второй части игры (или писать самому).
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
azathoth
сообщение Sep 4 2007, 15:57
Сообщение #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 можно сделать так...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Валеско
сообщение Sep 4 2007, 16:17
Сообщение #145


Epic Level
Иконки Групп

Класс: Бард
Характер: Chaotic Neutral
Раса: Животное
МАСТЕР Пера



Цитата
Если запертая дверь, будет иметь галочку "Статик", то дверь будет отображаться. Если не будет "статики", объект опять будет видим, тут тоже логики не уловил.
Логика в том, что если объект static -то мы не можем выбрать его курсором и совершить с ним какие-то действия.
Цитата
Что до статиков, то до них скриптами не добраться. Они вообще хранятся отдельно и загружаются только один раз.
Типичная ёпсидиановская идиотия. Я уж решил поступить изящно и двери просто удалить, вместо того чтобы их открывать, но выяснилось что статичные двери даже не удаляются. Придется опускаться до кретинизма вроде "неоткрываемых секретных дверей, про существование которых персонаж догадываться не должен" или дедовским способом перегораживать проходы шкафами, ящиками и камнями.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Sep 4 2007, 19:44
Сообщение #146


Level 19
Иконки Групп

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



У Door State есть вариант "No visible model" (он же Destroyed), которым можно воспользоваться при ситуации:
QUOTE(Валеско @ Sep 4 2007, 11:12) *
Допустим есть тайная дверь, которую игрок никак не должен увидеть до момента, когда ей нужно открыться.

Вопрос в том, можно ли его менять через скрипты.

Сообщение отредактировал Vhall - Sep 4 2007, 21:09
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Sep 5 2007, 08:22
Сообщение #147


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата(Валеско @ Sep 4 2007, 17:17) *
Логика в том, что если объект static -то мы не можем выбрать его курсором и совершить с ним какие-то действия.
этого же эффекта можно добиться и просто не поставив галочку Статик и Активный. (IMG:style_emoticons/kolobok_light/smile.gif)
Цитата(Vhall @ Sep 4 2007, 20:44) *
У Door State есть вариант "No visible model" (он же Destroyed), которым можно воспользоваться при ситуации
раньше 100 пудов можно было такое проделывать с плейсами. В нвн2 и с дверьми - я не пробовал.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vanes
сообщение Sep 5 2007, 10:53
Сообщение #148


Level 11
Иконки Групп

Класс: Вор
Характер: Neutral Evil
Раса: Эльф
NWN: Скриптинг [PW]
Validor2



Цитата
Если не ошибаюсь, в официальной компании НВН1 тайные двери были соответствующим плейсом, со скриптом на onXB, укрытые эффектом прозрачности (невидимки). Скрипт проверял: есть ли игрок в пределах XX метров, если есть, идет проверка его навыка "Spot" - и только в том случае, если игрок обойдет заданное ДЦ, эффект прозрачности удаляется с двери, а сама она открывается. Готовый скрипт, стало быть, нужно искать в компаниях первой или второй части игры (или писать самому).

впринципе это все скриптами и без спец плейсов реализуется...
рисуется тригер, у него на входе проверка спота.... если чек прошел, то в нужном месте появляется плейс типа двери, у которого на он клик стоит скрипт переноса чара в нужное место... короче тупо плейс сделаный под дверь (IMG:style_emoticons/kolobok_light/smile.gif)

а так в палитре нвн2 видел какие то секретные двери, но что у них за фичи и как ими пользоваться я честно говоря не пробовал...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Griffon
сообщение Sep 5 2007, 14:38
Сообщение #149


Level 18
Иконки Групп

Класс: Страж Тьмы
Характер: True Neutral
Раса: Человек
МАСТЕР D&D



Цитата(Валеско @ Sep 4 2007, 11:12) *
Задумался над таким моментом: как в скриптах менять параметр static у предметов? Допустим есть тайная дверь, которую игрок никак не должен увидеть до момента, когда ей нужно открыться. То есть логично сделать ее до этого static, а после наступления условия - этот static снять... каким образом это сделать?


В кампании это, вроде сделано предметами - сама секретная дверь и шкаф, который ее закрывает. Так вот этот шкаф имел static - false, collision - true. И поскольку эти двери становились видны только после надевания очков, то почему не сделалать так же?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
audun
сообщение Dec 7 2007, 20:37
Сообщение #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) )
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

14 страниц V  « < 4 5 6 7 8 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 25th April 2024 - 01:52