![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#3561
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Если только сделать шаблонный модуль с хаками, экспортировать в него по отдельности локации, и проверять, есть ли в них хаки. Когда с хаками работаешь довольно долго, то потом трудно догадаться, были ли использованы в локациях хаки или нет.
Кстати, при открытии локации, редактор не будет падать, если в локации использованы из хака вещи (возможен сбой, если такие вещи одеты на существо) или объекты. Они лишь не будут отображаться. А вот если в локации задействованы тайлы из хака, то тогда редактор сразу выдаст ошибку и повиснет. Самый лучший способ, чтобы быстро освободить модуль от хаков, записывать, какие хаки подключаются и что в них входит, чтобы быстро сориентироваться, где ресурсы хака применялись. |
![]()
Сообщение
#3562
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Уважаемые мастера , у меня к Вам ваще нубский вопрос: в самом тулсете там где имена локаций и названия монстром вместо шрифтов стоят вертикальные чёрточки , и при входе в игру ( после заставок атари и др) вместо менюшки (начать игру , загрузить ...) ваще чёрный экран и надо наугад попадать в то место , где обычно находится надпись запустить. Помогите , обьясните хотя бы чего у меня нехватает.
З.Ы. Сама игра работает на других компах и со шрифтами всё норм , а у самого с этим разобраться - "таланта" не хватает . Заранее благодарен всем ответившим |
![]()
Сообщение
#3563
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
|
![]()
Сообщение
#3564
|
|
Level 9 ![]() Класс: Вор Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] ![]() |
тулсет запустить в режиме совместимости - маздай 95 (IMG:style_emoticons/kolobok_light/ph34r.gif)
последний год только так с ним удавалось работать |
![]()
Сообщение
#3565
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Вот такой вот вопрос тем кто знает, я создал две локации одна Exterior а другая Interior. На каждой локации есть дверь, как мне их соединить, ну тоесть сделать переход из одной локации в другую ?
|
![]()
Сообщение
#3566
|
|
Level 5 ![]() ![]() Класс: Рейнджер Характер: Lawful Good Раса: Эльф ![]() |
Не знаю, как насчёт первого НВН, но в редакторе НВН2 есть у каждого объекта что-то типа свойств(Properties)...
В этих свойствах объекта есть строка Transitting to и строчка Link Object Type. В Link Object Type выбираешь к примеру вэйпоинт, который поставишь около дверки в которую нужно переместиться. В Transitting to прописываешь тэг этого вэйпойнта. Насчёт того чтобы одна дверь перемещала в другую дверь не помню, поэтому точно сказать не могу как это сделать, да и вообще существует ли такое? Точно не помню... (IMG:style_emoticons/kolobok_light/yahoo.gif) |
![]()
Сообщение
#3567
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Я может не так выразился. Щас попробую подругому обьяснить. Я два дня назад начал пробовать создавать свои модули, вот значит, сделал я поляну на ней расставил пару деревьев и волка, и еще поставил дом. Потом создал еще одну локацию Interior ну тоесть внутренее помещение, сделал комнату, поставил там стол и стул. Научите меня как сделать так что бы я открывал дверь в доме и нажимая на темное пространство за ней попадал в комнату которую я создал. Желательно подробно, я только учусь и еще ничего не понимаю в редакторе. И еще такой вопросик, я хочу положить на землю самый простой мечь или дубинку что бы ею мог пользовать герой 1 уровня , подскажите где мне ее взять ?
|
![]()
Сообщение
#3568
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
про дверь тебе частично правильно сказали. Зайди у любой из 2х дверей в Свойства - Переход местности. Там установи тип места назначения (дверь) и в выпадающем меню выбери локацию места назначения (если выбрал дверь в доме, то тут следует выбрать локацию с домиком). После этого в списке найди нужную дверь. Посмотри чтобы стояла галочка в позиции "в обе стороны". И все.
ВАЖНО: у дверей должен быть разный, УНИКАЛЬНЫЙ тэг. (в свойствах на основной странице). например для твоего случая что-то типа "DOOR_FOREST_TO_HOUSE", "DOOR_HOUSE_TO_FOREST". (писать тэги большими буквами - устоявшееся старое правило при работе с редактором) И если только начинаешь работать, внимательно изучи эту тему и особенно Туториал от Айвана |
![]()
Сообщение
#3569
|
|
Level 5 ![]() ![]() Класс: Рейнджер Характер: Lawful Good Раса: Эльф ![]() |
Цитата И еще такой вопросик, я хочу положить на землю самый простой мечь или дубинку что бы ею мог пользовать герой 1 уровня , подскажите где мне ее взять ? Заходишь в Items, там поройся и найди то оружие, которое тебе требуется... На земле оружие будет в виде мешочка... |
![]()
Сообщение
#3570
|
|
Level 18 ![]() Класс: Страж Тьмы Характер: True Neutral Раса: Человек МАСТЕР D&D ![]() |
Вот такой вот вопрос тем кто знает, я создал две локации одна Exterior а другая Interior. На каждой локации есть дверь, как мне их соединить, ну тоесть сделать переход из одной локации в другую ? Вот какие строки тебе нужны. ![]() ![]() |
![]()
Сообщение
#3571
|
|
Level 5 ![]() ![]() Класс: Рейнджер Характер: Lawful Good Раса: Эльф ![]() |
Теперь понял? Или хочешь я видео сниму, как надо делать переход из одной двери в другую? (IMG:style_emoticons/kolobok_light/biggrin.gif)
|
![]()
Сообщение
#3572
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Хватит в теме про Аврору оффтопить про Электрон.
|
![]()
Сообщение
#3573
|
|
Level 2 ![]() Класс: Оборотень Характер: True Neutral Раса: Эльф ![]() |
Проблема с опытом решилась только для определенных существ. За "умеренных" и выше, за боссов продолжает выдаваться двойной опыт -)
В смысле 2 раза. Например 120 и сразу же после этого еще 11. Сообщение отредактировал Lordeath - Mar 9 2008, 22:45 |
![]()
Сообщение
#3574
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Полный скрипт nw_c2_default7 в студию (IMG:style_emoticons/kolobok_light/smile.gif) А то щас в этом посте исключительно его верхний кусок.
|
![]()
Сообщение
#3575
|
|
Level 2 ![]() Класс: Оборотень Характер: True Neutral Раса: Эльф ![]() |
Странно, скрипт скопировал полностью -)
|
![]()
Сообщение
#3576
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Edit -> Module Properties -> Advanced.
Ползунок XP Scale в ноль. Довольно сложно случайно сделать двойную выдачу скриптом, причем по разным формулам. |
![]()
Сообщение
#3577
|
|
Level 2 ![]() Класс: Оборотень Характер: True Neutral Раса: Эльф ![]() |
Можете скопировать стандартный скрипт?
Ну мне просто нужно переделать один модуль выложенный на ваулте. Конкретно убрать систему опыта , созданную автором (слишком много экспы дается) и поставить стандартную. |
![]()
Сообщение
#3578
|
|
Level 9 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек NWN: Модмейкер Рыцарская Сага ![]() |
Lordeath, ну чё ты мучаешь весь форум? Выкинь из этого модуля этот доморощенный скрипт NW_C2_DEFAULT7. Тем самым будет использоваться базовый! Найди своего БОССА и замение в скрипте смерти весь код на вот такой:
Neverwinter Script //::////////////////////////////////////////////// //:: SLOT: OnDeath — смерть существа //::////////////////////////////////////////////// void main() {ExecuteScript("nw_c2_default7", OBJECT_SELF);} |
![]()
Сообщение
#3579
|
|
Level 2 ![]() Класс: Оборотень Характер: True Neutral Раса: Эльф ![]() |
Понял в чем ошибка. У разных существ стояли разные скрипты на OnDeath, все ссылались give_cudtom_xp, потому возникали такие траблы. Проблема решена их удалением (IMG:style_emoticons/kolobok_light/biggrin.gif) Всем спасибо (IMG:style_emoticons/kolobok_light/prankster2.gif)
|
![]()
Сообщение
#3580
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Люди, помогите, я немного туплю: как мне сделать подобие теста? Например, чтоб НПС мне в диалоге задавал вопрос, я отвечал, и в конце мне должно выдать кол-во правильных ответов. Я в программировании немного разбираюсь но до меня немного не дошло как связать диалоги и скрипты. Объясните кто-нить на примере.
|
![]()
Сообщение
#3581
|
|
Level 9 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек NWN: Модмейкер Рыцарская Сага ![]() |
Lester, для этого нужно присвоить локалки за ответы, а в конце их проверить. В диалог мы можем воткнуть 4 вида скриптов:
1. на проверку 2. действие 3. прерывание диалога 4. нормальное завершение диалога Про редактор диалога советую почитать статейку: http://remmgen.narod.ru/treddialog.html Сообщение отредактировал gennady - Sep 4 2010, 16:46 |
![]()
Сообщение
#3582
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Я прочитал уже эту статейку. Но я не могу понять одного: для каждой ветки диалога надо писать ведь свой скрипт, да? А если я создам переменную в одном скрипте, как я смогу потом работать с этой же переменной но только в другой ветке диалога?
|
![]()
Сообщение
#3583
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
|
![]()
Сообщение
#3584
|
|
Level 2 ![]() Класс: Оборотень Характер: True Neutral Раса: Эльф ![]() |
1. Опыт удаляем на вкладке Модульные свойства в панели “Улучшенный”, тут можно задать опыт за уничтожение монстров, и выбрать длительность игрового часа, обычно час равен двум минутам реального времени. Учтите, что чем больше монстр имеет ХР, тем больше получит герой опыта… 2. Нужно повесить на героя локалку о отдыхе. а через определенное время ее снять. Вот для примера простой скриптик отдыха. Отдыхаем 1 час игрового времени и 10 минут реального не сможем воспользоваться отдыхом: Neverwinter Script //:://///////////////////////////////////////////// //:: Слот: OnPlayerRest - Модульные свойства //:://///////////////////////////////////////////// //////// СНЯТЬ ЭФФЕКТЫ И ВЫЛЕЧИТЬ ГЕРОЯ ///////// void FakeRestore(object oTarget) { int nHeal = GetMaxHitPoints(oTarget) - GetCurrentHitPoints(oTarget); effect eHeal = EffectHeal(nHeal); effect eBad = GetFirstEffect(oTarget); while(GetIsEffectValid(eBad)) { RemoveEffect(oTarget, eBad); eBad = GetNextEffect(oTarget); } ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, oTarget); } ///////////////////////////////////////////////////////////////////////////////////// void main() { object oPC = GetFirstPC(); int iTH = GetTimeHour(); int iRest = GetLocalInt(oPC, "REST"); /////////////////////////// START ///////////////////////////////////// if (GetLastRestEventType() == REST_EVENTTYPE_REST_STARTED) { if(iRest==1) // Блокировка отдыха { SendMessageToPC(oPC, "Вы не можете так часто отдыхать!"); AssignCommand(oPC,ClearAllActions(TRUE)); return; } SetCommandable(FALSE, oPC); // заблокировать очередь DelayCommand(4.0, FadeToBlack(oPC, FADE_SPEED_SLOW)); // Занавес из черного экрана DelayCommand(18.0, FadeFromBlack(oPC, FADE_SPEED_SLOW)); // Уберем занавес } ////////////////////////////// FINISH /////////////////////////////////// if (GetLastRestEventType() == REST_EVENTTYPE_REST_FINISHED) { iTH = iTH+1; SetTime(iTH,0,0,0); SendMessageToPC(oPC, "Вы отдыхали 1 час."); SetCommandable(TRUE, oPC); // разблокировать очередь FakeRestore(oPC); // Если нужно удалить вредные эффекты // ВРЕМЯ БЛОКИРОВКИ SetLocalInt(GetFirstPC(),"REST",1); DelayCommand(600.0, SetLocalInt(GetFirstPC(),"REST",0)); } } Столкнулся с такой проблемой: если бегаешь в партии с другим игроком, то отдыхать можно когда угодно. Не подскажите какэтого избежать? Сообщение отредактировал Lordeath - Mar 12 2008, 20:04 |
![]()
Сообщение
#3585
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Neverwinter Script void main() GetFirstPC() надо заменить на GetLastPCRested() { object oPC = GetFirstPC(); int iTH = GetTimeHour(); int iRest = GetLocalInt(oPC, "REST"); Neverwinter Script ////////////////////////////// FINISH /////////////////////////////////// Здесь смени везде GetFirstPC() на oPC: if (GetLastRestEventType() == REST_EVENTTYPE_REST_FINISHED) { iTH = iTH+1; SetTime(iTH,0,0,0); SendMessageToPC(oPC, "Вы отдыхали 1 час."); SetCommandable(TRUE, oPC); // разблокировать очередь FakeRestore(oPC); // Если нужно удалить вредные эффекты // ВРЕМЯ БЛОКИРОВКИ SetLocalInt(GetFirstPC(),"REST",1); DelayCommand(600.0, SetLocalInt(GetFirstPC(),"REST",0)); } } Neverwinter Script SetLocalInt(oPC,"REST",1); DelayCommand(600.0, SetLocalInt(oPC,"REST",0)); Честно говоря, идея с установкой времени на ресте мне не нравится. И фиг игроку, а не снятие эффектов (IMG:style_emoticons/kolobok_light/wink3.gif) Сообщение отредактировал Ilerien - Mar 12 2008, 22:45 |
![]() ![]() |
Текстовая версия | Сейчас: 2nd August 2025 - 05:05 |