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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 138 139 140 141 142 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Ollone5
сообщение Sep 24 2011, 20:06
Сообщение #3476


Level 5
**

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



(IMG:http://vnmedia.ign.com/nwvault.ign.com/fms/images/hakpaks/3584/1114981188_thumb.jpg)

Здесь (IMG:style_emoticons/kolobok_light/declare.gif) !
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
ReZkiy
сообщение Sep 24 2011, 20:09
Сообщение #3477


Level 5
**

Класс: Вор
Характер: Neutral Good
Раса: Человек



76 мегабайт (IMG:style_emoticons/kolobok_light/swoon.gif)
Но все равно спасибо!

Сообщение отредактировал ReZkiy - Sep 24 2011, 20:10
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ollone5
сообщение Sep 24 2011, 21:03
Сообщение #3478


Level 5
**

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



Цитата
76 мегабайт swoon.gif
Но все равно спасибо!

Ты конкретно скажи, (IMG:style_emoticons/kolobok_light/victory.gif) что тебя интересует. Я многое нашёл и ещё найду! (IMG:style_emoticons/kolobok_light/wizard.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Oct 15 2011, 04:40
Сообщение #3479


Тролль
****

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



Недавно пришлось придумать и использовать описанную ниже конструкцию из цикла с вложенным в него циклом (знаю что это может быть нехорошо, но для решения поставленной задачи другого оптимального варианта не нашел):..
Neverwinter Script
object oArea = OBJECT_SELF;
object oTarget;
int iInt;
string sInt;

iInt = 1;
sInt = IntToString(iInt);
while (GetIsObjectValid(GetWaypointByTag("WP_tag_"+sInt)))
      {
//(тело вложенного цикла)//////
      oTarget = GetFirstObjectInArea(oArea);
      while (GetIsObjectValid(oTarget))
            {
            if (oTarget == GetWaypointByTag("WP_tag_"+sInt))
               {
//-----------------------------
//(блок для тела условия)
//-----------------------------
               }
            oTarget = GetNextObjectInArea(oArea);
            }
///////////////////////////////
      iInt++;
      sInt = IntToString(iInt);
      }

…цикл рассчитан на универсальность использования при работе с последовательностью вейпоинтов переменной длины с заданным шаблоном тагов (WP_tag_1, WP_tag_2, WP_tag_3, WP_tag_iInt…); внутренний цикл отыскивает по тагу среди множества всех объектов на локации текущий (из внешнего цикла) вейпоинт с i-тым тагом и выполняет условие скрипта при нахождении.
Собсно вопрос: конструкция работоспособная, но в лог вызывает сообщение об ошибке (стандартное «СЛИЖКОМ МНОГО ИНСТРУКЦИЙ») – что может вызывать ошибку и в чем она?


Похоже сам себя перемудрил – внутренний цикл лишний и видимо он и вызывает ошибку. (IMG:style_emoticons/kolobok_light/crazy.gif)

Сообщение отредактировал Flaristan - Oct 15 2011, 05:19
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Oct 15 2011, 12:18
Сообщение #3480


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

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



Навскидку ошибки не нашёл (количество операций пропорционально количеству вейпоинтов помножить на количество объектов в локе - вероятно, это слишком дофига), но это извращение.
Neverwinter Script
int i = 2;
object oWP = GetWaypointByTag("WP_tag_1");
while (GetIsObjectValid(oWP))
{
      if(GetArea(oWP) == OBJECT_SELF)
      {
//какой-то код
      }

      oWP = GetWaypointByTag("WP_tag_" + IntToString(i));
      i++;
}
Почему бы не так?..

Сообщение отредактировал Ilerien - Oct 15 2011, 12:20
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Oct 16 2011, 01:39
Сообщение #3481


Тролль
****

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



Да, я так и исправил в посте – внутренний цикл можно просто удалить, а если префикс «tag» менять на уникальный для групп вейпоинтов/локация, то и условие «if(GetArea(oWP) == OBJECT_SELF)» там тоже ненужно. Просто долго извращался над скриптом, чтоб научить работать с переменным числом вейпоинтов и потом упрощал его до минимума слегка коряво. (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Anakondar
сообщение Oct 27 2011, 23:44
Сообщение #3482


Level 6
**

Класс: Друид
Характер: Chaotic Neutral
Раса: Гном



Чуть призадумался. Подскажите навскидку:

1. Поставил в OnDeath существ проверку:
Код
if (GetIsPC(oKiller)) GiveXPToCreature(oKiller, nXP);
else if (GetIsPC(GetMaster(oKiller)) GiveXPToCreature(GetMaster(oKiller), nXP);

в надежде, что стоящий в безопасной области визард будет качаться, когда на другом конце света фамильяр, которым управляет игрок, мочит монстру. Хрен-то там. Если убивает в той же области,где и отдыхает персонаж - опыт даётся, в другой - нет. Вай?

2. Хотел сделать такую фичу: друид преврящается в жЫвотное, и все окружающие звери начинают дружить его (и его энимал компаньона), друид преврящается в голема (шейпшифтом), и все окружающие големы начинают дружить его (и его энимал компаньона; последнее, конечно не натурально, можно пытаться исправить, но пока не мешает). Трабл в следующем: друид в звероформе и будучи дружественным к фракции энимал пробегает мимо гоблина (естественно врага). Гоблин его естественно тюкает по шкуре своими никчёмными гоблинскими лапами. Но друиду действия гоблина глубоко паралельны, ибо он реально бежит по делам. А вот дикому и ужасному зверю-еното-бобру из фракции энимал совсем не пофиг. Он подбегает к гоблину и говорит: "Ты на кого клешни поднял? На моего друга! Сейчас я тебе клешни твои пообломаю!". "Да ладно, не парься, друг, я не в обиде на него," - говорит друид. "Слушай да, беги куда бежал! Тут уже личное. Я ему точно вмажу!", - говорит боброенот. И вмазал. Гоблин в ответ, и ещё и братков своих позвал. Ну енот тоже не лох, своих друганов позвал. Лосе-черепаху там, чёткого мишку и других. В общем, разборка началась чисто конкретная, клык за клык, все энималы против всех гоблиноидов во всех локациях воюют. Шерсть, пух, чешуя только и летят. Комбат саунд даже в соседних модулях слышен, не то что в соседних локациях. Как с этим беспределом бороться, можно ли навалять одному этому козлу носатому, чтобы со всей бандой отношения не портить?

Сообщение отредактировал Anakondar - Oct 27 2011, 23:47
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Oct 28 2011, 06:52
Сообщение #3483


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

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



1. Навскидку не скажу, посмотри, что вернёт GetMaster(oKiller), когда маг и фам в разных локах.
2. Проблема во флажке Global, нужно его убрать в редакторе фракций, видимо, и для животных, и для гоблиноидов.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Oct 28 2011, 07:23
Сообщение #3484


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



2. Компьютер мой помер, пишу по памяти. Во-первых, помогают только френды, нейтралы (50 реп) в бой не лезут. Во-вторых, смотри скрипты аи, там может быть сдвиг репутации фракции. И, в-третьих, кури мануал, он тоже должен помочь. Про глобал-флаг уже сказали.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Anakondar
сообщение Oct 28 2011, 09:24
Сообщение #3485


Level 6
**

Класс: Друид
Характер: Chaotic Neutral
Раса: Гном



Цитата(Ilerien @ Oct 28 2011, 06:52) *
1. Навскидку не скажу, посмотри, что вернёт GetMaster(oKiller), когда маг и фам в разных локах.

Уже дня три назад добавил индикаторы этих чеков, но нвн запустить пока не удаётся ибо работа.

Цитата(Ilerien @ Oct 28 2011, 06:52) *
Проблема во флажке Global

Даже без него фракции друг друга звереют, в лайн оф сайт как минимум. Но я, пожалуй, готов предъявить жесткие требования к системе: НПС не воюют друг с другом никогда. Если нужно противное - использовать анимацию ударов и эффекты урона.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Oct 29 2011, 07:19
Сообщение #3486


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



Цитата
Но я, пожалуй, готов предъявить жесткие требования к системе: НПС не воюют друг с другом никогда.
Просто более внимательно изучи вопрос (IMG:style_emoticons/kolobok_light/smile.gif) Неписи - всего лишь компьютерные болванчики, работающие на скриптах, их можно настроить как угодно.
Цитата
Если нужно противное - использовать анимацию ударов и эффекты урона.
Нвн1, насколько мне известно, не даёт особо порулить анимацией. Это фишка нвн2.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Anakondar
сообщение Oct 29 2011, 09:04
Сообщение #3487


Level 6
**

Класс: Друид
Характер: Chaotic Neutral
Раса: Гном



Цитата(Ilerien @ Oct 28 2011, 06:52) *
1. Навскидку не скажу, посмотри, что вернёт GetMaster(oKiller), когда маг и фам в разных локах.


GetMaster(oKiller) возвращает персонажа, зато GetIsPC(GetMaster(oKiller)) возвращает FALSE. Всё работает в таком виде:
Код
        if (GetIsPC(oKiller))
        {
            if (GetIsPossessedFamiliar(oKiller)) oKiller = GetMaster(oKiller);
            GiveXPToKiller (oKiller, fXP);
        }
        return;


P.S.: GiveXPToKiller - моя внутренняя функция

Сообщение отредактировал Anakondar - Oct 29 2011, 09:05
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Dec 8 2011, 06:58
Сообщение #3488


Тролль
****

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



Работая с функцией ExecuteScript, столкнулся с парой таких интересных фактов:
- Лексикон категорически настаивает, что у этой функции нет задержки («ExecuteScript() has NO delay!» (с));
- компилятор тулсета же вполне нормально воспринял при пробе такую конструкцию, и на первый взгляд она даже правильно работала при тесте …но неожиданно стали возникать странные перебои в отсчете модульного времени.
Стало создаваться впечатление, что часы модуля отказывались идти вперед в тех локациях, где работала эта скриптовая конструкция. А когда персонаж их покидал – время делало резкий скачек к тому значению, которое оно должно было достигнуть естественным путем, нибудь тех сбоев.

Скрипт крепится на объекте, срабатывает при взаимодействии с PC и по задумке перезапускает сам себя через таймаут до тех пор пока на локации есть PC.
Код
object oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC, OBJECT_SELF, 1, -1, -1, -1, -1);
object oArea = GetArea(OBJECT_SELF);

if ((GetIsObjectValid(oPC))&&(GetArea(oPC) == oArea))
   {
   DelayCommand(100.0, ExecuteScript("script", OBJECT_SELF));
   }


Часто видел похожие проблемы со скачками времени в других онлайн-модулях. Кто знает – эти вещи действительно взаимосвязаны и лучше не делать таймаутов для ExecuteScript?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Dec 8 2011, 07:39
Сообщение #3489


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

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



Цитата
- Лексикон категорически настаивает, что у этой функции нет задержки («ExecuteScript() has NO delay!» (с));
Лексикон прав. ExecuteScript() вызывается без задержки (если не скормить ему эту задержку специально), а вызвавший его скрипт ждёт, пока тот не завершится.

Если это весь код, который перезапускается, то никаких лагов со свременем он вызывать не должен.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Dec 8 2011, 17:43
Сообщение #3490


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



Лаги со временем - фича движка нвн, появляется в зависимости от положения звёзд на небе. Особенно, если игроков немало зашло. На геме в 2005м время тормозило даже в локациях без скриптов.

Вирусман вроде фикс делал (да, нвнх). Вариант попроще - на модульный хб раз в минуту (или игровой час, не помню как там нвн показывает) вручную время ставить.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valeroy
сообщение Feb 5 2012, 03:05
Сообщение #3491


Level 2
*

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



Как сделать, чтобы мобы возрождались после смерти спустя некоторое время?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Feb 5 2012, 09:11
Сообщение #3492


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



Например, использовать систему энкаунтер-триггеров из тулсета, там вроде есть опция периодического спавна. Но в онлайне чаще используются аналогичные скриптовые системы, как правило самописные, они более гибкие (можно динамически менять списки мобов, подгружать их из базы и т.п.). Посмотри на волте что-то типа spawn system, этого добра там должно быть навалом.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valeroy
сообщение Feb 5 2012, 22:32
Сообщение #3493


Level 2
*

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



Цитата(denis0k @ Feb 5 2012, 10:11) *
Например, использовать систему энкаунтер-триггеров из тулсета, там вроде есть опция периодического спавна. Но в онлайне чаще используются аналогичные скриптовые системы, как правило самописные, они более гибкие (можно динамически менять списки мобов, подгружать их из базы и т.п.). Посмотри на волте что-то типа spawn system, этого добра там должно быть навалом.

А есть готовый скрипт на spawn монстров, но в котором можно будет менять монстров, и время spawna, спавн убудет делаться для онлайна, сам со скриптами не умею работать, по возможности если есть скрипт допишите с нормальный разяснением, чтобы человек не пользовавшийся скриптами понял
Автор:::::::::::::::::Milez:::::::::::::::::::::::
:::::::
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Feb 6 2012, 07:20
Сообщение #3494


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



На волте и есть готовые скрипты. Но без знания скриптового языка всё равно ничего не сделать. Нельзя же читать, не зная букв, или решать дифференциальные уравнения, не зная математики.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Feb 6 2012, 13:58
Сообщение #3495


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

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



Чем, кстати, не устраивают обычные встречи? там можно настраивать мобов и их кол-во, даже генерацию от того какой фракцией наступаешь.


Сообщение отредактировал Melisse - Feb 6 2012, 13:59
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valeroy
сообщение Feb 6 2012, 21:20
Сообщение #3496


Level 2
*

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



В смысле встречи?
Если ставить триггеры, то респ я так понимаю будет происходить, если на него снова наступить, получается надо будет всех информировать, что при входе снова в локацию, будет респ мобов, и ставить триггер как раз на входе, или может я что то не понимаю?
Потом допустим если мне нужно поставить моба где нибудь на возвышении гор одного, как я это сделаю с триггером, он респаться будет на каком растоянии..
У меня просьба, если кто делал скрипты на спавн мобов с пропись разных мобов, чтобы их можно было поменять на других, ну тоесть на любых других какие будут в модуле, и время через каторое будет респ, я в скриптах почти 0, а разбиратся в них просто времени нет работаю много, если кто напишет, потом обязательно договоримся$$$
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Feb 7 2012, 04:15
Сообщение #3497


Тролль
****

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



Цитата(Flaristan @ Jan 8 2012, 16:14) *
Рекомендую - для написания тривиальных эвентов и в качестве удобного пособия примеров для изучения NWN-скриптинга.

Запускаем тулсет, открываем нужную локацию, открываем вкладку с монстрами и жмем кнопку «редактировать и копировать» на понравившемся, делаем что хотим с этим монстром и создаем ему уникальный резреф в конце сохраняя в кастомной своей палитре, копируем этот резреф себе в сторонку.
Скачиваем скрипт генератор, запускаем, выбираем (в окошке вверху слева) тип скрипта «нормальный скрипт», выбираем источник запуска скрипта «ПС входит куда-то», отменяем спец условие, выбираем из списка скриптовых эвентов «сделать если ЭТО тогда ТО условие» и жмем кнопку «скрипт»:
- выбираем тип условия «проверить локальную целочисленную»;
- вводим в поле название для нашей переменной (ну например MONSTER_SPAWN_CHECK);
- выбираем галочку на условие «точно равно»;
- выставляем значение «0»;
- жмем «ок»;
выбираем из списка скриптовых эвентов «спавн созданий» и жмем кнопку «скрипт», заполняем поля:
- «резреф» (копируем его из описалова монстра которого хотим спавнить);
- визуальный эффект спавна (можно не трогать);
- точка спавна – по вейпоинту (указываем таг нашего вейпоинта);
- действия создания при респавне – выбираем «без действия»;
- жмем «ок – выход»;
выбираем из списка скриптовых эвентов «установка локальных переменных» и жмем кнопку «скрипт»:
- выбираем тип переменной «целочисленная» и ставим соответствующий флажок (integer);
- вводим в поле название нашей переменной упомянутое блоком выше (в примере MONSTER_SPAWN_CHECK);
- устанавливаем ее в значение «1»;
- жмем «ок – выход»;
жмем кнопку «окончить текущие если», выбираем вариант «просто закончить», жмем кнопку «закрыть», видим в окошке наш сгенерированный скрипт и комент «поместите на OnEnter»:
Код
//Put this script OnEnter
void main()
{
object oPC = GetEnteringObject();
if (!GetIsPC(oPC)) return;
if (GetLocalInt(oPC, "MONSTER_SPAWN_CHECK")== 0)
   {
   oTarget = GetWaypointByTag("TAG_OF_WAYPOINT ");
   lTarget = GetLocation(oTarget);
   oSpawn = CreateObject(OBJECT_TYPE_CREATURE, "resref_of_creature", lTarget);
   SetLocalInt(oPC, "MONSTER_SPAWN_CHECK", 1);
   }
}

копируем все это дело, жмем «свойства локации» в тулсете, открываем вкладку «события» и ищем окошко «OnEnter», жмем кнопочку чуть правее чтоб открыть редактирование скрипта на этот триггер и вставляем туда этот скопированный из генератора скрипт и сохраняем его под оригинальным именем, ставим на локации вейпоинт упомянутый в скрипте с упомянутым оригинальным тагом («TAG_OF_WAYPOINT» или что там придумается) – это будет точка спавна упомянутого монстра (резреф которого не забываем указать посмотрев в своей кастомной палитре в свойствах монстра).
Жмем в генераторе скриптов кнопку «очистить для нового скрипта», «ок», снова выбираем тип скрипта «нормальный», выбираем стартер «ПС разрушивает/убивает монстра или плейсебл», выбираем че будет если убьет последователь – «отразится на ПС», отменяем наличие спец условия, выбираем из списка скриптовых эвентов «установка локальных переменных» и жмем кнопку «скрипт»:
- выбираем тип переменной «целочисленная» и ставим соответствующий флажок (integer);
- вводим в поле название нашей переменной упомянутое блоками выше (в примере MONSTER_SPAWN_CHECK);
- устанавливаем ее в значение «0»;
- жмем «ок – выход»;
жмем кнопку «закрыть», видим и копируем наш сгенерированный скрипт с пометкой «поместить на OnDeath»:
Код
//Put this script OnDeath
void main()
{
object oPC = GetLastKiller();
while (GetIsObjectValid(GetMaster(oPC)))
   {
   oPC=GetMaster(oPC);
   }
if (!GetIsPC(oPC)) return;
SetLocalInt(oPC, "MONSTER_SPAWN_CHECK", 0);
}

копируем это дело и жмем свойства нашего кастомного монстра с упомянутым резрефом в нашей кастомной палитре, выбираем пункт «событий» и находим триггер «OnDeath», жмем справа чтоб редактировать скрипт и вставляем наш скопированный сохранив его под оригинальным названием.

Итого: имеем локацию; на ней точку респавна монстра (наш вейпоинт); и скрипт на входе в локацию который проверяет игрока в нее входящего на локальную переменную – если игрок уже убивал нашего оригинального монстра или еще не был на этой локации, значит новенький и целенький монстр появится в указанной точке при входе, если уже заходил в локацию но монстра еще не убивал, значит спавнить нового не будем.

Система будет отлично работать для синглплеерного спавна монстра – для мультиплеерного как правило они сложнее и индивидуальнее.

Сообщение отредактировал Flaristan - Feb 7 2012, 04:19
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Feb 7 2012, 07:27
Сообщение #3498


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



Valeroy, скажу грубовато, но прямо - во всём нужно разбираться. Если ничего не изучать самому, а только просить сделать другого и показать, где тут настройки, ничего у тебя не выйдет. Для начала могу посоветовать, как бы странно ни звучало, - погуглить про нвн тулсет. Когда я начинал (лет 9 назад, с сингловых модулей), с интернетом было туго, да и форума этого вроде не было вообще, однако я нашёл себе статьи по тулсету с разжёвыванием всего и вся. Даже кастом контент зацепили. Кажется, они были на сайте либо игромании, либо лки.

Когда выкуришь мануалы с элементарными основами, у тебя не будет вопросов по поводу того, как работает тот же триггер встреч. Скрипты да, в полной мере понятны далеко не всем, но уж выучить настройки плейсов, итемов и триггеров ума много не надо. До кучи, стоит распотрошить все модули под рукой (первым делом - кампанию). К слову, нордок (по крайней мере его версия, доступная для скачивания) в качестве спавнера использует как раз-таки самые обычные триггеры. Гем1 в своё время тоже использовал триггеры для спавна.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Alian REXis
сообщение Feb 7 2012, 08:27
Сообщение #3499


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

Класс: Обыватель
Характер: True Neutral
Раса: Человек
NWN: Модмейкер
Начало Войны



Valeroy, есть тут на форуме такая штука как база скриптов, страница 2 пятый сверху.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valeroy
сообщение Feb 7 2012, 15:03
Сообщение #3500


Level 2
*

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




Место где появится новый NPC определяется путём выставления вэйпоинтов с названием типа "WPR_"+ тэг_умершего_NPC. Если в начале тэга NPC стоит "NPC_", то эти четыре символа отрежутся.

Может кто нибудь разжевать?

Flaristan спасибо тебе огромное, приду домой буду пробовать, а на мультиплеер разве не пойдут такие скрипты?

А как сделать допустим, чтобы было 4 сундука на боссе и в каждом сундуке были вещи, около 5-7, на каждый класс, и еще чтобы после каждого появления босса вещи тоже появлялись в сундуках, но уже другие, ну с небольшим добавлением
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 138 139 140 141 142 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



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