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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
205 страниц V  « < 30 31 32 33 34 > »   
Ответить в эту темуОткрыть новую тему
> Вопросы новичков, Абсолютные глупости
Leon PRO
сообщение Jan 6 2005, 20:31
Сообщение #761


Ушедший на войну
Иконки Групп

Класс: Маг
Характер: Chaotic Good
Раса: Человек
NWN: Контент



QUOTE
Вот и не надо ля-ля, я это по 10 раз на дню делаю.

Читай внимательнее, я же не тебе это говорил!
Человек первый раз залевший в ЭТО может испортить.
МОжет просто ты это сделаешь, и отошлешь ей готовый вариант ?

Эмм... что у тебя за ГФФ эдитор такой странный ? Уж не с ярлычком-ли зеленого цвета ? Если он, то тогда
QUOTE
Открываем модуль NWN Packer'ом. Выдергиваем module.ifo
Сохраняем этот файл где нибудь на жестком диске.
Не закрывая NWN Packer, запускаем GFF Editor.
Открываем в нем наш module.ifo.
Открываем списочек и ищем Mod_MinGameVer
Видим там.. Ну я например сейчас вижу 1.62
Меняем на ту версию какую нам надо. Сохраняем module.ifo.
Закрываем GFF Editor. И перетаскиваем только что сохраненный нами module.ifo в еще не закрытый нами модуль в NWN Packer'е. Он спрашивает заменить файл? Отвечаем да, и сохраняем модуль - вуаля!

Можно сделать проще - раскрыть с помощью erf-пакера, встроенного в него, далее правым кликом переслать ifo в gff-пакер, встроенный в него-же, и сделав там-же изменения, снова вернуть в erf пакер, остается только сохранить...

Сообщение отредактировал Leon PRO - Jan 6 2005, 20:35
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Jan 6 2005, 21:25
Сообщение #762


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



Leon PRO нет, не с ярлычком зеленого цвета. С ярлычком это NWN ERF/GFF Editor.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jan 6 2005, 23:01
Сообщение #763


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

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



QUOTE (Leon PRO @ Jan 6 2005, 03:03)
Пока не выйду на работу никому не смогу прислать плагин.

Я стою в твоем списке первым. :D
QUOTE (Leon PRO @ Jan 6 2005, 03:03)
На счет dds. Ставьте спец. плагин для Explorer-а от nVidia и тогда их можно будет видеть в качестве превьюшек прямо в виндах - самый удобный способ.

ССЫЛКУ!
QUOTE (Leon PRO @ Jan 6 2005, 03:03)
Я пока делал своего коня в нвн раз 20 подвешивал!!! игру. Возможно какие-то конфликты.

Обана :D Дай посмотреть!
QUOTE (fali @ Jan 6 2005, 13:09)
Теперь поняла. Нужно было изменение внутри тега ссылки делать, а не снаружи, как в html делают. =) Всё работает. :)

Да в принципе ничего не нужно делать то. Напиши свой текст и потом выдели его и жамкай по кнопкам. Все тэги встанут сами.

п.с. Хм, приятно черт побери не успевать отвечать на вопросы :D в хорошем смысле слова...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Leon PRO
сообщение Jan 6 2005, 23:28
Сообщение #764


Ушедший на войну
Иконки Групп

Класс: Маг
Характер: Chaotic Good
Раса: Человек
NWN: Контент



Сегодня жизнь перешла на новую волну, отраженную в потоке мыслей. Поэтому сегодня решил помочь чем еще могу. У меня тут в клубе на всех 24 машинах лежит чуть-ли не полнейший инструментарий... Если админ не будет ломаться и подключит оба мои винта в 160Гб (с которыми я не расстаюсь после "ухода" компутера), то ждите этой ночью кучу слитых с них тулзов. Я пошел к Админу =)

Сообщение отредактировал Leon PRO - Jan 7 2005, 00:58
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Proydoha
сообщение Jan 6 2005, 23:47
Сообщение #765


Level 4
**

Класс: Маг
Характер: Chaotic Good
Раса: Эльф



ВОПРОС
Как увеличить дальность обзора?

ОТВЕТЫ
Полностью убрать нельзя.
edit -> area properties -> visual -> customize environment
Можно поставить 500-1000, но тогда сильно увеличится затрата ресурсов игрой (лагать будет).


Сообщение отредактировал Twin - Jan 7 2005, 03:42
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Jan 7 2005, 00:44
Сообщение #766


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



Здраствуйте, я вот тут захотел сделать простейший стат. квест, но в этом я полный 0. :vava:
1)Как сделать чтобы при первом разгооре игрока с НПС показывался один диалог
2)После первого разговора включался второй диалог.
3)Как сделать проверку на наличие предмета у игрока.Например ели у игрока есть например ключ ему включался определеный диалог(тоесть вот смотри пункт 2, идет второй диалог. и там спрашивають.ты добыл ключ? говориш да, и делаеться проверка на наличие)
4)После того как квест выполнен включался следующий диалог

Сообщение отредактировал baskan - Jan 7 2005, 00:44
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Jan 7 2005, 00:56
Сообщение #767


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

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



//заодно мне разъясните пожалуйста, что такое стат-квест =)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Leon PRO
сообщение Jan 7 2005, 00:59
Сообщение #768


Ушедший на войну
Иконки Групп

Класс: Маг
Характер: Chaotic Good
Раса: Человек
NWN: Контент



Залил тулзы на хостера. Это примерно 90% из того что я использую для работы с НВН (не считая моделлинга). Этого ДОСТАТОЧНО для большинства задач.

Итак:
1. Просто великолепный ERF/GFF эдитор. Я им пользуюсь в 99,99% случаев, когда правлю структуры.
2. Тот самый плагин для Тотал Коммандера которым можно распаковывать все ERF-структуры (BIF, HAK, ERF)
3. Tlk Edit - Этим я ковыряю TLK файлы
4. SSF-эдитор Написан на Java. У меня дома валяется собственный, но его кроме меня никто не сможет юзать, а если доделать будет просто конфетка =)
5. SET-эдитор - Настоящий клад. Просто классный инструментарий для Тайлсетчика. По началу пугает, но потом беез него как без рук. Может почти все.
6. Zoligato NWN Viever С него все думаю начинали =) работает как Эксплорер в Биф архивах.
7. Компилятор/декомпилятор MDL Файлов из двоичного формата в ASCII и обратно !!!Консольная программа!!!
8. CD-Key генератор Ключей для CD-Key.ini файла
9. Шрифт в стиле НВН.
10. Bioware MDL Viewer Кидаем в папку с моделями, и запускаем.
11. Bioware GFF Editor В некоторых случаях пользуюсь вместо ERF/GFF эдитора.
12. Та самая прога от nVidia Инсталлим, заходим в виндах в папочку с dds-ками и ставим у окошек тип просмотра-превью.

Огромная просьба к Айвану - переложить это все куда-нить, ато лежит на платном хосте и мне дадут по голове, если траффик сильно потечет.

З.Ы. Пошел резаться в UT2004, или кино посмотрю.

Сообщение отредактировал Leon PRO - Jan 11 2005, 15:41
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Proydoha
сообщение Jan 7 2005, 01:09
Сообщение #769


Level 4
**

Класс: Маг
Характер: Chaotic Good
Раса: Эльф



Vhall’rafein Слайдшоу! Отличная идея!

baskan Сам несколько недель мучался такими вопросами. Мой тебе совет: Скачай Aurora Tutorial с этого сайта и два модуля к нему. Лично я учился именно по ним.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2GoDoom
сообщение Jan 7 2005, 01:34
Сообщение #770


Level 11
***

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



baskan,
Делается очень легко - с пмощью Локальных переменных...

Как ты мог догадатсья, полистав словарик или просто почитав надписи в тулсете при создании конверсейшна:
TextAppearsWhen - значит "Текст появляется когда..." и там нужно выбрать скрипт. Это значит что в скрипте задаются условия появления. (кстати там есть визард)
ActionTaken - значит "Предпринимаемое действие" (или типа того), то есть - что-то происходит после того как игрко выбрал этот ответ в диалоге, или НПЦ вышел на ветку с этим скриптом... Тут опять же есть визард.
Визард - помощник создания простых скриптов, отображается как шапочка...

Итак, теперь рассказываю подробнее...
Мы создаем все три ветки (я так понял их три надо):

- Привет, игрок
-- Привет, нпц!
- Есть ключ?
-- Есть (проверка)
-- Нету
- Молодец, ты справился с квестом! Терь вали отсюдова!

На первом диалоге (Привет, игрок) вешаем скрипт проверки локальной переменной, например назовем её - quest_prog (quest progress). Для этого можно использовать визард (пока в плане скриптинга обьяснять не буду - запустите визард, посмотрите на код и надеюсь все поймете) - визард в TextAppearsWhen (ТекстПоявляетсяКогда) - и там выбираем Local Variable (или типа того), выбираем: int (числовая переменная, целая (не дробная)), пишем название переменной (q_prog), is less than (меньше чем), constant int (заданное число), 1.
Далее на продолжении первого диалога (привет, нпц!) вешаем скрипт (можно опять же визардом) на создании переменной q_prog и задачи ей числа 1. Set Local Variable (Задать локальную переменную), int, q_prog, contant int, 1.
Теперь переходим к второй ветке диалога (есть ключ?) - надпись будет высвечиваться если q_prog равно 1. (Думай разберешься как сделать проверку ;) ), ну а на ответе: (Есть) - делать првоерку на ключ... Опять же визардом: Item in Inventory и там вписываем тэг вещицы (лучше писать не попамяти - акопировать и вставлять...). Ну и Акшэн Тэйкин - присваиваем q_prog значение 2.
И последнюю ветку вешаем првоерку, если q_prog = 2...

Раз стат квест - значит надо выдать награду. Выдавать награду можно опять же через ActionTaken (Give Rewards)... Примечание: если хочешь наградить вещью - то там надо вписывать ResRef вещит, а не тэг... вроде =)

Вот и все...

Кстати попутно с квестом можно вести запись в дневнике (закладочка - Others... там думаю разберешься)
ПРИМЕЧАНИЕ: Локальные переменные - остаюстя на игроке, так что в следущем квесте не используй переменную q_prog...
ПРИМЕЧАНИЕ: Если хорошо подумаете - то сможете это все еще оптимизирвоать и улучшить... (хоят бы для повышения переменной - не обязательно использоват ьнесколько разных скриптов ;) )

З.Ы.
Стат квест = стационарный квест.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
fali
сообщение Jan 7 2005, 12:12
Сообщение #771


Level 3
*

Класс: Бард
Характер: Chaotic Good
Раса: Полуэльф



2Аваддон:
Большущее спасибо. =) Очень подробно и понятно. Чуть позже скачаю и сразу попробую. =) А сохранять... Так я завсегда по нескольку раз всё сохраняю на всякий пожарный. %) Наученная уже. ))

2Leon PRO:
Ой... *пытается сообразить, сейчас скачивать или потом* Не ожидала, что так быстро выложишь... %) Сейчас размеры посмотрю -- если не большие, скачаю всё-таки сейчас. Если великоваты, придётся потом повторно просить. =)

2Aiwan:
Я так и делала. =) Только, по привычке, нажимала сначала на создание ссылки, а потом уже на оформление. :) В этом случае не работает. =)

Ну и ещё вопрос в догонку. :)
Вопрос:
А есть ли, собственно, в тулсете какая-нибудь "кнопочка", с помощью которой можно было бы создать модуль не привязаный к версии игры? :) А то ведь, и правда... Вдруг понадобиться знакомому без патчей с помощью модуля что-либо показать. Неуж-то ничего не предусмотрено для таких случаев? :)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Leon PRO
сообщение Jan 7 2005, 12:17
Сообщение #772


Ушедший на войну
Иконки Групп

Класс: Маг
Характер: Chaotic Good
Раса: Человек
NWN: Контент



QUOTE
ВОПРОС
Как увеличить дальность обзора?

ОТВЕТЫ
Полностью убрать нельзя.
edit -> area properties -> visual -> customize environment
Можно поставить 500-1000, но тогда сильно увеличится затрата ресурсов игрой (лагать будет).


Можно убрать полностью... правда в этом случае будет заметна "граница" модуля. Там где заканчиваются тайлы и начинается серая "пустота".

Это достигается расширением "сферы" тумана, до 300-350 фунтов и управляется только через MOD-файл непосредственно вскрытый спецЭдитором. (Подробности не помню навскидку :this: )

QUOTE
А есть ли, собственно, в тулсете какая-нибудь "кнопочка", с помощью которой можно было бы создать модуль не привязаный к версии игры? :) А то ведь, и правда... Вдруг понадобиться знакомому без патчей с помощью модуля что-либо показать. Неуж-то ничего не предусмотрено для таких случаев? :)

Как говорил Ури в Приключениях Электроника: "Ну как Вы не поймете! Нет у него кнопки!" ©
Вобщем такой кнопки нет!!!

Сообщение отредактировал Leon PRO - Jan 7 2005, 12:19
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Jan 7 2005, 15:17
Сообщение #773


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



2GoDoom Бааальшое спасибо. Разобрался. Теперь вопрос. Как после конца квеста сделать чтобы нпс исчезал?(или в лимбо)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
balrog
сообщение Jan 7 2005, 16:10
Сообщение #774


Великий хранитель фотоальбома
Иконки Групп

Класс: Оборотень
Характер: Chaotic Neutral
Раса: Тварь
МАСТЕР Кисти



QUOTE
Как после конца квеста сделать чтобы нпс исчезал?(или в лимбо)


Сьавишь этот скрипт в диолог на АктионТайк ... типо мол - спасибо шо принёс мне это, ну я тогда валю, ещё раз спасиобо, пока .... и НПС убехает и исчизает

Neverwinter Script Source
//:: Makes Sam to leave

void main()
{
object oWP = GetWaypointByTag ("SAM_EXIT");
object oNPC = GetObjectByTag("Sam");
AssignCommand (oNPC, ActionMoveToObject (oWP, TRUE) );
AssignCommand (oNPC, DestroyObject(OBJECT_SELF));
}


Но конешно, наверное, можно и так .. я конеш не скриптер ... меня поправят есди шо нитак =)
Neverwinter Script Source
void main()
{
AssignCommand (oNPC, DestroyObject(OBJECT_SELF));
}

:D
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2GoDoom
сообщение Jan 7 2005, 17:02
Сообщение #775


Level 11
***

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



Как написал Балрог, только лучше, я думаю, будет написать, чтобы Дестроился обжект только через какое-то время... =)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Jan 7 2005, 19:38
Сообщение #776


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



Всем спасибо, кто помог с диалогами :yahoo:
У меня еще вопросы возникли:
В модуле просто очень много ненужных скриптов, и мне нужно от них избавиться..Поодному в аврроре их удалять очень гиморно( и тем более модуль болшой ждать пока удалиться скрипт заманаешся), если ли какиенибудь проги :vava: с помощью которых можно удалять кучками скрипты? или есть другой выход?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Alexisss
сообщение Jan 7 2005, 20:07
Сообщение #777


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

Класс: Бледный Мастер
Характер: Chaotic Evil
Раса: Нежить



Помойму в модуле можно было выделить все или чась скриптов, както открыть там скрипты, и будет куча скриптов в модуле в твоем или во всех, выделиих и нажми Delete.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Jan 7 2005, 20:11
Сообщение #778


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



Опять вопрос!) Как сделать чтобы при насиупании игрока на тригер нпс начинал диалог? :vava:

Сообщение отредактировал baskan - Jan 7 2005, 20:11
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Jan 7 2005, 20:54
Сообщение #779


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



baskan Это действие должно происходить один раз? Тогда делай так:
ОнЭнтер триггера:
Neverwinter Script Source
void main()
{
object oPC = GetEnteringObject();
object oNPC = GetNearestObjectByTag("NPC_TAG",OBJECT_SELF);
int iEnter = GetLocalInt(OBJECT_SELF,"STARTED");

  if(iEnter != 1 && GetIsPC(oPC))
  {
  SetLocalInt(OBJECT_SELF,"STARTED",1);
  AssignCommand(oNPC,ActionStartConversation(oPC,"conversation_resref"));
}
}


Писал без авроры потому возможны ошибки. Но суть должна быть ясна.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Falcon
сообщение Jan 7 2005, 22:11
Сообщение #780


Level 4
**

Класс: Теневой Танцор
Характер: Neutral Evil
Раса: Полуэльф



Добро времени суток. еть вопрос. короче задача что бы група монстров что респавниться в локе била всех кроме воров. Сделал кастом монстров. как я понимаю надо вешать скрипт им всем на он-персепшион. я могу сделать что бы они били только воров там или только ттам еще чтото определенное. а как сделать что бы всех кроме когто в упор не доганяю.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2GoDoom
сообщение Jan 7 2005, 22:16
Сообщение #781


Level 11
***

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



Нужно делать циклом, пожалуй...
Перебирать циклом всех кто ест ьв локации... Если вор - то брать следущего, если не вор - то атаковать... И это в ОнСпавн мобов... (Если тебе нужно чтобы мобы всех мочили в локе просто)...
Если же тока когда заметит - то проверка вор или нет. Если не вор - то атакует...

Вроде бы все просто =)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jan 7 2005, 22:23
Сообщение #782


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

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



QUOTE (balrog @ Jan 7 2005, 19:10)
Но конешно, наверное, можно и так .. я конеш не скриптер ... меня поправят есди шо нитак

Конечно. Тот скрипт не будет работать верно, так как НПС будет бежать, бежать, вдруг его толкнут или окликнут и он забудет зачем бежал, а бежал он дестроиться на точку. Лучше сделать так:
Neverwinter Script Source
void main()
{
object oExit = GetNearestObjectByTag("WP_EXIT");
// куда бежим, хоть в другую локу, реалестичней, т.к. побежит в двери
object oNPC = OBJECT_SELF; //сам тот кто бежит
AssignCommand(oNPC, ClearAllActions()); // забудь все что не успел сделать!
AssignCommand(oNPC, ActionForceMoveToObject(oExit, FALSE, 1.0, 25.0));
// FALSE можно поменть на TRUE и тогда непись побежит, скорость 1.0,
// если застЯл то через 25 сек прыгнет в точку
AssignCommand(oNPC, ActionDoCommand(DestroyObject(oNPC)));
//Сепука, будет только если дошел до точки oExit
DelayCommand(0.3, SetCommandable(FALSE, oNPC));
// Борьба с ретроградной амнезией - забиваем стек команд.
// Теперь он точно сделает себе харакири
}

2 baskan...
Neverwinter Script Source
void main()
{
    object oPC = GetEnteringObject(); // Тот идиот что встал на триггер
    if (!GetIsPC(oPC) || GetLocalInt(OBJECT_SELF, "TRIGGERED") == 1)
        return;
// Если это был не игрок, а кто то еще (матрица рулит), или он уже
// наступал в это дерьмо один раз, то скрипт не сработает
    object oNPC = GetNearestObjectByTag("ТАГ_НПС");
//  Тот придурок что должен сказать ПРИВЕТ!
    AssignCommand(oPC, ClearAllActions());
    AssignCommand(oNPC, ClearAllActions());
    AssignCommand(oNPC, SpeakString("Эй, придурок! Я к тебе обращаюсь!"));
//  Использую не ActionSpeakString, что бы НПС говорил фразу делаЯ что велено дальше
    AssignCommand(oPC, ActionDoCommand(SetFacingPoint(GetPosition(oNPC))));
//  Повернем мордой лица РС к НПС
    AssignCommand(oPC, ActionSpeakString("Ну, ванючка! Держись!"));
//  Тут наоборот, жду когда повернетсЯ и ТОГДА ответит
    AssignCommand(oNPC, ActionForceMoveToObject(oPC, FALSE, 1.0, 15.0));
    AssignCommand(oNPC, ActionStartConversation(oPC));
    AssignCommand(oNPC, ActionDoCommand(SetCommandable(TRUE, oNPC)));
// Убедительно просим оНПС подойти к РС и сказать что велено! И не ЗАБЫТЬ!
    DelayCommand(0.3, SetCommandable(FALSE, oNPC)); // типа что бы не забыл
    SetLocalInt(OBJECT_SELF, "TRIGGERED", 1); // Запомним что это ужо было
}

QUOTE (baskan @ Jan 7 2005, 22:38)
В модуле просто очень много ненужных скриптов, и мне нужно от них избавиться..Поодному в аврроре их удалять очень гиморно( и тем более модуль болшой ждать пока удалиться скрипт заманаешся), если ли какиенибудь проги  с помощью которых можно удалять кучками скрипты? или есть другой выход?

Открой папку темр0 и там удали все что не надо с раширением ИМЯ_СКРИПТА.NSS, ИМЯ_СКРИПТА.NCS
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Falcon
сообщение Jan 7 2005, 22:34
Сообщение #783


Level 4
**

Класс: Теневой Танцор
Характер: Neutral Evil
Раса: Полуэльф



QUOTE (2GoDoom @ Jan 7 2005, 22:16)
Если же тока когда заметит - то проверка вор или нет. Если не вор - то атакует...

блин все гениальное поросто или я туп как пробка. я уже далма фракции менять скриптом. :crazy:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Alexisss
сообщение Jan 8 2005, 04:08
Сообщение #784


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

Класс: Бледный Мастер
Характер: Chaotic Evil
Раса: Нежить



Слушайте какова черта делаю скрипт на предмет а он не светится хотя Toolset говорит что все правельно
"Скрипт Писал Сам все совпадения Случайны"

Neverwinter Script Source
//::///////////////////////////////////////////////
//:: Name svet
//:: Copyright © 2005 Alexisss Corp.
//:://////////////////////////////////////////////
/*
When Created apply a coloured effect/

Rod Colour
1 = Blue
2 = Green
3 = Red
4 = White
5 = Yellow
*/

//:://////////////////////////////////////////////
//:: Created By: Alexisss
//:: Created On: 2005
//:://////////////////////////////////////////////

void main()
{
if (GetLocalInt(OBJECT_SELF, "nDoOnce") == 1)
return;
SetLocalInt(OBJECT_SELF, "nDoOnce", 1);

effect eGlow;

int nColour = StringToInt(GetStringRight(GetTag(OBJECT_SELF), 1));

switch (nColour)
{
case 1: eGlow = EffectVisualEffect(VFX_DUR_GLOW_BLUE);
break;
case 2: eGlow = EffectVisualEffect(VFX_DUR_GLOW_GREEN);
break;
case 3: eGlow = EffectVisualEffect(VFX_DUR_GLOW_RED);
break;
case 4: eGlow = EffectVisualEffect(VFX_DUR_GLOW_WHITE);
break;
case 5: eGlow = EffectVisualEffect(VFX_DUR_GLOW_YELLOW);
break;

}

ApplyEffectToObject(DURATION_TYPE_PERMANENT, eGlow, OBJECT_SELF);
}


Сообщение отредактировал Twin - Jan 8 2005, 06:03
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Alexisss
сообщение Jan 8 2005, 06:52
Сообщение #785


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

Класс: Бледный Мастер
Характер: Chaotic Evil
Раса: Нежить



Извените если где уже писал этот вопрос...... Скажите что сдесь надо исправить чтоб работало?

Neverwinter Script Source
//::///////////////////////////////////////////////
//:: Name Ispravit
//:: Copyright © 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
    This will spawn
   
*/

//:://////////////////////////////////////////////
//:: Created By: Alexisss
//:: Created On: Sept 5, 2003
//:://////////////////////////////////////////////
#include "hx_inc_meph"
#include "x2_inc_cutscene"
// Standard cutscene start
void StartCutscene(object oPC, int iCut);
// Change Track based on night.
void SetMusic(int iCut, object oPC);
// Day/Night switch
void DoDayToNight(int iCut, object oPC, float fTime = 14.0);
// Play sound object.
void CutPlaySoundObject(int iCut, object oSound);
// Create a fire trail.
void CutCreateFire(int iCut, object oPC);
// Create corpse fire.
void CutMakeCorpseFire(int iCut, object oDead);
// Activate cutscene for Associates.
void ActivateAssociates(object oObject, int iCut);

void main()
{
    int x = 0;
    int y = 0;
    int z = 0;
    object oPC = GetEnteringObject();
    object oBuild = GetObjectByTag("hx_meph_building", x);
    int iVFX;
    object oInvis = GetObjectByTag("hx_mephdstry_obj", y);
    int iCut = 300;
    object oWizRing = GetObjectByTag("hx_end_battle_protect", z);

    if(GetIsPC(oPC))
    {
        // Do once
        if (GetLocalInt(OBJECT_SELF, "nDoOnce") != 1)
        {
                // Debug
                /////////
                //SetLocalInt(GetModule(), "bKnower_MephistophelesNamed", TRUE);
            AddJournalQuestEntry("hx_crystal_journ", 40, oPC, TRUE, TRUE);
            BlackScreen(oPC);
            SetLocalInt(OBJECT_SELF, "nDoOnce", 1);
            // Set the PC unsafe from lava.
            SetLavaUnsafe(oPC);
            // Spawn the visual effect buildings in.
            while(GetIsObjectValid(oBuild))
            {
                // Get the effect.
                iVFX = StringToInt(GetStringLeft(GetName(oBuild), 3));
                // Apply the building effect.
                ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectVisualEffect(iVFX), oBuild);
                x = x + 1;
                oBuild = GetObjectByTag("hx_meph_building", x);
            }

            // Make the building PC Blockers invis.
            while(GetIsObjectValid(oInvis))
            {
                // Apply the invis effect.
                ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectVisualEffect(VFX_DUR_CUTSCENE_INVISIBILITY), oInvis);
                y = y + 1;
                oInvis = GetObjectByTag("hx_mephdstry_obj", y);
            }

            // Make wizard ring.
            while(GetIsObjectValid(oWizRing))
            {
                // Apply the ring effect.
                ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectVisualEffect(497), oWizRing);
                z = z + 1;
                oWizRing = GetObjectByTag("hx_end_battle_protect", z);
            }
        StartCutscene(oPC, iCut);
        }
    }
}

void StartCutscene(object oPC, int iCut)
{
      location lLoc = GetLocation(GetObjectByTag("hx_end_battle_copy_spawn_wp"));

      // Setup the scene
      CutSetActiveCutscene(iCut, CUT_DELAY_TYPE_CONSTANT);
      CutSetActiveCutsceneForObject(oPC, iCut, TRUE);

      // Cutscene objects other than the PC.
      object oMeph = GetNearestObjectByTag("hx_meph", oPC);
      CutSetActiveCutsceneForObject(oMeph, iCut);
      object oMeph2 = GetNearestObjectByTag("hx_meph_crystalx", oPC);
      CutSetActiveCutsceneForObject(oMeph2, iCut);
      object oDurnan = GetNearestObjectByTag("hx_end_fight_durnan", oPC);
      CutSetActiveCutsceneForObject(oDurnan, iCut);

      // PC Copy.
      object oPCCopy = CutCreatePCCopy(oPC, lLoc, "HX_PC_COPY_FINAL");
      CutSetActiveCutsceneForObject(oPCCopy, iCut);

      object oSound = GetObjectByTag("hx_crystal_meph_sound1");
      CutSetActiveCutsceneForObject(oSound, iCut);
      object oSound2 = GetNearestObjectByTag("hx_crystal_fire_explode", oPC);
      CutSetActiveCutsceneForObject(oSound2, iCut);
      object oSound3 = GetNearestObjectByTag("hx_final_pc_appear", oPC);
      CutSetActiveCutsceneForObject(oSound3, iCut);
      object oSound4 = GetNearestObjectByTag("hx_final_meph_appear", oPC);
      CutSetActiveCutsceneForObject(oSound4, iCut);

      // Waypoints.
      location lPCCopyStart = GetLocation(GetNearestObjectByTag("hx_final_fight_pc_start", oPC));
      location lPCStart = GetLocation(GetNearestObjectByTag("hx_end_battle_pc_start_wp", oPC));
      location lPCMove1 = GetLocation(GetNearestObjectByTag("hx_end_battle_pc_move1_wp", oPC));
      location lMephStart = GetLocation(GetNearestObjectByTag("hx_crystal2_meph_end_wp", oPC));

      // Deal with Henchmen.
      ActivateAssociates(oPC, iCut);

      // Setup the cutscene.
      CutSetCutsceneMode(1.1, oPC, TRUE, CUT_CAMERA_HEIGHT_HIGH, TRUE);
      //CutSetCutsceneMode(1.1, oPC, TRUE, TRUE, TRUE, 2);

      CutSetCamera(3.4, oPC, CAMERA_MODE_TOP_DOWN, 130.0, 5.0, 85.0,
                  CAMERA_TRANSITION_TYPE_SNAP);
      CutJumpToLocation(2.0, oPC, lPCStart);

      // Cached Meph
      CutApplyEffectToObject(0.6, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oMeph);

      CutFadeFromBlack(3.5, oPC, FADE_SPEED_MEDIUM);

      // Start the scene.
      CutSetCamera(11.0, oPC, CAMERA_MODE_TOP_DOWN, 120.0, 18.0, 78.0,
                  CAMERA_TRANSITION_TYPE_SLOW);

      CutPlayAnimation(20.0, oDurnan, ANIMATION_LOOPING_TALK_FORCEFUL, 5.0);

      // PC warps in.
      DelayCommand(24.1, CutPlaySoundObject(iCut, oSound3));
      CutApplyEffectAtLocation(24.2, oPC, DURATION_TYPE_INSTANT, 487, lPCCopyStart);
      CutJumpToLocation(25.5, oPCCopy, lPCCopyStart);
      CutSetCamera(25.0, oPC, CAMERA_MODE_TOP_DOWN, 110.0, 6.0, 80.0,
                  CAMERA_TRANSITION_TYPE_FAST);
      CutActionMoveToLocation(24.0, oPC, lPCMove1, FALSE);

      // Durnan starts conversation.
      CutSetFacingPoint(26.1, oDurnan, "HX_PC_COPY_FINAL");
      CutActionStartConversation(28.0, oDurnan, oPC, "h9_durnan");

      // End scene.
      //CutFadeOutAndIn(40.5, oPC, 1.5);
      //CutDisableCutscene(iCut, 41.0, 41.0, RESTORE_TYPE_NONE);
}

void SetMusic(int iCut, object oPC)
{
    if(iCut == GetLocalInt(oPC, "nCutsceneNumber"))
    {
        object oArea = GetArea(oPC);
        int iTrack = MusicBackgroundGetNightTrack(oArea);
        MusicBackgroundStop(oArea);
        MusicBackgroundChangeDay(oArea, iTrack);
        MusicBackgroundPlay(oArea);
    }
}

void DoDayToNight(int iCut, object oPC, float fTime = 14.0)
{
    if(iCut == GetLocalInt(oPC, "nCutsceneNumber"))
    {
        DayToNight(oPC, fTime);
    }
}

// Play sound object.
void CutPlaySoundObject(int iCut, object oSound)
{
    if(iCut == GetLocalInt(oSound, "nCutsceneNumber"))
    {
      SoundObjectPlay(oSound);
    }
}

// Create fire trail.
void CutCreateFire(int iCut, object oPC)
{
    int x = 1;
    object oWP = GetNearestObjectByTag("hx_crsytal_cut_fire", oPC, x);
    float fDelay = 0.0;

    if(iCut == GetLocalInt(oPC, "nCutsceneNumber"))
    {
      while(GetIsObjectValid(oWP))
      {
          DelayCommand(fDelay, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_FLAME_M), GetLocation(oWP)));
          fDelay = fDelay + 0.13;
          x = x + 1;
          oWP = GetNearestObjectByTag("hx_crsytal_cut_fire", oPC, x);
      }
    }
}

// Create corpse fire.
void CutMakeCorpseFire(int iCut, object oDead)
{
    if(iCut == GetLocalInt(oDead, "nCutsceneNumber"))
    {
      CreateObject(OBJECT_TYPE_PLACEABLE, "hx_crystal_fire", GetLocation(oDead));
    }
}

// Activate cutscene for Associates.
void ActivateAssociates(object oObject, int iCut)
{
    //if(iCut == GetLocalInt(oObject, "nCutsceneNumber"))
    //{
        object oHench1 = GetHenchman(oObject, 1);
        object oHench2 = GetHenchman(oObject, 2);
        object oHench3 = GetHenchman(oObject, 3);
        object oAssoc1 = GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION, oObject);
        object oAssoc2 = GetAssociate(ASSOCIATE_TYPE_DOMINATED, oObject);
        object oAssoc3 = GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oObject);
        object oAssoc4 = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oObject);

        if(GetIsObjectValid(oHench1))
        {
            CutSetActiveCutsceneForObject(oHench1, iCut);
            CutApplyEffectToObject(0.1, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oHench1);
            CutApplyEffectToObject2(0.2, DURATION_TYPE_PERMANENT, EffectCutsceneGhost(), oHench1);
        }
        if(GetIsObjectValid(oHench2))
        {
            CutSetActiveCutsceneForObject(oHench2, iCut);
            CutApplyEffectToObject(0.1, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oHench2);
            CutApplyEffectToObject2(0.2, DURATION_TYPE_PERMANENT, EffectCutsceneGhost(), oHench2);
        }
        if(GetIsObjectValid(oHench3))
        {
            CutSetActiveCutsceneForObject(oHench3, iCut);
            CutApplyEffectToObject(0.1, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oHench3);
            CutApplyEffectToObject2(0.2, DURATION_TYPE_PERMANENT, EffectCutsceneGhost(), oHench3);
        }
        if(GetIsObjectValid(oAssoc1))
        {
            CutSetActiveCutsceneForObject(oAssoc1, iCut);
            CutApplyEffectToObject(0.1, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oAssoc1);
            CutApplyEffectToObject2(0.2, DURATION_TYPE_PERMANENT, EffectCutsceneGhost(), oAssoc1);
        }
        if(GetIsObjectValid(oAssoc2))
        {
            CutSetActiveCutsceneForObject(oAssoc2, iCut);
            CutApplyEffectToObject(0.1, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oAssoc2);
            CutApplyEffectToObject2(0.2, DURATION_TYPE_PERMANENT, EffectCutsceneGhost(), oAssoc2);
        }
        if(GetIsObjectValid(oAssoc3))
        {
            CutSetActiveCutsceneForObject(oAssoc3, iCut);
            CutApplyEffectToObject(0.1, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oAssoc3);
            CutApplyEffectToObject2(0.2, DURATION_TYPE_PERMANENT, EffectCutsceneGhost(), oAssoc3);
        }
        if(GetIsObjectValid(oAssoc4))
        {
            CutSetActiveCutsceneForObject(oAssoc4, iCut);
            CutApplyEffectToObject(0.1, DURATION_TYPE_PERMANENT, VFX_DUR_CUTSCENE_INVISIBILITY, oAssoc4);
            CutApplyEffectToObject2(0.2, DURATION_TYPE_PERMANENT, EffectCutsceneGhost(), oAssoc4);
        }
    //}
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

205 страниц V  « < 30 31 32 33 34 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 10th July 2025 - 04:05