![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#2961
|
|
Level 9 ![]() Класс: Вор Характер: Chaotic Good Раса: Эльф МАСТЕР Переводов ![]() |
Просто тогда игрок может заметить что он получил и одел предмет который не видит в инвентаре. А игрок и должен заметить, потому что это вознаграждение за квест. Спасибо всем за помощь. Теперь буду пытаться сваять скрипт. Так что скоро вернусь в тему ныть и мучить. (IMG:style_emoticons/kolobok_light/biggrin.gif) |
![]()
Сообщение
#2962
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Спасибо все скачал а NWNX работает только если играть одному чрез интернет? т.е заходить в игру через подключение или работает тагже с одиночьным модуль или кампанией. Да и какой плагин к NWN X надо скачивать что бы функции управления NPC были чета я ненашол таких
|
![]()
Сообщение
#2963
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Спасибо все скачал а NWNX работает только если играть одному чрез интернет? т.е заходить в игру через подключение или работает тагже с одиночьным модуль или кампанией. Да и какой плагин к NWN X надо скачивать что бы функции управления NPC были чета я ненашол таких Да, NWNX - это серверная примочка.Какой плагин и как управлять - это к Ilerien'у. Я тоже не совсем понял. |
![]()
Сообщение
#2964
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Нет такого плагина. И я сомневаюсь если честно, что появится. Слишком много костылей городить. Например, GetFirst/NextPC() будут возвращать новую кричу (не будут - поломает большинство скриптовых систем), старая (исходная) станет неписем. Действия над исходной (убийство к примеру) не пропишутся в бд сервера (в случае с фамом перед смертью тебя кидают в родное тельце). Даже если сделать 2 PC, это уже всплывает проблема идентификации. И это самое простое, что пришло в голову, там граблей еще больше.
P.S. Играйте в нвн2. |
![]()
Сообщение
#2965
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Блин что только как сервак это плохо т.к я кампанию делаю мне надо что-бы это можно было делать в режиме кампании. И NextPC() чето нефига неработает не выбираеться NPC хотя как я понимаю этого и недолжно быть т.к только в сети. Если нельзя выберать игрока обычным способом то можно ли сделать так в 2da создать фамиляра только что бы он потом непоявлялся при создании мага когда тот выберает какого фамиляра взять себе. И в игре скриптого зайти в управление фамиляром??? так можно хотя бы? Если нет то жаль придеться забить на NWN и искать РПГ движок где так можно сделать.
P/S NWN 2 была бы неплохой игрой и наверно многие делали модули по нему а не по NWN_1 там больше функций тулсера + графика современее и все бы хорошо если бы не одно но кривость рук обсидана убивает глюки от игры,с тулсероб до плагина на 3ds max в котором невозможно нормально создавать модели причина все виснит в игре все виснет, в тулсере вобще карты частенько криво сохраняються. патчи только карявят игру если оригенальную кампанию я непрошол из-за того-что она висла после битвы у крепости то аддон вобще лагает по страшному, а лазить поинтернету и искать к нему всякие исправные библиотеки мне и лом и качать надоело уже то игра навернеться то размер недецкий вобщем NWN2 это ацтой без будущего т.к я понял что там дотого глуканутый движок что ниодин патч проблему неисправит надо писать весь движок заного игра порчиная а в NWN-1 все играют так что у игры есть настоящие и небольшое будущие. А про глюки NWN2 можно говорить часами |
![]()
Сообщение
#2966
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
NWNX-плагином сделать вселение, думаю, не так-то сложно. Просто ни я, ни другие разработчики таких плагинов не делали.
В любом случае, NWNX - это для сервера (пока что, по крайней мере). Если хочется сделать возможность управления хенчем в сингле - советую посмотреть OHS: http://nwvault.ign.com/View.php?view=Scrip...ail&id=2568 |
![]()
Сообщение
#2967
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Цитата Какой плагин и как управлять - это к Ilerien'у. Я тоже не совсем понял. Я и имел в виду, что его можно написать (IMG:style_emoticons/kolobok_light/smile.gif)
|
![]()
Сообщение
#2968
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Я и имел в виду, что его можно написать (IMG:style_emoticons/kolobok_light/smile.gif) Добрый. (IMG:style_emoticons/kolobok_light/biggrin.gif) Послал новичка NWNX-плагины писать. (IMG:style_emoticons/kolobok_light/crazy.gif)
|
![]()
Сообщение
#2969
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Добрый. (IMG:style_emoticons/kolobok_light/biggrin.gif) Послал новичка NWNX-плагины писать. (IMG:style_emoticons/kolobok_light/crazy.gif) А то (IMG:style_emoticons/kolobok_light/ph34r.gif) Доброты не занимать (IMG:style_emoticons/kolobok_light/prankster2.gif)
|
![]()
Сообщение
#2970
|
|
Level 9 ![]() Класс: Вор Характер: Chaotic Good Раса: Эльф МАСТЕР Переводов ![]() |
Возникла такая проблема. По идее, этот скрипт заставляет потенциального хенча, который еще не присоединен к партии, при виде игрока сказать фразу, нечто подобное было в оригинальной кампании (откуда был содран и слегка видоизменен). Раньше работал, теперь вдруг перестал, хотя компилируется.
Скрипт стоит на OnEnter триггера. Строка, которую должен сказать хенч, в списке диалогов имеется. Neverwinter Script void main() { string sTag = "HENCH_1"; object oHenchman = GetNearestObjectByTag(sTag); object oEnter = GetEnteringObject(); if (GetIsObjectValid(oHenchman) && IsInConversation(oHenchman) == FALSE && GetIsObjectValid(GetMaster(oHenchman)) == FALSE && GetLocalInt(oEnter,"NW_L_Hailed_" + sTag) == FALSE) { SetLocalInt(oEnter,"NW_L_Hailed_" + sTag,TRUE); AssignCommand(oHenchman,SetFacingPoint(GetPosition (oEnter))); AssignCommand(oHenchman,SpeakOneLinerConversation("Hen1_Hail")); } } Это глюк тулса/игры или все-таки в скрипте ошибка? |
![]()
Сообщение
#2971
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Возможно, перестал существовать диалог Hen1_Hail
|
![]()
Сообщение
#2972
|
|
Level 9 ![]() Класс: Вор Характер: Chaotic Good Раса: Эльф МАСТЕР Переводов ![]() |
Я тоже уже об этом думала. Да в том-то и дело, что диалог цел и невредим... (IMG:style_emoticons/kolobok_light/sad.gif) и даже название у него совпадает с тем, что указано в скрипте
|
![]()
Сообщение
#2973
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Good Раса: Эльф ![]() |
Большое спасибо одному скриптеру,он помог разобраться с фракциями.
С этим вопрос тоже закрыт почти,но входе него выплыл другой вопрос,даже 3: 1-После убийства монстрами моей же фракции меня,если я атаковал монстров своей же фракции,(ну можно сказать например ту же фракцию тороговцы)они мне не перестают быть враждебны,даже после моей смерти от них,или после их смерти от меня,новый выходящий среспившийся моб по прежнему враждебен мне(эта фракция стает враждебной мне навсегда,а я знаю 100% что этого можно избежать,видел на буржуйских серверах,только незнаю как,этого добиться),как можно это сбросить(например после моей смерти)?чтобы новый респавнющийся монстр был мне снова дружественный,подскажите плиз скриптик знающие это люди?. 2-Как после перехода на тригер,игроки моей же фракции(такой же какую выбрал и я),автоматически присоединялись ко мне в отряд?,кто знает такой скрипт и куда его вставлять?.Отпоститесь сдесь плиз. 3-как после смерти сделать так чтоб я воскрешался на какуто другую точку,а не лежал там где и убили? Сообщение отредактировал Sugo77 - Jun 1 2008, 00:56 |
![]()
Сообщение
#2974
|
|
Level 3 ![]() Класс: Воин Характер: Lawful Evil Раса: Человек ![]() |
Цитата чтобы новый респавнющийся монстр был мне снова дружественный,подскажите плиз скриптик знающие это люди?. Тут и скриптиков не надо... лезем в редактировать->свойства модуля->события->событие OnPlayerDead. Изменяй дефолтный (стоящий по умолчанию) скрипт. Там ищи строчки в конце SetStandardFactionReputation(STANDARD_FACTION_COMM ONER, 80, oPlayer); и т.д. - именно они отвечают за то,чтобы после смерти игрока существа, принадлежащие (в этой строчке) к фракции обывателей, стали нейтральными по отношению к игроку. Меняй на здоровье. Единственное, плохо, что у тебя нестандартная фракция - функции для редактирования репутации в нестандартной фракции я не понмю. Но, скажи, если у тебя 3 воюющие стороны, то что мешает тебе использовать стандартные, внутриигровые фракции? Скажем, терране - обыватели, зерги - враждебные, а протосы - торговцы. Потом просто меняешь им отношение на нужное и все) А вместо защитников можешь поставить, скажем, торговцев в лагерях, которых не будут атаковать ворвавшиеся в лагерь воины. Цитата как после смерти сделать так чтоб я воскрешался на какуто другую точку,а не лежал там где и убили? смотришь редактировать->свойства модуля->события->событие OnPlayerRespawn. В самом конце есть строчки: object oSpawnPoint = GetObjectByTag(sDestTag); AssignCommand(oRespawner,JumpToLocation(GetLocatio n(oSpawnPoint))); Вот они-то и отвечают за то, чтобы игрок отправился в нужную точку после респавна. Точка - это местоположение объекта с тэгом sDestTag. Чтобы заработало создай объект с таким тэгом (или со своим, только в скрипте тогда его поменяй) и вынеси, если не заработет, эти строчки из-за скобок оператора if (а то я в скрипте этом не особо разбирался), т.е. поставь в самый конец, перед самой последней фигурной скобочкой. Цитата ак после перехода на тригер,игроки моей же фракции(такой же какую выбрал и я),автоматически присоединялись ко мне в отряд?,кто знает такой скрипт и куда его вставлять?.Отпоститесь сдесь плиз. Использовать функцию AddHenchman, если нужно сделать из них полноценных сторонников (тогда и сторонникам этим нужно хенчманские скрипты вставить, какие - смотри в теме скрипты для новичков). А если просто чтобы они побежали за тобой - используй функцию ActionForceFollowObject. Единственное, я не знаю как сделать так, чтобы ВСЕ твои сторонники к тебе присоединились. Тут нужно использовать цикл while, а я сним не силен работать. |
![]()
Сообщение
#2975
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Good Раса: Эльф ![]() |
Вот тот суперскй рабочи скрипт с фракциями
Neverwinter Script void main() { object oPC = GetEnteringObject(); object oFactionMember = GetObjectByTag("fact_1"); if(GetIsPC(oPC)) AdjustReputation(oPC, oFactionMember,-100); oFactionMember = GetObjectByTag("fact_2"); if(GetIsPC(oPC)) AdjustReputation(oPC, oFactionMember, 100); oFactionMember = GetObjectByTag("fact_3"); if(GetIsPC(oPC)) AdjustReputation(oPC, oFactionMember, -100); } Но если атаковал своего же моба он остается враждебным! Я вообшем удалил нестандартные фракции свои и заменил на 3 стандартных для всех мобов Торговец Зашитник и Враждебный как и писал Neakris но он почему то срабатывает только для одной стороны!Может я нетак значения применил проверьте,значения исходя из первого моего главного скрипта по 100 и -100 Neverwinter Script // * Note: waiting for Sophia to make SetStandardFactionReptuation to clear all personal reputation if (GetStandardFactionReputation(STANDARD_FACTION_COM MONER, oPlayer) <= 10) { SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 10); // * Player bad SetStandardFactionReputation(STANDARD_FACTION_COMM ONER, 100, oPlayer); } if (GetStandardFactionReputation(STANDARD_FACTION_MER CHANT, oPlayer) <= 10) { SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 10); // * Player bad SetStandardFactionReputation(STANDARD_FACTION_MERC HANT,-100, oPlayer); } if (GetStandardFactionReputation(STANDARD_FACTION_DEF ENDER, oPlayer) <= 10) { SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 10); // * Player bad SetStandardFactionReputation(STANDARD_FACTION_DEFE NDER, 100, oPlayer); } DelayCommand(2.5, PopUpGUIPanel(oPlayer,GUI_PANEL_PLAYER_DEATH)); } Может его надо 3 раза прописать но вопрос тогда куда вставлять? Сообщение отредактировал Sugo77 - Jun 1 2008, 13:30 |
![]()
Сообщение
#2976
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
Цитата Но если атаковал своего же моба он остается враждебным! Правильно, кому понравиться, что его бьют? (IMG:style_emoticons/kolobok_light/vava.gif) смотри "repadjust.2da" - хз какое поле за что отвечает, но смена отношения там. Neverwinter Script if (GetStandardFactionReputation(STANDARD_FACTION_MER CHANT, oPlayer) <= 10) { SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 10); // * Player bad SetStandardFactionReputation(STANDARD_FACTION_MERC HANT,-100, oPlayer); } тут как я понял говорится о том, что "если торговец вас ненавидит - заставить ненавидеть вас ещё сильнее". по умолчанию торговцы не такие уж и буки. |
![]()
Сообщение
#2977
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Good Раса: Эльф ![]() |
убрал я у себя фракцию враждебный так как в этом скрипте ее нету,я его перевел на руский сдес защитник простолюдин и торговец,я такие фракции и сделал ,но всеравно он работает тока с торговцами,получается что вообще неработает так как торговцы и без этого скрипта возвращаются в дружественные отношения после убийства ими игрока, чтоже нетак непойму?
Да а кстати глобальный эффект что означает во фракциях?Я его поставил для всех фракции. А также шкала П-незнаю что такое ето?но она у меня на 50 стоит,я поставил для всех фракций,ее вообше как надо ставить? Neverwinter Script // * make friendly to Each of the 3 common factions AssignCommand(oPlayer, ClearAllActions()); // * Note: waiting for Sophia to make SetStandardFactionReptuation to clear all personal reputation if (GetStandardFactionReputation(STANDARD_FACTION_COM MONER, oPlayer) <=-100) { SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 100); // * Player bad SetStandardFactionReputation(STANDARD_FACTION_COMM ONER, 100, oPlayer); } if (GetStandardFactionReputation(STANDARD_FACTION_MER CHANT, oPlayer) <=100) { SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad",-100); // * Player bad SetStandardFactionReputation(STANDARD_FACTION_MERC HANT, 100, oPlayer); } if (GetStandardFactionReputation(STANDARD_FACTION_DEF ENDER, oPlayer) <=-100) { SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 100); // * Player bad SetStandardFactionReputation(STANDARD_FACTION_DEFE NDER, 100, oPlayer); } DelayCommand(2.5, PopUpGUIPanel(oPlayer,GUI_PANEL_PLAYER_DEATH)); } Еше подскажите скрипт на дислайк при нажатии на тригер OnClick также для трех фракций Я толко вот какойто отрывок нашел но толку от него ноль без полного скрипта,кто работал с дислайками? помогите плиз создать этот скрипт void SetPCDislike(object oPlayer, object oTarget) Сообщение отредактировал Sugo77 - Jun 1 2008, 23:32 |
![]()
Сообщение
#2978
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Подскажите пожалуста тогда как написать такой плагин? я знаю немного Borland c++ Builder и все. Тока мне надо чтоб плагин не тока в сетевой игре работал но и в кампании если какиенибудь исходные коды как их делать? я тут находил плагин позволяющий писать букву "Я"
Он без NWNX работает мнеб типа такого только добавляющий функцию управления NPC как преблизительно его написать или функцию эту где узнать напишите пожалуста если не сложно поподробнее....... (IMG:style_emoticons/kolobok_light/scratch_one-s_head.gif) |
![]()
Сообщение
#2979
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Никак..
|
![]()
Сообщение
#2980
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Блин а можно тогда переименовать главного героя скриптом и при морфе сделат больше 3ех родных абил и еще бы конечными их сделать.... Или может есть какаянибудь альтернатива?
|
![]()
Сообщение
#2981
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Я уже давал ссылку.
http://nwvault.ign.com/View.php?view=Scrip...ail&id=2568 |
![]()
Сообщение
#2982
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Good Раса: Эльф ![]() |
Ну помогите же с написанием скрипта на дислайки плиз,чтоб нажав на тригер игрок был враждебен к дргим двум разным игрокам,других фракций.
вот это вступление скрипта void main SetPCDislike(object oPlayer, object oTarget) Сообщение отредактировал Sugo77 - Jun 8 2008, 20:45 |
![]()
Сообщение
#2983
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
После такого вступления требуется виртуозное исполнение! Я сейчас дорабатываю свою библиотеку функций распарсивания строк (получается интересная возможность писать "полускрипты" и создавать "мягкий" код). Ваш вопрос побудил меня задуматься над совершением ещё одного шага вперёд от ExecuteCommand(string sCommand) к DoStuff(string sWhat, int bAndDoItGood), где мы переходим от искуственного машинного языка к литературному. Сравните:
Neverwinter Script ExecuteCommand("if (on_trigger AND $[0] == %PC%) foreach AbstractNwnPlayer player FROM `factions` WHERE `ID` <> %PC%["FACTION"] player->Instance()->ModAV 'Disposition' -100"); и Neverwinter Script DoStuff("чтоб нажав на тригер игрок был враждебен к дргим двум разным игрокам,других фракций", TRUE); Не правда ли небо и земля? Трезво оценивая свои силы, думаю, что шансов реализовать задуманое до стечения века почти нет. Но мало ли - вдруг. |
![]()
Сообщение
#2984
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Очень интересно. (IMG:style_emoticons/kolobok_light/smile.gif)
Я для таких вещей встроил в НВН скриптовый интерпретируемый язык Ruby и собираюсь сделать веб-интерфейс, в котором визуально выбираешь логику - и на её основе генерируется скрипт, который сразу же подхватывается сервером. |
![]()
Сообщение
#2985
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Good Раса: Эльф ![]() |
Neverwinter Script ExecuteCommand("if (on_trigger AND $[0] == %PC%) foreach AbstractNwnPlayer player FROM `factions` WHERE `ID` <> %PC%["FACTION"] player->Instance()->ModAV 'Disposition' -100"); Это скрипт на дислайки? Пробовал вставлять в OnClick тригера,выдает ошибки на f7 Помогите написать етот скрипт в конце корнцов((((((((кто нибудь из скриптеров,я застрял на этом,в создании модуля Сообщение отредактировал Sugo77 - Jun 12 2008, 14:19 |
![]() ![]() |
Текстовая версия | Сейчас: 1st May 2025 - 04:58 |