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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
146 страниц V  < 1 2 3 4 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
2GoDoom
сообщение May 6 2004, 14:24
Сообщение #26


Level 11
***

Класс: Обыватель
Характер: True Neutral
Раса: Человек
NWN: Маппинг



Заинтерисовала идея Элвен Кинга... Начал реализовывать...
Атакует не из хайда (хотя в хайд на долю секунды уходит - когда двигается ко мне - из хайда опять же выходит).
Не подскажите как написать чтобы моб из хайда долбил?
Код писал сам. (IMG:style_emoticons/kolobok_light/smile.gif)
Код

//Ставиться в OnPerception (При замечении).
void main()
{
object oPC = GetLastPerceived(); //Определяем Объект как ПОСЛЕДНИЙ УВИДЕННЫЙ
if(GetIsPC(oPC)) //Проверяем является увиденный объект ПС
{
ClearAllActions(FALSE); //Убираем все действия из списка действий к моба (кроме АТАКИ - если он уже дерется)
ActionUseSkill(SKILL_HIDE,OBJECT_SELF); //Моб уходит в хайд
ActionWait(1.5); //Ждет долю секунды
ActionMoveToObject(oPC, FALSE, 1.0f); //Медленно двигается к ПС
ActionAttack(oPC, FALSE); //Атакует (Агрессивно)
} else
{
ActionSpeakString("Хух, напугал!", TALKVOLUME_TALK); //Если это не ПС говорит фразу "Хух, напугал!" в talk (разговор).
}
}


Моб - гоблин, 7 вора и 1 шадоуденсер.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение May 6 2004, 18:25
Сообщение #27


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Попробуй через SetSpawnInCondition(NW_FLAG_STEALTH_MODE); вроде так пишется...

А еще у тебя ошибка в определении Perception. Надо делать дополнительную проверку на GetIsPerseptionSeen();.

GetLastPerceived срабатывает, когда объект увиден-услышан-перестал быть видимым-перестал быть слышимым. Поэтому надо дополнительно проверять.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2GoDoom
сообщение May 7 2004, 10:12
Сообщение #28


Level 11
***

Класс: Обыватель
Характер: True Neutral
Раса: Человек
NWN: Маппинг



Окей, спасибо! (IMG:style_emoticons/kolobok_light/smile.gif)
Будем разбираться дальше (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Plut
сообщение May 10 2004, 19:53
Сообщение #29


Стилспатер
**

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



Народ, всвязи с моим не оч хорошим знанием правил AD&D, разъясните глупому, как правильно кидаются кости. Например, на убеждение при диалоге.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2GoDoom
сообщение May 10 2004, 21:49
Сообщение #30


Level 11
***

Класс: Обыватель
Характер: True Neutral
Раса: Человек
NWN: Маппинг



хм... На убеждение при диалоге? Это типа в тех что в Сингле? (обычно кубики там кидаются как укажешь). (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Plut
сообщение May 10 2004, 23:04
Сообщение #31


Стилспатер
**

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



Цитата
обычно кубики там кидаются как укажешь

Вот это я как раз понял. Существуют ли какие-то ограничения, кроме здавого смысла, по поводу того, сколько у какого перса могет быть конретного скилла (типа Persuade)?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение May 12 2004, 00:26
Сообщение #32


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Это система зовется d20(). Кидается d20() + скилл, против d20() непися.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2GoDoom
сообщение May 13 2004, 16:41
Сообщение #33


Level 11
***

Класс: Обыватель
Характер: True Neutral
Раса: Человек
NWN: Маппинг



Ага...

Цитата
Вот это я как раз понял. Существуют ли какие-то ограничения, кроме здавого смысла, по поводу того, сколько у какого перса могет быть конретного скилла (типа Persuade)?

Если я понял - это имеется ввиду какие ограничения на скилл? (IMG:style_emoticons/kolobok_light/smile.gif)
Когда я ДМил, через Лето повышал себе все статы - помойму 125 - максимум (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Sir_Sarles
сообщение May 25 2004, 20:55
Сообщение #34


Level 2
*

Класс: Рейнджер
Характер: Lawful Good
Раса: Человек



1. Как попросить своего вора обокрасть какого-нибудь гражданина?

А как самому обокрасть его? Я воров обычно не перевариваю, но сделал
как-то для проверки вора 15 уровня, нарастил ему воровство по максимуму,
а все равно при попытке ограбить происходит облом.


(Спросил в другом месте, но тут вроде более по теме)
Как сделать так, что бы sir/madam (и т.п.) выдавали не "sir" или "мадам",
а другие определенные мной слова?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 25 2004, 21:20
Сообщение #35


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата
Как сделать так, что бы sir/madam (и т.п.) выдавали не "sir" или "мадам",
а другие определенные мной слова?

Это надо делать свои <CUSTOM>, насколько я знаю. Но я их не делал, посему звиняй. Жди БДа или Лекса с Баалом.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Sir_Sarles
сообщение May 26 2004, 08:24
Сообщение #36


Level 2
*

Класс: Рейнджер
Характер: Lawful Good
Раса: Человек



Конкретизирую про вора:
У вас есть хенчмен Томми. Вы сами воровать не умеете.

1) Вы говорите "Томми, проверь этого господина". И он кидается
проверять господина, на которого укажешь мышкой. Либо, если это невозможно,
то он сам определяет ближайшего господина в радиусе 1-5 метров либо
вообще ближайшего. Примерно так.

2) Дополнительное условие - чтобы не было
обломов. То биш Томми, получив приказ, кидает кости. Если результат не в его
пользу, то он говорит "облом, сир". Если нормально, то {ворует колечко и т.д.}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение May 28 2004, 01:11
Сообщение #37


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Сарлес, я когда-то начинал писать эту системку, но боюсь не дописал и она де-то у меня потерялась... На самом деле здесь ничего сложного нет. Один диалоговый скриптик средних размеров. Скажу сразу, кликать мышой, указывая цель вора, не получится. Придется делать что-то вроде "поиска ближайшего нейтрала к PC" и броски костей. Сам я сейчас не сяду писать этот скрипт (банально нет времени), ты уж попробуй сам. Что будет в упор непонятно - спрашивай. Если надо могу расписать по броскам:
[d20 + скилл PickPocket за вора] против [d20 за непися].
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Sir_Sarles
сообщение May 29 2004, 22:28
Сообщение #38


Level 2
*

Класс: Рейнджер
Характер: Lawful Good
Раса: Человек



Как называются функции "украсть что-то у кого-то" и "получить результат броска?"
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Osiris
сообщение May 30 2004, 16:31
Сообщение #39


Level 7
**

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Тексты



Начал разбираться в днём и ночью. в OnSP простолюдинов повесил скрипт


#include "NW_O2_CONINCLUDE"
#include "NW_I0_GENERIC"

void main()
{
SetSpawnInCondition(NW_FLAG_DAY_NIGHT_POSTING);
SetSpawnInCondition(NW_FLAG_IMMOBILE_AMBIENT_ANIMATIONS);
SetSpawnInCondition(NW_FLAG_ESCAPE_RETURN);
SetListeningPatterns();
WalkWayPoints();
}

Осталось дело за малым, создать дневные и ночные POST-ы, а вот как это сделать я не понимаю. Помогите пожалуйста.

Спасибо.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение May 30 2004, 17:11
Сообщение #40


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Sir_Sarles А зачем тебе это???
ActionUseSkill(SKILL_PICKPOCKET, ...), но я бы писал собственную функцию с ActionTakeItem(...) с посылом далее кастомного Event'а этому неписю, у которого крадут. Этот эвент и сам процесс кражи обрабатывается уже само собой неписем (можно даже подвязать к OnDisturb непися). Результат броска делаешь сам, внешний. Пример:
Код

if (d20() < d20() + скилл кражи хенча)
{
....... кража удачна
}
else
{
....... облом-с
}


Osiris
Ставишь пост с таким тэгом:
Дневной - POST_[тэг непися]
Ночной - NIGHT_[тэг непися]

Можно тоже самое сделать с вейпами (чтобы ходили по-разному днем и ночью)
Дневной - WP_[тэг непися]_[номер вейпа]
Ночной - WN_[тэг непися]_[номер вейпа]

Само собой это все без квадратных скобок. (IMG:style_emoticons/kolobok_light/wink3.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Sir_Sarles
сообщение May 30 2004, 18:29
Сообщение #41


Level 2
*

Класс: Рейнджер
Характер: Lawful Good
Раса: Человек



В моем модуле, у одного типа есть кольцо регенерации, которое следует украсть. (IMG:style_emoticons/kolobok_light/smile.gif) На весь модуль это единственный предмет, поддающийся краже, поэтому надо бросить игроку подсказку на эту тему. (IMG:style_emoticons/kolobok_light/smile.gif)
Спасибо, попробую разобраться
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение May 30 2004, 23:39
Сообщение #42


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Тогда 100% тебе надо писать единичный (не универсальный скрипт!). Это проще. Ты можешь вообще привязаться жестко к скиллу игрока или хенча и написать скрипт через диалог, всплывающий в том месте локи, де ты планируешь украсть это кольцо. Через триггер всплывет (IMG:style_emoticons/kolobok_light/wink3.gif) . Помоему проще и быстрее всего. В конце диалога проверка скиллов и прочего и соответственно результирующие ветки. Удачи! (IMG:style_emoticons/kolobok_light/wink3.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Doc Feert
сообщение Jun 3 2004, 19:35
Сообщение #43


Level 5
**

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



Вот здесь есть пара скриптов.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Auren
сообщение Jun 8 2004, 19:59
Сообщение #44


Сивоха
***

Класс: Некромант
Характер: Lawful Evil
Раса: Человек



Вот вопрос. Какая функция(если такая есть) возвращает тип робы. Вообщем ситуация такая: нужен скрипт, который запрещал бы использование предмета, если на ПС одета роба не первого типа.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Doc Feert
сообщение Jun 11 2004, 15:41
Сообщение #45


Level 5
**

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



Такой функции нет.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elven king
сообщение Jun 11 2004, 19:06
Сообщение #46


Level 12
****

Класс: Мастер Оружия
Характер: Lawful Good
Раса: Эльф
NWN: Маппинг



Нужен ну ооочень простой скрипт, но я не знаю как его сделать (IMG:style_emoticons/kolobok_light/smile.gif)
Вобщем игрок наступает на тригер и у него начинается разговор с неписем (это я знаю как сделать)
После разговора этот тригер должен удаляться для того чтобы повторное наступление на тригер не привело к повторному разговору, как это сделать?

Сообщение отредактировал Elven king - Jun 11 2004, 19:07
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 11 2004, 19:28
Сообщение #47


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

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



удали триггер сразу после наступания
Добавлено в [mergetime]1086971357[/mergetime]
те так:
.....
AssignCommand(oNPC,ActionStartConversation(..));
DestroyObject(OBJECT_SELF,0.5);
.....
Добавлено в [mergetime]1086971480[/mergetime]
надеюсь система триггер-диалог у тебя универсальна, не под каждого НПС отдельный скрипт?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elven king
сообщение Jun 11 2004, 19:58
Сообщение #48


Level 12
****

Класс: Мастер Оружия
Характер: Lawful Good
Раса: Эльф
NWN: Маппинг



Нет, скрипт вобще так выгледет:
Код
void main()
{
object oPC = GetEnteringObject();
object oNPC = GetObjectByTag("TAG_SIGILSTUDENT");
if (GetIsPC(oPC))
{
AssignCommand(oNPC, ActionMoveToObject(oPC, FALSE));
AssignCommand(oNPC, ActionStartConversation(oPC));
DestroyObject(OBJECT_SELF,0.5);
}
}

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

Сообщение отредактировал Elven king - Jun 11 2004, 19:58
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 11 2004, 20:13
Сообщение #49


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

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



из
object oNPC = GetObjectByTag("TAG_SIGILSTUDENT");
сделай
object oNPC = GetNearestObjectByTag(GetTrapKeyTag(OBJECT_SELF));

тогда этот скрипт будет для любого НПС, если в поле KeyTag ты запишешь ТЭГ нужного тебе НПС для ДАННОГО тригера
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 12 2004, 07:55
Сообщение #50


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Elven king вот простое решение твоей проблемы.

Код

void main()
{
object oPC = GetEnteringObject();
object oNPC = GetObjectByTag("TAG_SIGILSTUDENT");
if (GetIsPC(oPC) && !GetLocalInt(OBJECT_SELF, "STOP"))
  {
  SetLocalInt(OBJECT_SELF, "STOP", TRUE);
  AssignCommand(oNPC, ActionMoveToObject(oPC, FALSE));
  AssignCommand(oNPC, ActionStartConversation(oPC));
  }
}

Удаление триггера черевато боком (IMG:style_emoticons/kolobok_light/lol.gif) Может рухнуть набор акций, если у тебя длинный код.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

146 страниц V  < 1 2 3 4 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 25th April 2018 - 06:08