Помощь - Поиск - Пользователи - Календарь
Полная версия: ОДИНОЧНЫЙ ВОПРОС
Город Мастеров > РЕДАКТОРЫ > Neverwinter Nights Aurora Toolset
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68
-fenix-
В нужную сторону тебя может вывести этот пост: http://www.city-of-masters.ru/forums/index...ost&p=48916
gennady
QUOTE(Roker @ Oct 3 2006, 10:58) [snapback]93521[/snapback]
Например щас у меня назрела идея.... Хочу сделать так, чтобы дверь открывалась паролем, но говорить его нужно через окно чата (т.е. через строчку внизу обычным голосом....) *во я фантазёр* Подскажите, осуществимо ли это?

Попробуй этот скрипт, только его нужно ставить на ветку двери, и сразу на ветку проверки героя. За раз не сработает.
NSS
void main()
{
object oDoor = OBJECT_SELF;
SetListening(oDoor, TRUE);// Даем команду слушать
SetListenPattern(oDoor,"50", 1);// устанавливаем образец фразы и номер инта

if (GetListenPatternNumber() == 1) // Проверим пароль
{
  SpeakString("Проходи! Пароль верный.");
  // открытие двери
  AssignCommand(oDoor, ActionDoCommand(SetLocked(oDoor, FALSE)));
  AssignCommand(oDoor, ActionOpenDoor(oDoor));
}
}

Lex
Писал я для Айва такое когда-то.. в принципе ничего сложного там нет.
тебе надо поставить шаблоны и включить слух:
NSS
// Set the string for oObject to listen for.
// Note: this does not set oObject to be listening.
void SetListenPattern(object oObject, string sPattern, int nNumber=0)

// Set whether oObject is listening.
void SetListening(object oObject, int bValue)

Вроде сначала пустой, на любую фразу "**" (если тебе нужна какая-то реакция на неверный пароль), а потом нужный тебе "пароль".. поэкспериментируй.
и потом в onConversation нужного НПС их проверять (если дверь, то чуть интереснее - радом нарисовать триггер, при наступании на который создавать нивидимого НПС со скриптом в onConversation, который и будет слушать пароли для двери. При уходе с триггера - удалять НПС)
Noah
Добрый ночер! В многих яп. рпг есть такая фишка,как меняющиеся при разных эмоциях портреты героев(улыбка,плач и т.Д.)реализуемо ли это в нашем любимом нвн без создания кучи лишних объектов?Если кто знает прошу написать.Лишние портреты мне не в лом сделать;-)

Добрый ночер! В многих яп. рпг есть такая фишка,как меняющиеся при разных эмоциях портреты героев(улыбка,плач и т.Д.)реализуемо ли это в нашем любимом нвн без создания кучи лишних объектов?Если кто знает прошу написать.Лишние портреты мне не в лом сделать;-)
Lex
когда-то Айс (Ice Blade) говорил что какая-то работа с портретами возможна (это было до 1.67)
Сейчас же проще некуда:
NSS
// Change the portrait of oTarget to use the Portrait ResRef specified.
// - oTarget: the object for which you are changing the portrait.
// - sPortraitResRef: The ResRef of the new portrait to use.
//                    The ResRef should not include any trailing size letter ( e.g. po_el_f_09_ ).
// Note: Not all portrait ResRefs are suitable for use with all object types.
//       Setting the portrait ResRef will also cause the portrait Id
//       to be set to PORTRAIT_INVALID.
void SetPortraitResRef(object oTarget, string sPortraitResRef)

NSS
// Change the portrait of oTarget to use the Portrait Id specified.
// - oTarget: the object for which you are changing the portrait.
// - nPortraitId: The Id of the new portrait to use.
//                nPortraitId refers to a row in the Portraits.2da
// Note: Not all portrait Ids are suitable for use with all object types.
//       Setting the portrait Id will also cause the portrait ResRef
//       to be set to the appropriate portrait ResRef for the Id specified.
void SetPortraitId(object oTarget, int nPortraitId)


но как это будет в диалоге - я хз. Отобразится сразу или нет.


зы: имхо эта идея со сменой портретов - БОЛЕЕ ЧЕМ лишнее.
Noah
Спасибо, человек. По моему мнению такие вот фишечки делают игру более запоминающейся!Еще раз спасибо, а это только на 1.67 возможно,надо срочно его качать :-( а то у меня его нет!
helvene
QUOTE(Noah @ Oct 7 2006, 08:27) [snapback]93942[/snapback]
По моему мнению такие вот фишечки делают игру более запоминающейся!

Более чем спорно.
virusman
С вероятностью 98% могу предположить, что портрет не изменится, пока объект не исчезнет и появится снова.
Lex
QUOTE(virusman @ Oct 7 2006, 18:38) [snapback]93968[/snapback]
С вероятностью 98% могу предположить, что портрет не изменится, пока объект не исчезнет и появится снова.

игроку я менял реал-тайм. Без проблем было.





_____
Кто-нить совмещал Alternative Combat Animation v3 с плащами в 1.68? Насколько убого выглядит и стоит ли париться? (наделать копий плащей для остальных 4х фенотипов)
Waromon
QUOTE(virusman @ Oct 7 2006, 17:38) [snapback]93968[/snapback]

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


После чтения поста, решил проверить. smile.gif
Итог - портрет прекрасно меняется. biggrin.gif
virusman
Ну тогда вообще замечательно.. имя портрета отсылается вместе с сообщением.
infi
что-то всё найти не могу. откуда берётся анимция полёта фаербола или полёта камня, который гиг бросает?
Waromon
... Ммм, возможно я тебя не так понял, но;
Константа типа PROJECTILE_PATH_TYPE_* - отвечает за анимацию. crazy.gif
Leon PRO
2infi
Катапульты делаем ? biggrin.gif
infi
QUOTE(Waromon @ Oct 8 2006, 20:36) [snapback]94077[/snapback]

... Ммм, возможно я тебя не так понял, но;
Константа типа PROJECTILE_PATH_TYPE_* - отвечает за анимацию. crazy.gif


возможно я сам себя не правильно понял smile.gif смотрю вот в скрипт фаербола.. и что-то самого полёта там не видно)
QUOTE(Leon PRO @ Oct 8 2006, 21:00) [snapback]94078[/snapback]

2infi
Катапульты делаем ? biggrin.gif

да уж.
Zirrex
infi, анимация сама по себе. В скрипте заклинания описывается, что будет делать данный эффект с объектом, на который он направлен. Поищи среди скриптов данное умение или заклинание. Чтобы его было проще найти, надо заглянуть в spell.2da, где описаны умения монстров и заклинания, которые создают магический эффект на цель и на себя. Для каждого такого заклинания прописан скрипт, по имени которого ты сможешь найти то, что тебе необходимо.
infi
Всё, спасибо.. благодаря Zirrex разобрался, что за это отвечает ProjModel в spells.2da smile.gif
Roker
Про тему с дверями благодарю, но придётся мне туго. Щас попробую понять всю информацию, что мне прислали....

Aiwan
Что за шаблоны? scratch_one-s_head.gif Я чайник, работаю в тулсете очень и очень недавно, учусь у вас же (расковыривая компанию по частям без всякой на то лицензии prankster2.gif ) И что там с НПС??? Эту тему поподробнее....
Zirrex
Знает кто-нибудь, какие именно скрипты используют аптечки, когда их применяют? При лечении кидается кубик, но так как DC всегда 0, то провал не происходит. Необходимо изменить этот DC. А то есть умение Heal, а толку от него мало, потому что даже при малых значениях можно легко вылечиться. Единственное, что изменяется, это количество восстанавливаемой жизни.
Lex
Zirrex, я так и не нашел этот скрипт. Бытует мнение, что он там где-то внутри и редактированию не подлежит unknw.gif
Паладин Тира
Может я плохо искала, но возможно ли сделать разноуровневых НПС???
Залёт весь в чём? а в том, что в модулях жизнь может медом показаться ну к примеру Паладину 20 уровня... Ан нет - не должна!!! Хочу сделать так, чтобы у меня(к примеру) 1 левел у зомби тоже, у меня 10 левел, а у зомби уже - 20! Тоесть в 2 раза больше чем у меня... С повышением моего левела повышается левел НПС соответственно... Реализуемо сие деяние???
Waromon
Вообще, все ето реализуемо с помощью енчкаунтеров, нуна просто их соответствующим образом настроитьsmile.gif

В мануале подробно расписано
http://www.wrg.ru/index.php?method=files.o...=48&sub=vaf

ЗЫ: не спаунящися мобам моно и с помощью SetXP установить нужный лвл. wacko.gif
-fenix-
Ну, при поднятии игроком уровня качаешь НПС в данной локе, а всем остальным поднимаешь когда игрок будет заходить в их локацию (OnEnter) локи.
Только 10 раз подумай, а надо ли это? Лично меня жутко бесит такое дело в Обливионе!!!
Lex
QUOTE(Waromon @ Oct 15 2006, 12:21) [snapback]94831[/snapback]
ЗЫ: не спаунящися мобам моно и с помощью SetXP установить нужный лвл

тока это не подымет левел, нужно LevelupHenchman юзать.
Паладин Тира
Ха-ха, хм-м...
Мне бы поконкретнее...
Мануал у меня давненько запылился(видать - зря!)
Просто левел моих познаний В АВРОРЕ тянет на 5 из 40...
Так что (если можно конечно же) ПОМОГИТЕ!!!
Lex
Тебе же ответили. Если монстры (НПС) идут с энкаунтеров, то там спавн уже учитывает твой уровень. Набиваешь например туда нежити от скелетов с CR 0.333 до драколичей с CR 100 и у тебя состав группы монстров и их количество будет таким, чтобы игроку было легко/средне/трудно/нереально их завалить (см настройки энкаунтеров)
если же речь идет о прочих НПС (например о наемниках, которые всегда скажем должны быть твоего левела), то можешь им в скрипте в начале диалога делать LevelUpHenchman столько раз, сколько нужно (количество уровняй для поднятия = GetHitDice(oPC) - GetHitDice(oNPC))

куда уж подробнее? smile.gif
-fenix-
Лекс, там походу надо как в Обливионе, чтобы НПС поднимали уровень за тобой.

Тут тогда так.

1) Вешаешь отличительную локалку на НПС, которые будут подвергаться повышению.
2) На OnPlayerLevelUp, в св-вах модуля, пишешь скрипт, который будет выбирать из текущей локи нужных НПС и повышать их уровень до нужного. Еще надо поставить локалку на локу, в которой будет храниться уровень игрока, на котором было произведено повышение.
3) На OnEnter локи, а еще лучше на OnEnter тригера, растянутого на месте захода влоку, ставешь скрипт, который проверяет на каком уровне было совершено предыдущее повышение неписей в локе. Если на таком же, который у ПС, то все норм, а если на меньшем, то так же выбирает нужных НПС и повышает им левал. После чего переписывает локалку, запоминая текущий уровень.
Serdrick
Перевожу модуль. И если с диалогами и записями в журнал все понятно, то совершенно непонятно где найти тексты с описаниями неписей, вещей и т.п. Если можно поподробнее.
Lex
1. Палитра (открой любую локацию, панелька справа и есть палитра, она разбита на типы: НПС, вещи, плейсы, энкаунтеры и тд)
2. предметы в локациях. Открываешь локацию, выбираешь предмет и заходишь в закладку "Описание"
Mandrake
Столкнулся со следующим вопросом. На 2 серверах видел драконов, обладающими атакой, когда они взлетают исчезают с экрана а потом призмеляются в ту точку, где находился враг. При этом на взлете и приземлении происходит кнок по площади с проверкой на реакцию. Искал в спец способностях монстров, но ничего похожего найти не удалось, может кто знает, что это за атака и где ее найти?
Lex
скорее всего скрипт. Взлет и приземление - эффекты (DisappearAppear) Кнок по площади - перебор объектов в сфере + проверка спасов + кнок.
9988
QUOTE(Lex @ Oct 17 2006, 20:37) [snapback]95107[/snapback]

Искал в спец способностях монстров, но ничего похожего найти не удалось, может кто знает, что это за атака и где ее найти?

В Джаспарском АИ.
Mandrake
Спасибо thank_you.gif
ant1on
Подскажите! Лежит нпк при смерти (как сделать правда не знаю) или просто стоит нпк раненый (опять таки нужно чтобы он был покоцаный изначально). Так вот нужен скрипт при котором игроку давали бы експу, за то что он вылечил нпк АПТЕЧКОЙ!
Lex
эм.. Тут такой косяк - скрипта аптечки нема, он сныкан так, что за много лет его так и не нашли. Или попробуй через AtCastSpell на слоте НПС (те просто засеки момент каста и через 2 секунды проверь, если НПС вылечился - давай экспу). Или через HB нпс проверяй, если вылечился - экспу. Так как ХБ - 6 секунд, что многовато, там можно сделать дробление и проверять раз в 2 секунды.. но это малек накладно (хотя при должном скриптовании не так уж накладно, как многие думают).
QUOTE(ant1on @ Nov 17 2006, 00:04) [snapback]98285[/snapback]
Лежит нпк при смерти (как сделать правда не знаю)

в слоте onSpawn накладываешь EffectDamage - это его ранит. Потом можно анимацию ActionPlayAnimation или кнокнуть его EffectKnock.. варианты есть
Адонтос
В общем возникла такая проблема, завис тулсет, ну я его через диспечер завершил. Потом захожу тулсет предложил открыть файл я его открыл потом вышел не сохранивши. Теперь открываю сохраненный ранее файл и мне вот что пишет :

"Ошибка
Could not write one or more files to the tempory working directory.
Pleas check that you have sufficetnt disc space.
It is also possoble that the module file corrupted and contains incorrect information about the file that is contains"

в папке modules так же кстати есть файл "название.BackupMod". Подскажите что можно зделать, много работы пропадает shout.gif
Vhall
QUOTE(Адонтос @ Nov 27 2006, 10:38) [snapback]99286[/snapback]
Could not write one or more files to the tempory working directory.

Писать в modules можешь (разрешения правильно выставлены?)? А в temp?
Попробуй сохранив содержимое temp в другом месте удалить эту папку в modules. А затем открой модуль.
QUOTE(Адонтос @ Nov 27 2006, 10:38) [snapback]99286[/snapback]
Pleas check that you have sufficetnt disc space.

Место на диске, надеюсь, есть? prankster2.gif
QUOTE(Адонтос @ Nov 27 2006, 10:38) [snapback]99286[/snapback]
It is also possoble that the module file corrupted and contains incorrect information about the file that is contains

Скорее всего модуль побился. Восстановить его можно, но только теоретически.
QUOTE(Адонтос @ Nov 27 2006, 10:38) [snapback]99286[/snapback]
в папке modules так же кстати есть файл "название.BackupMod". Подскажите что можно зделать, много работы пропадает shout.gif

Так грузи его, чего ждешь? acute.gif
Это предпоследнее сохранение модуля.
Fluyka
Кто-нибудь выложите пожалуйста константы "ReqType" из cls_pres_* ;все желательно, а то в разделе про 2да не все.
Sairilias
у меня на средней сложности диалог (4 ветки с проверками, сменой активной ветки, различнвый итог диалога, плюс миниквест) уходит в среднем 15-20 мелких скриптов, это нормально или нет? просто если их количество станет сильно тормозить сингловый мод я лучше аппетиты поумерю свои и сделаю их попроще. хотя возможен вариант делать универсальные скрипты, но тогда придется часами тупить над тем как правильно эти ветки расставить, поэтому этот вариант думаю буду рассматривать намного позже.
Lex
это мелочи, можно больше на порядок и ты не заметишь лагов. Там же у тебя скрипты в основном мелкие, пару строк. Само количество скриптов модуль не тормозит. Тормозит большое количество ОДНОВРЕМЕННО работающих скриптов. Диалоговые как ты понимаешь, работают по 1 и соотв не важно, сколько их, 10, 100 или 1000. smile.gif так что не думай об этом.
Sairilias
сеньк smile.gif
а если сделать при входе в локацию смену какой-нить переменной на условный сигнал типа "игрок в локации", то куча скриптов одновременно на хербите проверяющих наличие игрока в своих локациях дадут не те же самые тормоза как если они просто все время работать будут?
Dart_Vadder
QUOTE(Lex @ Dec 7 2006, 06:10) [snapback]99986[/snapback]

Тормозит большое количество ОДНОВРЕМЕННО работающих скриптов...

Такой вопрос - небольшая скриптовая системка (около 20 строк), повешаная на ОнХеартБред некоторых неписей будет сильно тормозить систему? И сколько примерно можно поставить таких неписей (что бы не сильно загружать комп)?
Aiwan
Лучше вообще не ставить.
-fenix-
QUOTE(Сайрус @ Dec 7 2006, 06:01) [snapback]99989[/snapback]
а если сделать при входе в локацию смену какой-нить переменной на условный сигнал типа "игрок в локации", то куча скриптов одновременно на хербите проверяющих наличие игрока в своих локациях дадут не те же самые тормоза как если они просто все время работать будут?

НУ конешно нет. Они просто каждые 6 секунд будет проверяться есть ли игрок в локации или нет, а не выполняться весь скрипт целиком. Если так делать, то конешно тормозов будет меньше.

QUOTE(Dart_Vadder @ Dec 7 2006, 10:18) [snapback]99995[/snapback]
Такой вопрос - небольшая скриптовая системка (около 20 строк), повешаная на ОнХеартБред некоторых неписей будет сильно тормозить систему? И сколько примерно можно поставить таких неписей (что бы не сильно загружать комп)?

Смотря што там будет повешано. Естьли там циклы, большие ли они? А вообще, не стоит слишком сильно увлекаться ХертБитом в одной локе. Тобишь не надо ставить штук 40 анимированых и оживленых неписей. Если это город, то поставь 5-7 стражников, которые будут ходить и еще че-нить делать. Если это трактир, то официантка, бармен, пара стражников, можно немнога посетителей ачеловечить, ну так, шоб фразы говорили или еще че-нить такое (ни чего сложного). Посмори ПЛ.

QUOTE(Aiwan @ Dec 7 2006, 10:42) [snapback]99997[/snapback]
Лучше вообще не ставить.

scratch_one-s_head.gif
Lex
QUOTE(Dart_Vadder @ Dec 7 2006, 10:18) [snapback]99995[/snapback]
Такой вопрос - небольшая скриптовая системка (около 20 строк), повешаная на ОнХеартБред некоторых неписей будет сильно тормозить систему?

написанная грамотно - не будет сильно тормозить. Хотя конечно зависит от самой системы.
Dart_Vadder
Сенкс. А я где-то читал, что такие события выполняются каждые 6 сек во всех локациях одновременно. Или это бред?
Sairilias
конечно, причем всеми у кого такие скрипты висят на данном слоте.


пришел к выводу что лучше сделать систему простых скриптов повешенных на OnEnter триггеров, чем мудрить с одим большим на чьем нибудь хербите (наверно это крайность), и нагрузка будет меньше и логика лечше исполняется. еще думается что для сингла не имеет смысла писать конструкции со сложным механизмом проверок и контроля сосбственного исполнения - не шард все таки, верно или я заблуждаюсь?
Lex
QUOTE(Dart_Vadder @ Dec 8 2006, 09:06) [snapback]100052[/snapback]
Сенкс. А я где-то читал, что такие события выполняются каждые 6 сек во всех локациях одновременно. Или это бред?

во всех. Но в тех локах, где игрока нет, ХБ срабатывает не всегда раз в 6 секунд, зачастую там раз в 10-15. Зависит от размера модуля и загрузки проца этим модулем.

QUOTE(Сайрус @ Dec 8 2006, 12:39) [snapback]100062[/snapback]
еще думается что для сингла не имеет смысла писать конструкции со сложным механизмом проверок и контроля сосбственного исполнения

сложным нет, но механзим контроля исполнения таки нужен. На примере того же ПЛ, где у 10% игроков триггер катсцены не удалился, а у 90% удалился smile.gif
Sairilias
заморачиваться и писать такой скрипт - если игрок убил всех посетителей в таверне - отключать смех в таверне и прочие звуки живых людей - наверно не стоит? просто я тут разумные границы немножко теряю wacko.gif - реализовать то можно все, можно сделать так что бармен продавать цыпленка перестанет, если плеер в курятнике всех кур убьет, плюс ругань.. люди поделить мнением плиз
Dart_Vadder
QUOTE(Сайрус @ Dec 12 2006, 06:47) [snapback]100286[/snapback]

заморачиваться и писать такой скрипт - если игрок убил всех посетителей в таверне - отключать смех в таверне и прочие звуки живых людей

Мдя, будет слехка перебор...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2024 Invision Power Services, Inc.