Помощь - Поиск - Пользователи - Календарь
Полная версия: ОДИНОЧНЫЙ ВОПРОС
Город Мастеров > РЕДАКТОРЫ > Neverwinter Nights Aurora Toolset
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68
Lex
инклуд - библиотека с функциями. Подключение ее к скрипту обеспечивает возможность использовать в скрипте те функции, которые описаны в библиотеке.
Aiwan
Topik, все основные понятия я разбирал в своем мануале по авроре (в том числе и инклюду). Рекомендую почитать, отпадут детские вопросы и ненужный напряг людей.
Teranozavr_REX
Очень надо найти такой функции, не смог сам.
Должна возвращать дальность видимости моба
в метрах или константами

короткая
средняя
длинная

среди стандартных не нашел
может кто то знает де такое в Инклюдах найти, или есть что то самописное.

Так же интересует можно ли найди ( переписать), исходный код, функцию
Neverwinter Script Source
int GetObjectSeen(object oTarget, object oSource=OBJECT_SELF)

просто есть желание, отучитьмобов лагатьна перехайде

Так же, может кто то когда то видел гдето или сам переписывал
Neverwinter Script Source
void WalkWayPoints(int nRun = FALSE, float fPause = 1.0)

надо укороченый вариант сей функции
что бы моб ходил только по обычным вейпоинтам и не делал разници на день, ночь и еще многочего лишнегои не нужного что позволяет реализаватьстандартный вариант этой функции
Aiwan
Цитата(Teranozavr_REX @ Aug 20 2007, 14:44) *
надо укороченый вариант сей функции

Перепиши инклюду в которой эта функция. Будет короче... и (или?) быстрее...
Seneshal
Пожалуйста объясните мне дураку как попасть в тулсет, и в пиратке и в акеловской версии постоянно одна и таже ошибка...я уже и сносил и занова переставлял, скачивал ориг ехе - ники...и все бестолку... (NWN2)
Lex
http://www.city-of-masters.ru/forums/index.php?showforum=24 - форум по НВН2.
Там описаны пара вариантов решения проблемы. Но возможно ничего не поможет. Мне не помогло smile.gif
Topik
Цитата(Lex @ Aug 27 2007, 17:02) *
http://www.city-of-masters.ru/forums/index.php?showforum=24 - форум по НВН2.Там описаны пара вариантов решения проблемы. Но возможно ничего не поможет. Мне не помогло smile.gif
Мне тоже не помогло. Но на 3 неделю все заработало.Кто нибудь может сказать где именно можно найти карты городов Файруна. Я хотел реализовать город Калонт самый богатый и вонючий город Васта. Но прочитав инфу по этому городу отказался от этой затей. Но уже ничего не поделаешь. Придется переделавать город который разрабатовался как Калонт в другой город поменьше.
Aiwan
Вся инфа в основном на наглийском и навряд ли она будет официальной по картинкам. ТАкие же как ты энтузиасты будут рисвоать. Официально в основном только текст.
DarkPhoenix
У меня небольшой вопросик...
Код
void main()
{
object oNPC = GetObjectByTag("wizard");
object oWP = GetWaypointByTag("WP3");
ActionDoCommand(AssignCommand(oNPC, ActionJumpToObject(oWP)));
}

Вот такой скрипт стоит на OnDeath дракона, когда его убиваешь должен появляться волшебник и хвалить героя. Но он почему-то не появляться (волшебник заспавнен в закрытой комнате, в этой же локе). Я что-то не так сделал?
Aiwan
Скрипты на OnDeath очень глючны. Написано самими Биоварцами.
sKaa
Попробуй создавать нового волшебника

Neverwinter Script Source
void main()
{
object oNPC = GetObjectByTag("wizard");
object oWP = GetWaypointByTag("WP3");
CreateObject(OBJECT_TYPE_CTrEATURE, "ResRef волшебника", GetLocation(oWP), FALSE, "wizard");
}
kreon
Волшебнику стек действия сбрасывай перед тем как его посылать куда-то.
Иногда помогает.
Aiwan
Самое лучшее влепи на онЮзерДеф визарда код, и при смерти дракона кидай сигнал волшебнику, он прочухав команду фас сделает все чт онапишешь и рекция дохлого дракона уже не нужна. Еще. Волшебник должен быть стандартный без всяких спавн анимашек и рандомных брождений потаму как оно все чистит ему стек.
Neverwinter Script Source
//::///////////////////////////////////////////////
//::
//:: Copyright © 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
    Сигнал для Убо-Сатло после смерти.
*/

//:://////////////////////////////////////////////
//:: Created By: Keith Warner
//:: Created On: June 11/03
//:://////////////////////////////////////////////
void main()
{
    object oUbo = GetObjectByTag("AM_CUT2_UBO"); // Убо-Сатло
    object oDoor = GetObjectByTag("AM_D_INT_STERN_01_EXIT"); // Дверь
    SignalEvent(oUbo,EventUserDefined(2000)); // Сигнал Убо на действия
    SetLocalLocation(oDoor, "HALIB_DEATH", GetLocation(OBJECT_SELF));
    ExecuteScript("nw_c2_default7", OBJECT_SELF);
}


Neverwinter Script Source
//:://////////////////////////////////////////////
//:: OnUserDefaine  am_cud_ubo_cut2
//:: Copyright © 2005 WRG!
//:://////////////////////////////////////////////
/*
    Скрипт начала диалога после смерти Халиба.
*/

//:://////////////////////////////////////////////
//:: Created By: Aiwan
//:: Created On: 09.07.2005
//:://///////////////////////////////////////////
#include "am_inc_cutscene"
#include "am_inc_common"
#include "sz_inc_common"
void main()
{
   int nEvent = GetUserDefinedEventNumber();
   if (GetIsDead(OBJECT_SELF)==TRUE) return; // Если он помер, то пусть молчит
   if (GetArea(OBJECT_SELF)!=GetArea(GetFirstPC())) return;

//============================= CUSTOM EVENT ===================================
  if (nEvent == 2000) //
     {
     Debug("Сигнал слышу!");
     object oPC = GetNearestPC();
     object oUbo = OBJECT_SELF; // Убо-Сатло
     CreateQuest("HALIB", TRUE);
     FreezeCompanion(oPC);
     AssignCommand(oPC, ClearAllActions(TRUE));
     AssignCommand(oPC, ActionDoCommand(SetFacingPoint(GetPosition(oUbo)))
;
     AssignCommand(oPC, ActionDoCommand(SetCommandable(FALSE, oPC)));
     DelayCommand(3.0, AssignCommand(oUbo, PlayVoiceChat(VOICE_CHAT_YES)));
     DelayCommand(3.01, AssignCommand(oUbo, SpeakString("Да! ЭТО свершилось!")));
     DelayCommand(3.3, SetAILevel(oUbo, AI_LEVEL_HIGH));
     DelayCommand(4.0, AssignCommand(oUbo, ActionForceMoveToObject(oPC)));
     DelayCommand(4.5, AssignCommand(oUbo, ActionStartConversation(oPC)));
     DelayCommand(4.9, AssignCommand(oUbo, SpeakString("Хвала Богам!")));
     DelayCommand(5.0, AssignCommand(oUbo, ActionDoCommand(SetCommandable(TRUE, oPC))));
     DelayCommand(6.0, AssignCommand(oUbo, ActionDoCommand(SetAILevel(oUbo, AI_LEVEL_DEFAULT))));
     DelayCommand(6.0, UnFreezeCompanione(oPC));
     DelayCommand(20.0, DoCommandable(oPC));
     DelayCommand(21.0, RS_ReApply_Tiredness(oPC));
     }

}
r1Stranger
мот и я помогу чем....
Цитата(DarkPhoenix @ Aug 31 2007, 14:18) *
У меня небольшой вопросик...
Код
void main()
{
object oNPC = GetObjectByTag("wizard");
object oWP = GetWaypointByTag("WP3");
ActionDoCommand(AssignCommand(oNPC, ActionJumpToObject(oWP)));
}

Вот такой скрипт стоит на OnDeath дракона, когда его убиваешь должен появляться волшебник и хвалить героя. Но он почему-то не появляться (волшебник заспавнен в закрытой комнате, в этой же локе). Я что-то не так сделал?

У меня тоже такое было - делал микромод на защиту дриады, после смерти которой много чего происходит.
Обнаружилась такая штука - пока не разложился труп - некоторые команды выполняются, а после исчезновения мяса - уже нет(типа нет объекта).
*а привязывать мертвому объекту какое то действие по моему проблемно. Попробуйте может без...ActionDoCommand
Lex
ActionDoCommand, как и любое другое действие (все команды типа Action*) бесполезно делать в слоте onDeath или вообще привязывать такие действия умершим персонажам. По понятным причинам труп ничего делать не будет. Однако другие команды работают. В данном варианте просто надо убрать ActionDoCommand.
Белатрис
ЗдрастИ! scratch_one-s_head.gif
Мой тулсет подвергся атаке палочек. Собственно, как решить проблему? Я прочел тему на этом форуме, но ничего не помогло! unsure.gif Переустанавливал игру - тоже самое. Потом уж решил и на английской делать, но теперь и патч не ставится. Ему лицензию подавай, якобы - игру переустанови! Раньше такого не было! unsure.gif
Lex
Винду переставить. Этот способ действовал всегда. Еще очень многим помогало изменение в реестре, в теме о палочках описаны эти действия.
Белатрис
Лекс, там не совсем подробно. Как в реестр попасть? Там написанно, ввести *какая-то команда*, но где ее вводить? В командной строке? unsure.gif
П.С. Переустановка винды - это слишком! Это ж все снесется! Все проги из реестра вылетят! =(
Dik Morris
C:\WINDOWS\regedit.
Или просто: "Выполнить: regedit".

Какая-то жалкая винда, останавливает тебя от тулсета?.. biggrin.gif
Белатрис
Не помогло. А еще, перед запуском мне говорят "Ключ регистра SOFTWARE\BioWar\NWN\Newerwinter не найден":unsure:
П.С. Мне бы патч установить.... я бы и с английским тулсетом смог поработать... sad.gif Со школы приду, переустановлю игру и попробую.
П.П.С. Если я сделаю модуль на английской версии, на русской он пойдет?
Цитата
Какая-то жалкая винда, останавливает тебя от тулсета?..

Проблема в том, что я могу опять все бросит( прошлый(вернее прошлое начало) мод у меня был проработан очень неплохо. Один длинный(разветвтляющийся) диалог с персонажем, у этого же диалога четыре квеста, пять локаций, со своими загрузочными картинками, новая музыка... )
sKaa
Цитата(Белатрис @ Sep 5 2007, 02:30) *
Не помогло. А еще, перед запуском мне говорят "Ключ регистра SOFTWARE\BioWar\NWN\Newerwinter не найден":unsure: П.С. Мне бы патч установить.... я бы и с английским тулсетом смог поработать... sad.gif Со школы приду, переустановлю игру и попробую.П.П.С. Если я сделаю модуль на английской версии, на русской он пойдет? Проблема в том, что я могу опять все бросит( прошлый(вернее прошлое начало) мод у меня был проработан очень неплохо. Один длинный(разветвтляющийся) диалог с персонажем, у этого же диалога четыре квеста, пять локаций, со своими загрузочными картинками, новая музыка... )
Создай файл с каким нить именем и расширением *.regнажми на нем правым маусом и шелкни *изменить* и занеси туда
Код
Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\BioWare][HKEY_LOCAL_MACHINE\SOFTWARE\BioWare\NWN]
[HKEY_LOCAL_MACHINE\SOFTWARE\BioWare\NWN\Neverwinter]"Location"="D:\\Games\\new\\Neverwinter_Shadows"
"Language"=dword:00000000"Version"="1.59""GUID"="{7C503E58-B2BC-11D5-978A-0050BA84F5F7}"
[HKEY_LOCAL_MACHINE\SOFTWARE\BioWare\NWN\Neverwinter\NWUpdate]"Ping Timeout"="1000""Debug"="0""Internet Connect"="0""RebootMessageCount"=dword:00000000"Window Position"="146,24""Window Size"="618,447"
только вместо D:\\Games\\new\\Neverwinter_Shadowsнапиши свой путь к игре используя двойной слеш \\И если ты напишиш модуль в английской версии тул сета он у тебя ессно буит работать в русском нвнНе забудь запустить файл который ты создаш smile.gif.. и инфа о нвне занесеться в реестр
Белатрис
sKaa, ок, спасибо. Получилось.
Lex
Цитата(Белатрис @ Sep 5 2007, 02:30) *
П.П.С. Если я сделаю модуль на английской версии, на русской он пойдет?
да.

ps: sKaa, good.gif
Белатрис
Мда... только диалоги неудобно составлять, там тоже палочки... =(
sKaa
Товарисчи мастера, а вы не в курсе есть ли где нить фак по aps и SQL-Lite...
sKaa
Как отключить проверку сд-кея у биотварей на серваке, все уже попробовал.. не помогает не чо.. мб патч какой есть для сервака под винду или еще что?
Подскажите плиз оч надо
virusman
Во-первых, к тулсету это отношения не имеет.
Во-вторых, надо называть игру (НВН/НВН2) и версию.
sKaa
Цитата(virusman @ Sep 7 2007, 03:21) *
Во-первых, к тулсету это отношения не имеет.Во-вторых, надо называть игру (НВН/НВН2) и версию.
Да прошу прощения за оффтоп, но мне оч надо.. НВН1, версия 1.68Я конешно хз но хекс редактором я нашел следующее:
Neverwinter Script Source
************************************************    Report Generated: %s  Server  Client  Client/Server   ************************************************ IPX: %i %i %i %i:%i UDP: %i %i %i %i:%i Connection Attempt made by %s (%s) Invalid public cd key: %s (%s) BLAH    Address Banned: %s Invalid %s Password Attempt:  Address: %s
я пробую там че нить изменить и файл перестает запускаться, мб кто нить если не трудно всетаки поможет мне с последними моими постави в етой теме?
virusman
На следующей неделе сделаю, если будет время.
sKaa
Цитата(virusman @ Sep 7 2007, 11:32) *
На следующей неделе сделаю, если будет время.

мб скажеш как а я сам зделаю и выложу где нить, просто оч надо в ближайшие дни...
frozenCat
Доброго времени суток. Можно ли изменить динамику боя? Что бы не было пауз между ударами. Добавить такие параметры как скорость атаки тем самым.
Белатрис
Конечно нет, если я правильно понимаю, то это, как говорят, зашито в движок =)
Да и неужели ты считаешь, что будь у разработчиков такая возможность, они бы ее не использовали? biggrin.gif
sKaa
Конечно нет,
virusman
Цитата(sKaa @ Sep 7 2007, 11:50) *
мб скажеш как а я сам зделаю и выложу где нить, просто оч надо в ближайшие дни...
Не получится.
ZipovUA
Добрый день (надеюсь таким он вам будет smile.gif )

Я сейчас понемногу творю мой первый модуль и у меня есть соответветствуищее вопросы:
Script:

Я создал скрипт, который срабатывает при соответсвуещей ветке диалога. Скрипт долен присоеденить в команду к главному персонажу его собеседника.

AddToParty(GetObjectByTag("Mufa"),GetFirstPC());

Где "Mufa" - это дракон (или кто-нибудь другой) который должен присоединится к команде.
GetFirstPC() - получаем нашего главного перса.

Проблема в том, что никто упорно не присоединяется в команду sad.gif
Пожалуйста скажите, что я мог сделать не так.


2) В одной из моих будущих сцен, княжья семья оказываеться в лесу.
Пешком князю ходить не положено, поэтому вопрос: скажите пожалуйста, где можна достать модели повозок, коней, корет для НВН и\или НВН2?

3) В одном из ваших примеров есть функция SpeakString(); c русским текстом, но у меня русский текст в тулсет НВН попросту не пишется. Не английские символы попросту блокируются. Не знаете, почему так?


4)Для пробы на OnEnter области забросил функцию AssignCommand(GetFirstPC(), SpeakString(" I kakogo ya suda potknulsa???"));

Как я понимаю в результате этого скрипта при входе в даную област персонаж должен сказать (английскими буквами) "И какого я сюда поткнулся"?

Но почему-то ничего не отображается.

5) Как я понимаю любой объект игры - это обычный класс, который вмещает в себя набор свойств. И от у меня соответсвующий вопрос: где можна получить список свойств объекта и как их можна менять?

Lex
1 - скрипт присоединения целиком
2 - http://www.nwvault.ign.com/
3 - не стоит патч Дамбо. Если влом ставить - текст можно вносить копированием из внешнего текстового редактора или поля фильтра функций. Но букву "я" надо будет убирать. Проще поставить патч и не париться: http://www.wrg.ru/index.php?method=files.o...=47&sub=vaf
4 - на onEnter лучше отслеживать игрока не GetFirstPC() (хотя и оно должно работать по идее, но без возможности "пощупать" ваш случай с неработающим скриптом, сделать что-то трудно), а GetEnteringObject() + проверка GetIsPC()
5 - прямого управления объектами и свойствами нет. Есть куча методов по работе с объектами, собсна почти все функции скриптового языка именно этим и занимаются.
ZipovUA
Спасибо за ответ, но тут появилась новая проблема:
После того как я поставил этот патч (скопировал в папку с игрой, запустил оттуда и нажал "откоректировать") у меня перестал запускатся тулсет

выдает сообщение "abnormal program termination" и програма закрывается.
Lex
Надеюсь речь идет о тулсете НВН1, ибо патч на него написан. В этом случае надо позвать Дамбо, ибо тут только он может помочь. Пока его нет, сделайте откат назад ручками (патч оставляет оришинальный вариант тулсета toolset.exe.bak вроде бы) и работайте с текстом через копи-паст.
ZipovUA
Насчёт первого вопроса.

Вообще-то я больше ничего и не писал кроме выше указаной строчки для присоединения персонажа в команду.
Если надо что-то еще дописать, пожалуйста скажите об этом.

Neverwinter Script Source
funtion <название функции>()
{
  int oResult;
  AddToParty(GetObjectByTag("Mufa"),GetFirstPC());
  return oResult;
}


P.S. Да я всё делаю в НВН1. (На ноутбуке особо с игрушками не розгонишся biggrin.gif )
P.S.S. Спасибо за ссылку. Коня нашёл. Но что с ним делать понять не могу. В архиве 2 файла: *.tga и *.mdl. Также хотелось бы узнать (или получить ссилку на уже существующий пост) как можна "посадить" персонажа на этого коня.
Lex
Цитата(ZipovUA @ Sep 15 2007, 11:35) *
Вообще-то я больше ничего и не писал кроме выше указаной строчки для присоединения персонажа в команду.
если прямо это и есть скрипт присоединения, то он конечно же работать не будет.Стоять должно вот это:
Neverwinter Script Source
void main(){AddToParty(GetObjectByTag("Mufa"),GetFirstPC());}
Если скрипт в диалоге именно с этим НПС, который пойдет в партию, то можно еще так:
Neverwinter Script Source
void main(){AddToParty(OBJECT_SELF,GetPCSpeaker());}
Цитата(ZipovUA @ Sep 15 2007, 11:35) *
P.S.S. Спасибо за ссылку. Коня нашёл. Но что с ним делать понять не могу. В архиве 2 файла: *.tga и *.mdl. Также хотелось бы узнать (или получить ссилку на уже существующий пост) как можна "посадить" персонажа на этого коня.
с посадкой сложности. Нужно искать специальные хаки, которые вносят коней, на которых можно садиться. Так было в премиум-модуле Кормира, но не знаю, выложены ли их хаки на волте.Те если просто взять лошадь, то посадить на нее игрока не получится, этот аспект должен учесть создатель лошади, ты тут ничего сделать не сможешь.
sKaa
Помойму можно воспользоваться командой
AddHenchman(GetLasSpeaker(), GetObjectByTag("Mufa"));
и в 1.68 версии появилось
SetMaxHenchman(oPC, 3);
или что-то типо того, без тул сета пишу
Lex
Цитата(sKaa @ Sep 15 2007, 16:38) *
AddHenchman(GetLasSpeaker(), GetObjectByTag("Mufa"));

Не вводи людей в заблуждение, GetLastSpeeker немного не то (Use this in a conversation script to get the person with whom the PC is conversing - Lexicon).
В диалоге игрока надо брать GetPCSpeaker
dumbo
Цитата(ZipovUA @ Sep 15 2007, 10:46) *
После того как я поставил этот патч (скопировал в папку с игрой, запустил оттуда и нажал "откоректировать") у меня перестал запускатся тулсет
какая версия игры, тулсета? на всех версиях от 1.62(вроде) и вплоть до 1.68 патч работает нормально... опционально, можешь отправить мне nwtoolset.exe в архиве на dumbo(собака)nm.ru
ZipovUA
Версия игры:
NWMain - 1.0.0.0
NWN - 1.4.0.5
ToolSet - 1.2.2.4

P.S. Скажите, пожалуйста, как импортировать MDL-файл в тулсет?
Lex
1. версии надо не файлов, это нам ничего не говорит. Версию игры можно посмотреть в уголочке при запуске менюшки nwn.exe
2. в тулсет ниче импортировать нинада. Для того, чтобы модель подцепилась игрой, достаточно кинуть мдл файл или в папку оверрайд. Однако этого мало, нужно еще модельку прописать (если ты ставишь нового монстра - appearance.2d, если плейс - placeable.2da, если айтем - ниче не нада, кроме правильных названий для файла и текстур/иконок).

зы: эти базовые вопросы разбирались сотни раз, поищи.
SergeyM
Подскажите пож-та можно ли как-то сделать чтобы в первом НВНе присоединить к Герою не одного только товарища, а всех которые есть сразу.. ?
Lex
максимум 2 (3?) хенча в НВН1 вроде. Скриптовая функция SetMaxHenchman или как-то так. Нужны оба аддона.
SergeyM
Lex, а поподробнее rolleyes.gif
Белатрис
Устанавливаешь НВН1+HotU+SotU. Можно и обновить последним патчем для полного счастья.
SergeyM
Цитата(Белатрис @ Sep 20 2007, 09:42) *
Устанавливаешь НВН1+HotU+SotU. Можно и обновить последним патчем для полного счастья.
Это то понятно, а воть что делать со скриптовой функцией? И как потом присоединять?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2024 Invision Power Services, Inc.