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

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

2 страниц V   1 2 >

Важно! Скрипты
DraX
Отправлено: Aug 25 2005, 17:03


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Все перепробовал, а это забыл! :lol: :lol:
Спасибо, большое. Теперь повышается, родной.
Извините за СПАМ, просто радости сдержать немогу. Столько недель, и вот!..
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48849 · Ответов: 3670 · Просмотров: 702,418

DraX
Отправлено: Aug 25 2005, 16:58


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


На onClientEnter некоторые скрипты иногда и глючат. Лучше всего использовать такой вариант:
1. Рисуем триггер вокруг точки, в которой должен появиться игрок.
2. Соответствующий скрипт ставим в onEnter триггера, заведомо включив проверку скрипта на единождую активацию.
Не то, чтобы я был против идеи ставить скрипт на onClientEnter. Просто люди советовали, да и свой опыт тоже имеется. Поэтому, прошу сильно не бить :vava:

ЗЫ: Еще лучше сделать выход из затемнения. Этакое интро. :)
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48848 · Ответов: 219 · Просмотров: 264,782

DraX
Отправлено: Aug 25 2005, 16:53


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Извините за глупый вопрос. Просто очень интересно узнать.
Почему команда CreateObject() не ставится в очередь и задержку. Т.е. когда я пишу DelayCommand(2.0, CreateObject(OBJECT_TYPE_CREATURE, "ResRef", location lPoint)); ничего не происходит. Тоже самое с Action. В чем дело то? Глюк в самой программе? :xz:
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48846 · Ответов: 3359 · Просмотров: 637,849

Важно! Скрипты
DraX
Отправлено: Aug 25 2005, 16:46


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Извиняюсь, если вопрос уже был задан. Очень Инет тормозит.
Вопрос, вобщем, не совсем мой. Но мне тоже будет интересно узнать. 1. Каким образом можно повысить уровень хэнча (с помощью скриптов, конечно :) ) и 2. как сделать так, чтобы при повышении уровня хозяина, повышался уровень хэнча. Лично я использовал для этой цели 3 различных скрипта, которые просто обязаны были сработать. Но не сработали. Помогите, кто знает.

DikMorris ©
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48845 · Ответов: 3670 · Просмотров: 702,418

DraX
Отправлено: Aug 24 2005, 16:32


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Неожиданно пришла здравая идея!
Многим может быть полезным генерация хенча (henchman - NPC, который помогает тебе во всем). Вот как этого можно добиться.

1.Создаем любого NPC на карте.
2.Добавляем к нему диалог, типа такого: "Привет, Вася. Хощ, буду твоим помощьником?"-"Хочу"-"Хех, все"
3.Далее, в том месте, где NPC говорит, что он уже присоединился к вам, во вкладке Action Taken напишите следующий коротенький скриптик
Neverwinter Script Source
if(GetLocalInt(OBJECT_SELF, "HENCHED") != TRUE) // Проверка, что присоединяется один раз
{
  SetLocalInt(OBJECT_SELF, "HENCHED", TRUE); // Вот и установка
  AddHenchman(GetPCSpeaker(), OBJECT_SELF); // Добавляем хенча тому игроку, с кем говорит
}

4.Заменяем во всех вкладках скриптов у NPC скрипты на nw_ch_ac#, где вместо # пишите цифру или букву из родных скриптов. Это стандартные AI скрипты для всех хенчев.
5.Все, пользуйтесь :)

ЗЫ: А если еще добавить проверочку, о которой я писал выше, что можно сделать еще и красивый диалог. Юзайте :D
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48767 · Ответов: 49 · Просмотров: 162,549

DraX
Отправлено: Aug 24 2005, 15:12


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Долго думал, какой скрипт написать и решил, что новичкам, в первую очередь, будет интересно узнать вот о чем. Многое замечали, что при разговоре с NPC (Non-Playing Character, т.е. любой персонаж, кроме игроков) при первой встрече он может вас приветствовать, а при второй - молчать. Так вот, делается сее творение тоже с помощью скриптов. Для начала создаете диалог с двумя ветками от корня (что NPC будет говорить вначале и что после). В первой ветке во вкладке Text Appears When (эта вкладка указывает на то, что фраза будет произнесена, только если скрипт, написанный в этой вкладке, выполняется) напишите следующий скрипт.
Neverwinter Script Source
int StartingConditional()
{
//  Вводим переменную nResult. Она должна принять значения TRUE или FALSE (Да или Нет)
int nResult;  
/*
    GetLocalInt - возвращает программе заначение переменной с именем "FIRST_TIME", которая была присвоена объекту OBJECT_SELF (в данном случае - самому себе)
    Спрашиваем, если такая переменная еще не вводилась (т.е. равна 0), что переменной nResult присвоить TRUE(Да). В противном случае, присвоить nResult FALSE(Нет)
*/

nResult = GetLocalInt(OBJECT_SELF, "FIRST_TIME") == 0;  
// Возвращаем программе значение. Если TRUE(Да), то фраза произносится; если                                 // FALSE(Нет) - то нет.
return nResult; 
}

Получается, что мы спрашиваем программу была ли переменная "FIRST_TIME" определена. Если нет - то мы даем добро на фразу. Теперь нам осталось сделать совсем ничего - определить эту переменную. Тогда при вызове нашего скрипта, он определит, что переменная определена и выдаст FALSE, т.е. запретит вывод фразы. Но проге надо ж вывести хоть какую то фразу? :) Вот он и опускается на одну строчку вниз. Там нет никаких проверок, поэтому он свободно выводит вторую фразу. Вот скрипт, который нужно прописать в Actions Taken
Neverwinter Script Source
SetLocalInt(OBJECT_SELF, "FIRST_TIME", 1);  /* Присвоели переменной 1 и теперь она уже определена под другим значением
*/

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

ЗЫ: Кстати, вот эти ковычки в скрипте /* */ означают комментарий. Используйте их, чтобы окончательно не заблудиться в том, что вы написали. ;)

LEX: PS: это расписано в вопросах и ответах
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48763 · Ответов: 49 · Просмотров: 162,549

Важно! Скрипты
DraX
Отправлено: Aug 23 2005, 11:01


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


2_advanced
QUOTE
Returns the amount of damage of type nDamageType that has been dealt to the caller.

Тут же все подробно описано. :xz: Lex взял описание напрямую из Лексикона.
Если не понятно, объясню. Эта функция должна выводить кол-во урона, нанесенного определенным типом повреждения. Т.е. если ты хочешь получить тип повреждения, тебе надо включить смекалку. Этой функцией ты просто узнаешь кол-во урона, нанесенного одним типом. Тебе нужен скрипт, типа:
Neverwinter Script Source
int XP_GetDamageType()
{
  int TYPE;

  if(GetDamageDealtByType(DAMAGE_TYPE_ACID) >= 1)
      TYPE = 1;

  else if(GetDamageDealtByType(DAMAGE_TYPE_COLD) >= 1)
      TYPE = 2;

  else if(GetDamageDealtByType(DAMAGE_TYPE_FIRE) >= 1)
      TYPE = 3;

  .......................

  return TYPE;
}


А потом ты сможешь спокойно манипулировать полученными тобой данными.

ЗЫ: А -1 она у тебя выводит, потому что не был причинен урон описанного тобой типа (если ты его вообще описывал :) )
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48658 · Ответов: 3670 · Просмотров: 702,418

DraX
Отправлено: Aug 22 2005, 18:00


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Спасибо, ответ на мой вопрос теперь не требуется. Спасибо Dik'у и Lex'у.
За оффтоп простите. Не могу счастья сдержать. :D
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48604 · Ответов: 5109 · Просмотров: 854,600

DraX
Отправлено: Aug 22 2005, 17:57


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Короче, те у кого есть здравые мысли на этот счет и кто поддерживает мою идею, просим писать.

ЗЫ: Хугин Все, хорош. Ты сказал, я увидел. Все, дай слово другим. :this:
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48602 · Ответов: 23 · Просмотров: 27,921

Важно! Скрипты
DraX
Отправлено: Aug 22 2005, 17:39


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Извините, коль вопрос уже был задан, нету времени смотреть 32 страницы :crazy:
Кто может объяснить, куда вставлять CustomTalk'ины. Слышал, что они делают много полезных вещей. Объясните, плз.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48600 · Ответов: 3670 · Просмотров: 702,418

DraX
Отправлено: Aug 22 2005, 17:33


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Патриотизм! Городость за этот сайт.
Архив нужен хотя бы потому, что на этом сайте есть много полезного, авторского, чего нет на vault'е. Здесь есть много хороших идей, но все они разбросаны по кусочкам. А если собрать эту мозайку и поместить ее в частопосещаемое место, будет ляпота. И красиво, и полезно, и гордость.
Вот тебе хотя бы 3 причины, почему я решил написать эту тему.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48599 · Ответов: 23 · Просмотров: 27,921

DraX
Отправлено: Aug 22 2005, 17:05


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Ваулт - класс, но это - англоязычный сайт. Пока найдешь что надо, вспотеешь. А если б на этом сайте был бы архив, понятный и полный, было бы это сделать гораздо легче. Лично я не хочу платить слишком много денег за Интернет. Я вообще не хочу за него платить. Но если бы у нас был архив, лично я бы экономил бы больше денюжек.
Пожалуйста, всевышние, услышьте меня! :vava:
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48596 · Ответов: 23 · Просмотров: 27,921

DraX
Отправлено: Aug 22 2005, 14:47


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Дык нет то это! :no:
Я теперь говорю о общем, крупномасштабном архиве. Архиве, в котором будут содержаться все, что можно собрать с этого модуля. А это: и скрипты, и модули, и текстуры... Все!
Я понимаю, что это будет слишком сложно, и проблема, возможно, именно в этом. Но, согласитесь товарищи, обычному пользователю, зашедшему на сайт, будет очень приятно сразу увидеть простенький архив, в котором он спокойно сможет выбрать и скачать именно то, что ему надо. Согласитесь, что так НАМНОГО удобрней скачивать и смотреть файлы, чем искать их по форуму. Инет то не у каждых такой быстрый, как у нас с вами.
Добавлено в [mergetime]1124711349[/mergetime]
Lex Твою тему по скриптам я просмотрел с корки до корки. Не одного скрипта не пропустил. :D
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48585 · Ответов: 23 · Просмотров: 27,921

DraX
Отправлено: Aug 22 2005, 14:27


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Доброго всем времени суток!
У меня вопрос такого плана. Как сделать так, чтобы после того, как игрок пройдя по определенному месту (в данном случае, ловушке), у него отнималась здоровье. Но, внимание! Чтобы его не просто кацануло, а постепенно aka если персонаж подходит на... триггер, пускай, то у него начинает по-немногу отбавляться здоровье. А как только он сойдет с триггера, все прекращается. Подскажите, плз. :this:
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48583 · Ответов: 5109 · Просмотров: 854,600

DraX
Отправлено: Aug 22 2005, 14:05


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Тему про архив локаций не читал, потому что не нашелю :xz:
А идея по поводу архива скриптов лично моя.
Хотя... почему мы нам не создать общий архив. Там будут и локации, и модули, и скрипты, и текстуры, и модели... :crazy:
Почему нельзя? Это же будет колоссальный ход! :xz:

Добавлено в [mergetime]1124708867[/mergetime]
Валеско
Вот! Правильно человек говорит. :good:
Архив нам нужен. Это 200%.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48580 · Ответов: 23 · Просмотров: 27,921

DraX
Отправлено: Aug 22 2005, 13:30


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Как-то надо было мне найти парочку хороших скриптов для моего модуля. И вот я задался поиском в Инетренете. Искал, искал... Примерно через час набрел я на nwvault... И все!! :swoon:
"Круто!", - подумал я. Как так? На английском сайте есть, а где ж на русском? А потом мне и пришла в голову эта идея.
Идея такова. А что, если бы на сайте WRG! появился свой архив скриптов с последующим к ним описаниям. Зачем же добру пропадать? :xz:
Есть множество людей, которые в корень не понимают английского. Еще больше, кто плохо его понимает. А если бы у нас появился б архив, сайт стал бы более знаменитым. Повышение рейтинга! 2 козыря - форум и архив. По-моему, это было бы вполне презентабельно. Да и круто!

ЗЫ: Прошу слишком сильно не бить за такую идею и ругать не слишком сильно. Просто думал поделиться идеей с друзьями :D

Sorry, если не в тему. Более подходящих не нашел.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48577 · Ответов: 23 · Просмотров: 27,921

DraX
Отправлено: Aug 22 2005, 12:31


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Большое всем спасибо!!
Установил ХП - все поперло! :yahoo:
А с DirectX'ом я что-то творил, было времечко :crazy:

ЗЫ: Zirrex За ремарку спасибо! Клава глючная :D
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #48574 · Ответов: 3359 · Просмотров: 637,849

DraX
Отправлено: Aug 12 2005, 13:53


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


А я скрипты пишу. Вот так простенько и пишу. Потихоньку, особенно важные скрипты (когда у тебя скрипт больше, чем преславутый nw_i0_generic, лучше просто сесть и минут 5 обдумать ситуацию).
Так ж модуль творю, правда совсем один :cray: . Планируется 3 части, хотя еще не известно, будут ли они (делать модуль одному очень, ОЧЕНЬ трудно)

ЗЫ: Кстати, первую часть даделал на 50%. Ради прикола посчитал кол-во скриптов. Очень долго смеялся -> 197 шт. :lol:
  Форум: Главный Зал · Просмотр сообщения: #47759 · Ответов: 83 · Просмотров: 61,144

DraX
Отправлено: Aug 12 2005, 13:26


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Кто заинтересован, могу помочь в скрипте. Для примера, могу со сценкой помочь или еще что по-сложнее. Чем сложнее, тем интересней :)

ЗЫ: Для справок, живу в Бресте.
  Форум: Главный Зал · Просмотр сообщения: #47757 · Ответов: 301 · Просмотров: 209,905

DraX
Отправлено: Aug 12 2005, 13:06


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Хочу спросить, можно ли каким-либо способом контролировать время движения камеры, кроме как скоростями (CAMERA_TRANSITION_TYPE) или нет? Если нет, то начать ли мне делать ее? Заранее спасибо.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #47756 · Ответов: 219 · Просмотров: 264,782

Важно! Скрипты
DraX
Отправлено: Aug 12 2005, 12:25


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Exectrix
Вот примерный скрипт. B OnDamage (хотя точно и не уверен) напиши:

Neverwinter Script Source
ExecuteScript("имя скрипта", GetFirstPC());

, где "имя скрипта" имя сохраненного тобой следующего скрипта. Вот он:

Neverwinter Script Source
int nMax = GetMaxHitPoints(OBJECT_SELF);
int nCur = GetCurrentHitPoints(OBJECT_SELF);
int nTwenty = (nMax / 100) * 20// 20%  от общего хит-поинта  :D

// Проверка. Тебе нужно 20% - пожалуйста
if(nCur <= nTwenty && GetRacialType(OBJECT_SELF) == НУЖНАЯ_РАССА)
{
  int nAppearance = GetAppearanceType(OBJECT_SELF); // Как сказал товарищ Tiger - запомним  // облик
  object oEnemy = GetNearestObject(OBJECT_TYPE_CREATURE, OBJECT_SELF);

  if(GetDistanceToObject(oEnemy) < 3.0 && GetIsObjectValid(oEnemy))  // Тут сам смотри какой // радиус тебе нужен
    SetLocalInt(OBJECT_SELF, "START_ATTACK", TRUE);
}


А затем в OnHeartbeat ставим следующее:
Neverwinter Script Source
if(GetLocalInt(OBJECT_SELF, "START_ATTACK") == TRUE)
  {
    object oEnemy = GetNearestObject(OBJECT_TYPE_CREATURE, OBJECT_SELF);

    if(GetDistanceToObject(oEnemy) < 3.0)
    {
          int nAppearance = GetAppearanceType(OBJECT_SELF);
          SetCreatureAppearanceType(OBJECT_SELF, НУЖНЫЙ_ВИД);

          ActionAttack(oEnemy); 
    }
    else
    {
          SetCreatureAppearanceType(OBJECT_SELF, nAppearance);
          ClearAllActions();
          SetLocalInt(OBJECT_SELF, "START_ATTACK", FALSE);
    } 
  }


ЗЫ: Если найдете ошибку, говорите или пишите на mail. Когда я это писал, ей-богу, голова болела страшно :shout:
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #47754 · Ответов: 3670 · Просмотров: 702,418

DraX
Отправлено: Aug 12 2005, 11:16


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Нет проблем. Итак, вот он, скрипт:

Neverwinter Script Source
if(GetLocalInt(OBJECT_SELF, "DO_ONCE") != 1)
{
string sTag = "OBJECT"// Тэг нужного нам объекта
num nNum = 1// Начинаем считать объекты с номера 1 по нужный нам

for(nNum = 1; nNum <= 4; nNum++)  // Номер 4 - кол-во объектов
{
  int nNum2 = nNum++;

  if(nNum2 > 4)
    nNum2 = 1;

  object oStart = GetObjectByTag(sTag + "_" + nNum);
  object oEnd = GetObjectByTag(sTag + "_" + Num2);

  ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectBeam(VFX_BEAM_FIRE, oEnd, BODY_NODE_CHEST), oStart);
}

SetLocalInt(OBJECT_SELF, "DO_ONCE", 1);
}


Спасибо, Aiwan. Этот скрипт и вправду лучше - не загружает систему и более обширней в применении. Ставить на OnHeartbeat локации или триггера.

ЗЫ: Сорри за опечатки
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #47751 · Ответов: 111 · Просмотров: 457,346

DraX
Отправлено: Aug 11 2005, 10:42


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Маленькая проблемка. :this:
При загрузке тулсета появляется ошибка. Пишет про глюк в файле "kernel32.dll". Я это пропускаю. Но когда я запускаю любую созданную локацию, выводится вторая ошибка: "Floating point division by zero", кажется так. После нее напрочь пропадает курсор мыши, тулсет отказывается закрываться, ни один объект не загружается... В общем, виснет полностью. В чем может быть проблема? :vava:
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #47663 · Ответов: 3359 · Просмотров: 637,849

DraX
Отправлено: Aug 8 2005, 16:02


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


Спасибо Aiwan! Бегу качать... :)
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #47479 · Ответов: 219 · Просмотров: 264,782

Важно! Скрипты
DraX
Отправлено: Aug 8 2005, 12:52


Level 3
*

Группа: Newbie
Сообщений: 30
Регистрация: 31.07.2005
Пользователь №: 1,344


2 DEM
Если хочешь, мож добавить к скрипту Zirrex'а проверку на локацию. Допустим, когда с боссом сражаесся, ты убит, а спауна ма! Или ты пришел в другой город в храм к кокому-нибудь монаху, а он дает гарантию, что если ты умрешь в ближайших лес, то твоя душонка (грешная или нет) возвратится в этот храм (возвращение не бесплатное. А как же! :D ). Придется менять локации. Вот тебе волшебнай проверка:
Neverwinter Script Source
string sArea = GetTag(GetArea(GetLastDied())); // Вот насчет GetLastDied() точно не помню
                      // чет типа того там есть
  if(sArea == "тег локации")
{
  // А дальше просто меняешь вэйпоинт регенерации
}

Так сказать, маленькое дополнение к скрипту. ГЫ!

2 Zirrex
RESPECT! :good:
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #47461 · Ответов: 3670 · Просмотров: 702,418

2 страниц V   1 2 >

Есть новые сообщения  Открытая тема (есть новые ответы)
Нет новых сообщений  Открытая тема (нет новых ответов)
Горячая тема (есть новые сообщения)  Горячая тема (есть новые ответы)
Горячая тема (нет новых сообщений)  Горячая тема (нет новых ответов)
Опрос (есть новые голоса)  Опрос (есть новые голоса)
Опрос (нет новых голосов)  Опрос (нет новых голосов)
Тема закрыта  Закрытая тема
Тема перемещена  Тема перемещена
 

Текстовая версия Сейчас: 16th April 2024 - 13:29