![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#3851
|
|
Level 1 Класс: Убийца Характер: True Neutral Раса: Человек ![]() |
Подскажите чайнику (IMG:style_emoticons/kolobok_light/crazy.gif) .
Вот у меня есть хак с новыми моделями. Могу ли я его прикрепить к офф. игре NWN или к адону? И как это сделать? Если нет, то можно ли к примеру изъятые из .hak файла .mdl, .plt и прочие запихнуть в .bif файлы официальной игры? Чем просматривать .bif я разобрался, а чем редактировать не знаю. Зарание прошу прощения за идеотский вопрос. Сам на форуме найти не смог. Заодно подскажите, как .hak одного модуля прикрепить к другому. (я пробовал просто содержимое одного хака перекидывать в другой - иногда работало. Но вот если у нового модуля нету своего хака - тут все и закнчивалось) Еще раз сори за дурацкие вопросы, сами понимаете - лето, жара, новых игр нету (IMG:style_emoticons/kolobok_light/shout.gif) |
![]()
Сообщение
#3852
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Вот разбирал тут по кусочкам один модуль, возник вопрос - не могу заменить в скрипте фразы которые в кавычках русскими словами. Это галюн именно моего редактора или Авроры в целом? Глюк авроры. Лечится вот этим патчем. Подскажите чайнику (IMG:style_emoticons/kolobok_light/crazy.gif) . Вот у меня есть хак с новыми моделями. Могу ли я его прикрепить к офф. игре NWN или к адону? И как это сделать? Если нет, то можно ли к примеру изъятые из .hak файла .mdl, .plt и прочие запихнуть в .bif файлы официальной игры? Чем просматривать .bif я разобрался, а чем редактировать не знаю. Зарание прошу прощения за идеотский вопрос. Сам на форуме найти не смог. Заодно подскажите, как .hak одного модуля прикрепить к другому. (я пробовал просто содержимое одного хака перекидывать в другой - иногда работало. Но вот если у нового модуля нету своего хака - тут все и закнчивалось) Еще раз сори за дурацкие вопросы, сами понимаете - лето, жара, новых игр нету (IMG:style_emoticons/kolobok_light/shout.gif) Да, можете. Если уже прошли в игре официальные модули, то в тулсете, в окне доступных модулей появится галочка внизу "Модули кампаний". Щелкните ее, и сможете открыть официальные кампании. Если кампании не пройдены, то их надо перетащить из папки "nwm" в папку "modules" и поменять расширение на mod, тогда они появятся в окне модулей. Либо скачать патч, который внесет нужные изменения в реестр, либо внести их самому. Хаки подключаются к модулю так. Открываете любой модуль, вверху будет пункт меню "Редактировать", в нем - "Модульные свойства". В появившемся окне выберите вкладку "Настройки пользователя". Появится список (пустой) и выпадающий список под ним, в котором вы можете выбрать любой из хаков, которые лежат в папке "hak". Выбирайте нужный, щелкайте "Добавить", и хак подключится к модулю. Сообщение отредактировал Talarasha - Aug 19 2008, 08:27 |
![]()
Сообщение
#3853
|
|
Level 3 ![]() Класс: Клерик Характер: Chaotic Good Раса: Эльф ![]() |
Я долго пытался справляться сам, но наконец наткнулся на проблему, которая мне н по зубам...
Neverwinter Script object oItem = GetFirstItemInInventory(oPC); while(GetIsObjectValid(oItem)) { if(GetPlotFlag(oItem) == TRUE) DelayCommand(0.2,DestroyObject(oItem)); object oItem = GetNextItemInInventory(oPC); } По идее, сей скрипт (т.е. его кусок), подразумевался изничтожать лишние plot item'ы, которые могут оказаться у сохраненного перса (ну, чтоб не было 2 одинаковых айтема потом=)). Но а) он пытается срабатывать каждый раз при загрузке сейва, хотя надо бы тока в начале; б) максимум уничтожает один айтем, потом орет что too many instructions=( Как его поправить? (стоит он в OnClientEnter). |
![]()
Сообщение
#3854
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Neverwinter Script if(GetLocalInt(GetModule(),"z") == 0) { object oItem = GetFirstItemInInventory(oPC); while(oItem != OBJECT_INVALID) { if(GetPlotFlag(oItem)) { DestroyObject(oItem); oItem = GetNextItemInInventory(oPC); } else { oItem = GetNextItemInInventory(oPC); } } SetLocalInt(GetModule(),"z",1); } Вот так должно работать. Переменная "z" не дает повторяться скрипту, а ошибка была в повторном определении oItem (не надо каждый раз писать тип перед переменной). Сообщение отредактировал Talarasha - Aug 19 2008, 10:00 |
![]()
Сообщение
#3855
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Neverwinter Script object oItem = GetFirstItemInInventory(oPC);
while(GetIsObjectValid(oItem)) { if(GetPlotFlag(oItem)) { SetPlotFlag(oItem, FALSE); DestroyObject(oItem); } oItem = GetNextItemInInventory(oPC); } |
![]()
Сообщение
#3856
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Ilerien, а зачем флаг снимать? И без этого ведь уничтожает.
|
![]()
Сообщение
#3857
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Хз (IMG:style_emoticons/kolobok_light/smile.gif) Не обязательно, конечно. Привычка - некоторое время назад я честно думал, что DestroyObject не убивает плотовые итемы.
|
![]()
Сообщение
#3858
|
|
Level 3 ![]() Класс: Клерик Характер: Chaotic Good Раса: Эльф ![]() |
Спасибо! Попробую...
Хз (IMG:style_emoticons/kolobok_light/smile.gif) Не обязательно, конечно. Привычка - некоторое время назад я честно думал, что DestroyObject не убивает плотовые итемы. А те, которые Undroppable, можно таким способом убить? Или они не только неубираемые, но и неубиваемые? Сообщение отредактировал Lirulin - Aug 19 2008, 18:03 |
![]()
Сообщение
#3859
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Цитата А те, которые Undroppable, можно таким способом убить? Или они не только неубираемые, но и неубиваемые? Можно (IMG:style_emoticons/kolobok_light/smile.gif)
Сообщение отредактировал Ilerien - Aug 19 2008, 21:29 |
![]()
Сообщение
#3860
|
|
Level 3 ![]() Класс: Псионик Характер: Neutral Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
Хз (IMG:style_emoticons/kolobok_light/smile.gif) Не обязательно, конечно. Привычка - некоторое время назад я честно думал, что DestroyObject не убивает плотовые итемы. Оно так и было. Плотовые предметы не убивались. |
![]()
Сообщение
#3861
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
|
![]()
Сообщение
#3862
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Ну значит в какой-то более старой версии не убивались.
|
![]()
Сообщение
#3863
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Ilerien, Lamonde, сдается мне, вы все-таки заблуждаетесь и команда SetPlotFlag(oItem, FALSE) в скрипте лишняя. Проверил еще и на 1.22 (оригинал), плотовые предметы успешно убиваются.
|
![]()
Сообщение
#3864
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Хз. Убиваются - так убиваются (IMG:style_emoticons/kolobok_light/smile.gif) Не суть важно, снятие флага на итеме ресурсов почти не хавает.
|
![]()
Сообщение
#3865
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Суть важно, потому что в таком случае твой скрипт не имеет никаких отличий от того, что я уже написал Оо.
|
![]()
Сообщение
#3866
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Ага. На самом деле я сначала прочитал по диагонали задачу и решил, что локалка там не нужна. Фтопку спор, ты прав.
|
![]()
Сообщение
#3867
|
|
Level 1 Класс: Паладин Характер: Lawful Good Раса: Человек ![]() |
Привет всем. У меня вопросы (IMG:style_emoticons/kolobok_light/yahoo.gif) Короче скачал CEP, в Авроре посмотрел разные там вещи-понравилось очень(головы, и портреты особенно). А можно их как-нибудь пихнуть в Neverwinter Nights (ну в campaign mode)? И еще понравился очень образ Masterius'a и возник вопрос-можно ли заменить модель игрока(своего) на какого-нибудь NPC? Буду ждать ответа.
|
![]()
Сообщение
#3868
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
Головы и портреты+2да с портретами кинь в овверайд
заменить можно программкой специальной - тут где-то на форуме ссылку есть. Можно что хочешь делать вообще - это же нвн. |
![]()
Сообщение
#3869
|
|
Отверженный ![]() ![]() ![]() ![]() Класс: Теневой Танцор Характер: Neutral Good Раса: Баатезу ![]() |
да пусть хоть тем же Letoм можно сделать (IMG:style_emoticons/kolobok_light/wink3.gif) но и не только им
|
![]()
Сообщение
#3870
|
|
Level 1 Класс: Паладин Характер: Lawful Good Раса: Человек ![]() |
Цитата Головы и портреты+2да с портретами кинь в овверайд заменить можно программкой специальной - тут где-то на форуме ссылку есть. Можно что хочешь делать вообще - это же нвн. Так там же все в этих .hak'ах Если я создаю модуль и активирую все эти хаки,то портреты и головы и т.д. работают только в этом модуле. А как их пихнуть в общее. И можно по-подробнее насчет всяких там программ. |
![]()
Сообщение
#3871
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
Есть такая программа еще NWN Explorer ей можно выдрать что хочешь из хаков или вообще воспользуйся утилитой, что в папке НВН в утилитах.
|
![]()
Сообщение
#3872
|
|
Level 3 ![]() Класс: Клерик Характер: Chaotic Good Раса: Эльф ![]() |
А у меня вот какой вопрос - можно ли вставить в текст диалога переменную (или string), определяемую скриптом? Скажем, бывает <First Name> - а можно ли загнать в эти <> имя хенча? Или количество дней, прошедшее с определенного момента... А то писать 10 вариантов диалогов для десятка разных хенчей (где и вся разница-то только в имени) как-то... лень=)
|
![]()
Сообщение
#3873
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Neverwinter Script int StartingConditional() { SetCustomToken(10001, GetName(GetHenchman(GetPCSpeaker()))); return TRUE; } Этот скрипт вешать на Text Appears When той строчки диалога, в которой упоминается имя хенча. В диалоге вставляешь вместо имени хенча <CUSTOM10001>. Число можно брать любое, лучше достаточно большое, чтобы не пересечься с другими кастомными токеами, буде они присутсвуют. |
![]()
Сообщение
#3874
|
|
Level 3 ![]() Класс: Клерик Характер: Chaotic Good Раса: Эльф ![]() |
Этот скрипт вешать на Text Appears When той строчки диалога, в которой упоминается имя хенча. В диалоге вставляешь вместо имени хенча <CUSTOM10001>. Число можно брать любое, лучше достаточно большое, чтобы не пересечься с другими кастомными токеами, буде они присутсвуют. Спасибо! А если хенчей 2 и более - скрипт будет произвольно выбирать, имя которого будет этим custom token'ом? Или как-то ограничить можно? (дело в том, что один из 2-х хенчей точно и определенно будет, его имя можно и так вписывать, а вот второй - на выбор. Так чтоб не получилось, что дважды появится имя одного, и ни разу - имя другого.) |
![]()
Сообщение
#3875
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Ну определи скриптом, какой тебе хенч нужен.
Neverwinter Script GetHenchman(oPC, 2) выдаст тебе второго хенча. Если уж хочется перестраховаться, потому что практика показывает, что номера хенчей иногда глючат, то надо написать так:Neverwinter Script int StartingConditional()
{ object oPC = GetPCSpeaker(); string sName = GetName(GetHenchman(oPC)); //проверка на то, упоминали ли мы этого хенча if(GetLocalString(OBJECT_SELF, "HENCHMAN_NAME") == sName) sName = GetName(GetHenchman(oPC, 2); //выбираем второго SetCustomToken(10001, sName); SetLocalString(OBJECT_SELF, "HENCHMAN_NAME", sName); //задаем локалку return TRUE; } Сообщение отредактировал Ilerien - Sep 29 2008, 00:29 |
![]() ![]() |
Текстовая версия | Сейчас: 29th April 2025 - 19:22 |