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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 129 130 131 132 133 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Griffon
сообщение Apr 1 2010, 13:36
Сообщение #3246


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

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



GoOfs, на nwvault.ign.com, правда все на английском.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
GoOfs
сообщение Apr 5 2010, 18:17
Сообщение #3247


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Neverwinter Script
void main()
{
object oWP = GetNearestObjectByTag("Point_"+GetTag(OBJECT_SELF));
object oPC = GetFirstPC();
object oSelf = OBJECT_SELF;
int iFIRST_TIME = GetLocalInt (oSelf, "FIRST_TIME");

if (iFIRST_TIME = 1)
{
AssignCommand(oSelf, ActionMoveToObject(oPC, TRUE, 0.1));
AssignCommand(oSelf, ActionStartConversation(oPC, "111", FALSE, FALSE));
AssignCommand(oSelf, ActionWait(15.0));
SetLocalInt (oSelf,"FIRS_TIME", 0);
}
else
{
AssignCommand(oSelf, ActionMoveToObject(oWP, TRUE, 0.1));
}
}

Скрипт должен: 1)отправить НПС к игроку
2)начать диалог с игроком
3)уйти на точку и стоять там, ожидая возвращения игрока.

Вроди и работает скрипт, но собака, нехочет 2ую часть выполнять(та что после else)...
В чем проблема? Как её решить? Может какието конфликты с слотом OnPerception?..
Уже 2ой день маюсь, бьюсь над этим скриптом, все никак не выходит...

Сообщение отредактировал GoOfs - Apr 5 2010, 18:21
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Apr 5 2010, 18:42
Сообщение #3248


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

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Надо
Neverwinter Script
if (iFIRST_TIME == 1)
То, что написал ты - это присваивание, оно всегда возвращает 1.

Сообщение отредактировал Ilerien - Apr 5 2010, 18:45
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
GoOfs
сообщение Apr 5 2010, 20:07
Сообщение #3249


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Ilerien, благодарю, без этого бесспорно мой скрипт бы и не заработал. проверял=)
Но я сам нашел ошибку. Это была банальная опечатка.
---
Еще один такой вопрос: как непися отправить в тартарары, или просто убить.
Моя задача сейчас Отправить непися к игроку. Поговорив с неписем, последний должен уйти и либо умереть и воскреснуть в близлежащей таверне, либо портануться в ту же таверну.

Сообщение отредактировал GoOfs - Apr 7 2010, 16:17
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Apr 8 2010, 10:09
Сообщение #3250


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

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



на слот end conversation (слот этот ищи в диалоге, там в одной из закладок справа внизу) ставь скрипт с телепортом игрока.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Силриен
сообщение May 18 2010, 20:22
Сообщение #3251


Level 1


Класс: Монах
Характер: Chaotic Good
Раса: Эльф



Всем привет.
Я только-только начал практиковаться в скриптописании под первый NWN, но продвижения пока не большие.
Сейчас появилось пару вопросов.

1. Хочу реализовать следующую ситуацию:
Главный Герой обыскивает труп и находит ключевой предмет. Предмет он кладет к себе в инвентарь. Как только предмет оказывается в инвентаре, происходит проверка не его наличие. Если TRUE, то генерятся монстры из палитры и расставляются не далеко от Главного Героя. Затем, нападают на него.

2. Хочу реализовать следующую ситуацию:
Стоит колодец. Главный Герой взаимодействует с колодцем (юзает, кликает на него), после чего переносится в другую область. По прибытии в новую область, герою наносится однократное повреждение и вычитается определенное количество хит пойнтов. Ситуация как-бы иллюстрирует, что Главный Герой провалился в колодец и ушибся.

На форуме я ничего подходящего к сожалению не нашел. Если кому не трудно, напишите пожалуйста такие скрипты и //прокомментируйте для пущей пользы в изучении.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
greye
сообщение May 18 2010, 21:45
Сообщение #3252


Level 7
**

Класс: Некромант
Характер: True Neutral
Раса: Нежить



Писать ничего не буду, но:
1) Обрати внимание на модульное событие onAcquireItem и функции GetModuleItemAcquired/GetModuleItemAcquiredBy, GetItemPossessedBy, CreateObject;
2) Событие onUsed, функции GetLastUsedBy, JumpToLocation и иже с нею, EffectDamage, GetCurrentHitPoints, ApplyEffectToObject
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Laajin
сообщение May 19 2010, 08:41
Сообщение #3253


Level 5
**

Класс: Пьяный Мастер
Характер: Chaotic Good
Раса: Человек



переносит игрока в точку и уронит, и уронит на колени
на OnUsed
Neverwinter Script
object oPC = GetLastUsedByObject();

AssignCommand(oPC, ClearAllActions());// отменяем все действия
AssignCommand(oPC, JumpToObject(GetObjectByTag("ТЭГ ОБЪЕКТА")) );//кидаем в точку

effect eDamage = EffectDamage(d10());// 1д10 дОмага

DelayCommand(5.0f, ApplyEffectToObject(DURATION_TYPE_INTSTANT, eDamage, oPC));
DelayCommand(5.1f, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectKnockdown(), oPC, 6.0f));


Сообщение отредактировал Laajin - May 19 2010, 08:46
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Devstvenik
сообщение May 21 2010, 02:42
Сообщение #3254


Level 1


Класс: Волшебник
Характер: Chaotic Evil
Раса: Эльф



мастера помогите
делают мод, Колизей. В принципе понятно в чем он заключается, ГГ является рабом которого заставляют драться на арене
проблема в том что не могу сделать народ - зрителей, охота чтобы они кричали орали( что уже сделано) и двигались а не стояли как истуканы. Как осуществить их постоянную анимацию??? пожалуйста помогите
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 21 2010, 08:53
Сообщение #3255


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

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



см. функцию ActionPlayAnimation()
в принципе можно на ХБ НПС написать простенький скрипт, который будет заставлять проигрывать НПС рандомную анимацию.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Devstvenik
сообщение May 21 2010, 13:52
Сообщение #3256


Level 1


Класс: Волшебник
Характер: Chaotic Evil
Раса: Эльф



а можешь написать этот скриптик??? и куда его поставить надо??? плззз
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение May 21 2010, 23:44
Сообщение #3257


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



Neverwinter Script
void main()
int iEmotion;
int iAnimation;
string sVoice;
iEmotion = d6();
switch (iEmotion)
{
case 1: iAnimation = ANIMATION_FIREFORGET_SALUTE;  sVoice="bla bla bla"; break;
case 2: iAnimation = ANIMATION_FIREFORGET_DRINK;    sVoice="bla bla bla"; break;
case 3: iAnimation = ANIMATION_FIREFORGET_TAUNT;    sVoice="bla bla bla"; break;
case 4: iAnimation = ANIMATION_FIREFORGET_VICTORY1; sVoice="bla bla bla"; break;
case 5: iAnimation = ANIMATION_FIREFORGET_VICTORY2; sVoice="bla bla bla"; break;
case 6: iAnimation = ANIMATION_FIREFORGET_VICTORY3; sVoice="bla bla bla"; break;
}
AssignCommand(OBJECT_SELF, ActionPlayAnimation(iAnimation));
AssignCommand(OBJECT_SELF, ActionSpeakString(sVoice, TALKVOLUME_SHOUT));
}

В свойствах создания есть вкладка скриптов, a там на OnHeartBeat
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 24 2010, 08:18
Сообщение #3258


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

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



ток я бы сделал не d6, а d8 Чтобы они не каждые 6 секунд все дергались, а иногда стояли "столбом". И если фразы не четко привязаны к анимации (пересекаются со смыслом анимации), то для текста я бы сделал отдельный свич (дабы комбинаций анимация-текст было бы больше). Но это косметика, а в целом Batkom написал все верно.
Только AssignCommand(OBJECT_SELF, - делать не нужно, можно сразу
Neverwinter Script
ClearAllAcations(); // ну эт для подстраховки, мало ли что.
ActionPlayAnimation(iAnimation);
ActionSpeakString(sVoice, TALKVOLUME_SHOUT);

и заводить переменную для свича не обязательно, достаточно switch d6()
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение May 24 2010, 08:57
Сообщение #3259


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

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



Лёш, все верно написал, но тут еще конь не валялся, т.ч. Devstvenik, посмотри еще здесь и напиши, что тебе конкретно нужно: http://remmgen.narod.ru/tscript3.html#SC_HB

Сообщение отредактировал gennady - Sep 4 2010, 16:25
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 24 2010, 10:43
Сообщение #3260


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

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



Понятно, что тут еще есть куда двигаться (я в базе выкладывал шаблон для имитации разговора нескольких НПС с фразами и анимацией. Тут вприцнипе тоже самое). Но этим уже автор заниматься должен сам, если оно ему надо. Кстати именно в данном случае, такого решения вполне достаточно, имхо. Это фон, и поэтому дополнительные затраты времени на такие скрипты не стоят потраченных усилий.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Griffon
сообщение May 24 2010, 11:50
Сообщение #3261


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

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



Для колизея можно добавить и

ANIMATION_LOOPING_MEDITATE
ANIMATION_LOOPING_TALK_FORCEFUL

с заданием времени

float fDurationSeconds = 0.5f

Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение May 24 2010, 16:39
Сообщение #3262


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



QUOTE (Lex @ May 24 2010, 09:18) *
Только AssignCommand(OBJECT_SELF, - делать не нужно, можно сразу
....
и заводить переменную для свича не обязательно, достаточно switch d6()

Вот это не знал, спасибо.
Кстати, так подумал, десяток ниписей в таком колизее мгновенно загадит весь чат. Стоит сделать проверку
Neverwinter Script
if (d6()>5) ActionSpeakString(sVoice, TALKVOLUME_SHOUT);

Можно спикстринг заменить на
Neverwinter Script
PlayVoiceChat(VOICE_CHAT_BATTLECRY1);

или что-то другое из группы VOICE_CHAT_*


У меня есть вопрос:
Сейчас пишу пресловутый распорядок дня для неписей. Имею два пути решения.
1) на onhb у каждого npc стоит проверка времени(day/night) и если никого нет в локации, а ему пора спать, он тихо - мирно прыгает домой.(все равно у npc что-то исполняется на onhb, почему бы не добавить туда еще...)
2) на onhb у плейсибла стоит проверка времени и таблица npc, которым нужно приказать спать. Если проверка успешна, плейсибл обзванивает всех ниписей и расставляет их по домам.
Так, как это дело пишется для шарда, то самое важное тут - быстродействие.
Так вот, что будет работать быстрее?

Сообщение отредактировал Batkom - May 24 2010, 16:40
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение May 24 2010, 18:11
Сообщение #3263


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

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Быстрее в хб непися, на плейсе или локе лишние ресурсы хавает обход неписей.
Для какого шарда, если не секрет?

Сообщение отредактировал Ilerien - May 24 2010, 18:12
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение May 24 2010, 21:52
Сообщение #3264


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



В том то и вся соль, обход неписей по идее должен совершаться два раза в сутки.

[измините за оффтоп, лирика]
Собственный модуль, не привязанный к забытым королевствам.
Когда-то держал в локальной сети скромненький шардик, менее, чем на сто локаций с несбалансированным рулесетом. Было весело, но года через три шард загнулся. Сейчас вот довожу до ума правила, выкидываю чужие хаки, (из гемовского хака я правда оставил чудную башню и холмики, надеюсь, никто обижаться не будет) рисую локации, балансирую спавны. Акцент собираюсь делать на динамических головоломках в данжах и активном участии ДМ в игре.
Как доваяю до той кондиции, чтобы не стыдно было сервер запускать, выпущу в большой мир.
[/измините за оффтоп, лирика]
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
virus_found
сообщение May 24 2010, 22:05
Сообщение #3265


Отверженный
****

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Баатезу



Цитата(Batkom @ May 24 2010, 21:52) *
[измините за оффтоп, лирика]
Собственный модуль, не привязанный к забытым королевствам.
Когда-то держал в локальной сети скромненький шардик, менее, чем на сто локаций с несбалансированным рулесетом. Было весело, но года через три шард загнулся. Сейчас вот довожу до ума правила, выкидываю чужие хаки, (из гемовского хака я правда оставил чудную башню и холмики, надеюсь, никто обижаться не будет) рисую локации, балансирую спавны. Акцент собираюсь делать на динамических головоломках в данжах и активном участии ДМ в игре.
Как доваяю до той кондиции, чтобы не стыдно было сервер запускать, выпущу в большой мир.
[/измините за оффтоп, лирика]

Желаю удачи. (IMG:style_emoticons/kolobok_light/good.gif)

Сообщение отредактировал virus_found - May 24 2010, 22:05
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение May 25 2010, 01:12
Сообщение #3266


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

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Цитата
В том то и вся соль, обход неписей по идее должен совершаться два раза в сутки.
Хм, туплю. В таком случае лучший выход - это псевдохертбит на модуле или локе (ну или на плейсе, но лока лучше) с задержкой, равной половине суток.
Мне это видится так - на загрузке модуля запускается таймер (псевдохербит на малый отрезок времени - раунд или секунду, как удобнее). Когда таймер видит, что время суток сменилось (достигается это с помощью локалки), выкидывается модульный эвент, в обработчике которого перебираются все локи, и для каждой локи происходят соответствующие действия с помеченными неписями. Я бы оформил это как отдельный скрипт, запускаемый из модульного эвента на локе.
Цитата
(из гемовского хака я правда оставил чудную башню и холмики, надеюсь, никто обижаться не будет)
Velmar's Tower 2х2 из Rural+City? (IMG:style_emoticons/kolobok_light/smile.gif)

Сообщение отредактировал Ilerien - May 25 2010, 01:30
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение May 25 2010, 11:11
Сообщение #3267


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



Я боюсь, что перебор всех лок будет некисло тормозить, попробую обойтись жестким списком или выборкой тэгов из mysql.
Как напишу, выложу тут для проверки.
QUOTE (Ilerien @ May 25 2010, 01:12) *
Velmar's Tower 2х2 из Rural+City?

Именно. В одном из поселений, в этой башне располагается рынок.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение May 25 2010, 11:49
Сообщение #3268


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

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



Не знаю как для шарда, а для сингла я писал и на ХБ НПС и на ХБ плейсов. Но прыжки тупили, лучше использовать copy, но и тут есть свои нюансы... Хотя, функция получилась нормальная, можно весь мод впихнуть на один ХБ плейса. Если интересно могу выложить.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Waldgeist
сообщение May 25 2010, 18:51
Сообщение #3269


Level 2
*

Класс: Рейнджер
Характер: Neutral Evil
Раса: Эльф



Люди, пожалуйста, помогите: как организовать провал заклинания на всю локацию? Что нужно прописать? Чтобы даже мельчайшие магические атрибуты исчезали.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение May 25 2010, 19:47
Сообщение #3270


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

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Цитата
Люди, пожалуйста, помогите: как организовать провал заклинания на всю локацию? Что нужно прописать?
Повесить на локу переменную и проверять её в спеллхуке.
Цитата
Чтобы даже мельчайшие магические атрибуты исчезали.
Вот этого не понял. Стандартные средства позволяют сделать провал заклинаний и только заклинаний.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 129 130 131 132 133 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 2nd August 2025 - 11:34