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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 129 130 131 132 133 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Силриен
сообщение 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



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


Level 2
*

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



О, уи. Я просто имел в виду подобие Пещеры Бехолдеров из Hotu- там, помнится, Лук "Вечность" и Энсеррик лишились своих чудотворных свойств.

Цитата(Waldgeist @ May 25 2010, 20:09) *
О, уи. Я просто имел в виду подобие Пещеры Бехолдеров из Hotu- там, помнится, Лук "Вечность" и Энсеррик лишились своих чудотворных свойств.

А за совет спасибо.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение May 25 2010, 21:03
Сообщение #3272


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

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



Цитата
О, уи. Я просто имел в виду подобие Пещеры Бехолдеров из Hotu- там, помнится, Лук "Вечность" и Энсеррик лишились своих чудотворных свойств.
Способ для сингла есть - собственно, стащить скрипты из кампании. Не смотрел, как это реализовано, но, полагаю, проходом по инвентарю и удалением большинства свойств со всех предметов.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 26 2010, 09:44
Сообщение #3273


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

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



если именно в локе - проще сделать 100% шанс провала закла в параметрах данной локации. Оно там же, где имя локи, тэг и тд.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение May 26 2010, 11:34
Сообщение #3274


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

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



Цитата
если именно в локе - проще сделать 100% шанс провала закла в параметрах данной локации. Оно там же, где имя локи, тэг и тд.
Я что-то в этой жизни пропустил? (IMG:style_emoticons/kolobok_light/shok.gif) Нет такого в параметрах локи, хоть убей.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Laajin
сообщение May 26 2010, 13:10
Сообщение #3275


Level 5
**

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



может быть, имеется ввиду % помех в свойствах локации?
но там эти помехи вроде бы для навыков вида выслушивать/прятаться

Сообщение отредактировал Laajin - May 26 2010, 13:23
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

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

 



Текстовая версия Сейчас: 27th April 2025 - 17:25