![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#3221
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Что значит "не знает"? Эта функция лежит в стандартной библе nw_i0_2q4luskan. Отличается от простого создания обжекта тем, что возвращает не обжект, а войд - для того, чтобы можно было передать её в DelayCommand().
|
![]()
Сообщение
#3222
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
|
![]()
Сообщение
#3223
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
Хотел научить стражников ругаться и подбегать к игроку, если у него в руках находится оружие.
на onPerseption поставил такой кусок: Neverwinter Script object oPC = GetLastPerceived(); if (GetIsPC(oPC)&&GetLastPerceptionSeen()) { object oWeapon = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC); if (oWeapon != OBJECT_INVALID) { ClearAllActions(); AssignCommand(OBJECT_SELF, ActionStartConversation(oPC, "noweapon")); SendMessageToPC(oPC, "Я вижу тебя!"); } } "Ай си ю" в лог говорит, а вот диалог не стартует. Нипесь привязан к вейпоинтам, быть может в них дело? Сообщение отредактировал Batkom - Feb 12 2010, 20:53 |
![]()
Сообщение
#3224
|
|
Level 9 ![]() ![]() ![]() Класс: Волшебник Характер: Neutral Good Раса: Эльф ![]() |
Batkom, попробуй заставь его сначала подойти к игроку
|
![]()
Сообщение
#3225
|
|
Level 5 ![]() ![]() Класс: Некромант Характер: Chaotic Evil Раса: Человек ![]() |
возможно ActionDoCommand?
|
![]()
Сообщение
#3226
|
|
Level 2 ![]() Класс: Оборотень Характер: Lawful Good Раса: Человек ![]() |
1. Чета искал, искал и не нашел, можно ли такую фичу сделать, чтоб NPC мог пользоваться определенным предметом (точнее даже свойством предмета - заклинанием с него, уникальные способности там всякие). Скриптово можно только найти талант у NPC в определенной категории (атака, защита, лечение, зелье; на всех, на себя, на кого-то одного), и заставить его использовать, но при этом не контролируется, что именно будет использовать NPC. Можно ли это как то явно указывать. Я чувствую, стандартными средствами этого не сделать, но может в nwnx реализовано?
Мне в частности нужно, чтобы после смерти PC его хенч пытался его воскресить жезлом или свитком. Заклинанием можно заставить, но ждать до 5 круга заклятий для хенча-клерика совсем не вариант, а у остальных даже и этого нет. 2. Можно ли заставить NPC-клерика читать исцеляющие заклинания, если он их не запоминал? Кажись для них самопроизвольное чтение не работает и GetHasSpell() вернет 0... (IMG:style_emoticons/kolobok_light/unsure.gif) Сообщение отредактировал Mingun - Mar 21 2010, 09:18 |
![]()
Сообщение
#3227
|
|
Level 2 ![]() Класс: Оборотень Характер: Lawful Good Раса: Человек ![]() |
Да, и еще. Кто объяснит мне, почему народ так активно юзает CopyObject/DeleteObject для предметов, а не TakeFrom...|GiveTo... ? Переместить ведь должно быть быстрее и идеологически более правильно, чем копирование и последующее удаление? (IMG:style_emoticons/kolobok_light/snoozer_17.gif) (IMG:style_emoticons/kolobok_light/scratch_one-s_head.gif)
|
![]()
Сообщение
#3228
|
|
Level 2 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Neverwinter Script void main() { object oSelf = OBJECT_SELF; object oWp01 = GetNearestObjectByTag("WP1_"+ GetTag(OBJECT_SELF)) // какая проблема здесь? он нехочет компилить... пишет: // ОШИБКА: ПОТЕРЯ АНАЛИЗАТОРА ПЕРЕМЕННОЙ object oWp05 = GetNearestObjectByTag("WP5_"+ GetTag(OBJECT_SELF)) object oWpT01 = GetNearestObjectByTag("WP1_Tavern"+ GetTag(OBJECT_SELF)) //суть этого всего: обозначить теги точек для определенного нпс. //Он будет ходить просто по 5ти точкам(гулять), и будет заходить в таверну. object oWpT05 = GetNearestObjectByTag("WP5_Tavern"+ GetTag(OBJECT_SELF)) object oWpH01 = GetNearestObjectByTag("WP1_HOME"+ GetTag(OBJECT_SELF)) //5 точек, ведушие нпс к дому object oWpH05 = GetNearestObjectByTag("WP5_HOME"+ GetTag(OBJECT_SELF)) if(GetArea(GetFirstPC()) != GetArea(OBJECT_SELF)) return; int T = GetTimeHour(); if (T<7 && T>15) AssignCommand(oSelf, ActionForceMoveToObject(oWp01, TRUE, 4.0)); AssignCommand(oSelf, ActionWait(2.0)); AssignCommand(oSelf, ActionForceMoveToObject(oWp05, TRUE, 4.0)); AssignCommand(oSelf, ActionWait(2.0)); // Как сделать цикл? необходимо, чтобы эти действия // //производились циклически, пока идет время от 7 до 15ти// if (T<15 && T>21) AssignCommand(oSelf, ActionForceMoveToObject(oWpT01, TRUE, 4.0)); AssignCommand(oSelf, ActionWait(2.0)); AssignCommand(oSelf, ActionForceMoveToObject(oWpT05, TRUE, 4.0)); AssignCommand(oSelf, ActionWait(2.0)); ExecuteScript(sit_on_ch_tav) //когда нпс подойдет, он должен быдет сесть на стул. if(T<21 && T>7) AssignCommand(oSelf, ActionForceMoveToObject(oWpH01, TRUE, 4.0)); AssignCommand(oSelf, ActionWait(2.0)); AssignCommand(oSelf, ActionForceMoveToObject(oWpH05, TRUE, 4.0)); AssignCommand(oSelf, ActionWait(2.0)); ExecuteScript(1sleep)//когда настанет ночь, нпс пойдет домой и ляжет спать я немного ужал этот скрипт, убрал повторяюшиеся действия, типа: object oWp01 = GetNearestObjectByTag("WP1_"+ GetTag(OBJECT_SELF)) Мне нужно чтобы этот скрипт работал, и оживил немножко моих нпс-селян. а то они ходят как зомби, или тупо стоят... както нетак=) PS Все вопросы внесены в сам скрипт |
![]()
Сообщение
#3229
|
|
Level 9 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек NWN: Модмейкер Рыцарская Сага ![]() |
Ошибку выдает т.к. нет точки с запятой после сроки кода. А вот сам скрипт врятли тебе кто напишет... Могу порекомендовать тебе мой мануал по созданию скриптов НПС стоящих в ХБ слоте.
http://remmgen.narod.ru/tscript3.html#SC_HB Сообщение отредактировал gennady - Sep 4 2010, 16:26 |
![]()
Сообщение
#3230
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Цитата 1. Чета искал, искал и не нашел, можно ли такую фичу сделать, чтоб NPC мог пользоваться определенным предметом (точнее даже свойством предмета - заклинанием с него, уникальные способности там всякие). Скриптово можно только найти талант у NPC в определенной категории (атака, защита, лечение, зелье; на всех, на себя, на кого-то одного), и заставить его использовать, но при этом не контролируется, что именно будет использовать NPC. Можно ли это как то явно указывать. Я чувствую, стандартными средствами этого не сделать, но может в nwnx реализовано? Да, в NWNX реализовано, плагин Funcs.Цитата 2. Можно ли заставить NPC-клерика читать исцеляющие заклинания, если он их не запоминал? Кажись для них самопроизвольное чтение не работает и GetHasSpell() вернет 0... Кусок кода из джасперовсого АИ:Neverwinter Script int AI_ActionCastSpontaeousSpell(int iSpellID, int nTalent, object oTarget) Насколько я понимаю, GetHasSpell() прекрасно работает, единственный момент - заставить непися кастить спелл, даже если у него его нет (IMG:style_emoticons/kolobok_light/smile.gif)
{ if(nTalent > i0 && GetHasSpell(iSpellID) && GetObjectSeen(oTarget)) { // Note: Not stored or used in time stop // 8: "[DCR: Casting] Workaround for Spontaeous [SpellID] " + IntToString(iSpellID) + " [Target] " + GetName(oTarget) DebugActionSpeakByInt(8, oTarget, iSpellID); // Equip the best shield we have AI_EquipBestShield(); // Decrement the spell being cast by one as we cheat cast it DecrementRemainingSpellUses(OBJECT_SELF, iSpellID); // Cheat cast, it'll remove inflict wounds if it is an inflict spell anyway. ActionCastSpellAtObject(iSpellID, oTarget, METAMAGIC_NONE, TRUE); return TRUE; } return FALSE; } Сообщение отредактировал Ilerien - Mar 21 2010, 13:57 |
![]()
Сообщение
#3231
|
|
Level 2 ![]() Класс: Оборотень Характер: Lawful Good Раса: Человек ![]() |
Насколько я понимаю, GetHasSpell() прекрасно работает, единственный момент - заставить непися кастить спелл, даже если у него его нет (IMG:style_emoticons/kolobok_light/smile.gif) Это то я понимаю, что работает функция как положено для заклинаний. Мне непонятно, почему у нее нет отдельного возвращаемого значения для заклинаний исцеления клериков, и приходится вручную реализовывать им спонтанное чтение. Да. Воистину неисповедимы пути биотварей... (IMG:style_emoticons/kolobok_light/biggrin.gif) А как заставить NPC скастовать то, чего у него нет, я знаю (IMG:style_emoticons/kolobok_light/prankster2.gif) Да, в NWNX реализовано, плагин Funcs. Можно чуток поконкретней? Что то я там такого не видел... может плохо смотрел? В смысле какая функция? Уже нашел. что то у них на сайте как то плохо описаны возможности, а в скрипте все есть (IMG:style_emoticons/kolobok_light/smile.gif) Хотя нет, радость преждевременна. Где сам то плагин funcs??? На nwnx.org его нет. Есть только Functions, а это, как я понимаю. не одно и тоже (IMG:style_emoticons/kolobok_light/bb.gif) Сообщение отредактировал Mingun - Mar 22 2010, 10:21 |
![]()
Сообщение
#3232
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Цитата Где сам то плагин funcs??? На nwnx.org его нет. Есть только Functions, а это, как я понимаю. не одно и тоже Funcs на SVN virusman'a
|
![]()
Сообщение
#3233
|
|
Level 2 ![]() Класс: Оборотень Характер: Lawful Good Раса: Человек ![]() |
Спасибо! Жалко, под винду нету (IMG:style_emoticons/kolobok_light/smile.gif) Придется поколдовать (IMG:style_emoticons/kolobok_light/biggrin.gif)
|
![]()
Сообщение
#3234
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Ну, убунта в виртуалке (IMG:style_emoticons/kolobok_light/smile.gif)
|
![]()
Сообщение
#3235
|
|
Level 2 ![]() Класс: Оборотень Характер: Lawful Good Раса: Человек ![]() |
Ну, убунта в виртуалке (IMG:style_emoticons/kolobok_light/smile.gif) Не-е-е, так не пойдет. Я ж не могу заставить игрока в мой модуль запускать невер в виртуалке (IMG:style_emoticons/kolobok_light/biggrin.gif) |
![]()
Сообщение
#3236
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Поскольку это моя функция, в Functions она тоже есть.
Один человек недавно начал портировать Funcs на винду: http://www.nwnx.org/phpBB2/viewtopic.php?t=1535 Можешь попросить его сделать эту функцию. |
![]()
Сообщение
#3237
|
|
Level 7 ![]() ![]() Класс: Некромант Характер: True Neutral Раса: Нежить ![]() |
Не-е-е, так не пойдет. Я ж не могу заставить игрока в мой модуль запускать невер в виртуалке biggrin.gif (IMG:style_emoticons/kolobok_light/offtopic.gif) эммм... Если ты делаешь шард, то под чем сидит игрок тебя не будет интересовать, а если сингл: я что-то пропустил, или сделали нвнх под сингл? |
![]()
Сообщение
#3238
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
(IMG:style_emoticons/kolobok_light/offtopic.gif) эммм... Если ты делаешь шард, то под чем сидит игрок тебя не будет интересовать, а если сингл: я что-то пропустил, или сделали нвнх под сингл? Сделали.http://www.nwnx.org/phpBB2/viewtopic.php?t=1263 |
![]()
Сообщение
#3239
|
|
Level 2 ![]() Класс: Оборотень Характер: Lawful Good Раса: Человек ![]() |
Разве NWNX только для сервера? Мне казалось, что он и в клиентском невере может работать. Хотя.. с другой стороны, exe-шника я в ядре NWNX не видел, только dll.
А делаю я сингл. Просто мне хочется, чтобы хенчи могли воскрешать игрока после смерти, а для этого им надо уметь пользоваться палочками и свиточками воскрешения (в идеале - любым предметом, могущим возвращать к жизни). Типа придать им осмысленную деятельность при наличии возможностей (IMG:style_emoticons/kolobok_light/smile.gif) .Ну, а так как это стандартными средствами невозможно, пришлось обратится к не совсем стандартным (IMG:style_emoticons/kolobok_light/biggrin.gif) . Вообщем, спасибо, что просветили (IMG:style_emoticons/kolobok_light/rolleyes.gif) (IMG:style_emoticons/kolobok_light/offtopic.gif) Да, а чем различаются Funcs и Functions? Вроде многие функции у них совершенно аналогичные (IMG:style_emoticons/kolobok_light/unsure.gif) |
![]()
Сообщение
#3240
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
В общем, можешь использовать файлы из раздела Client Extender Downloads тут:
http://www.nwnx.org/index.php?id=nwnx2 Но учти, что тогда при распространении модуля тебе нужно будет включать NWNCX в его состав и объяснить пользователям, как запускать NWNCX. Functions - изначально плагин с разными функциями. Funcs - почти то же самое, но ещё со множеством дополнительных функций, касающихся игромеханики. Правда, иногда бывает, что в Functions что-то появляется, а в Funcs - ещё нет. |
![]()
Сообщение
#3241
|
|
Level 2 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Я нигде не нашел, как проверять, какой уровень моего персонажа. Мне нужно, чтобы диалог с одним персонажем проходил следуюшим образом: Сначала он дает мне задание на ковку меча, и на тренеровку моих навыков, а потом на 3ем уровне он просит меня разобраться с ограми.
Мастер скриптов неправильно пишет мне скрипт, или просто не работает... |
![]()
Сообщение
#3242
|
|
Level 2 ![]() Класс: Оборотень Характер: Lawful Good Раса: Человек ![]() |
Помоему функция
Neverwinter Script // Получает число броска хитов (hitdice) для oCreature, что является его уровнем. // * Возвращаемое значение, если oCreature - невалидное существо: 0 int GetHitDice(object oCreature); Комментарии мои, сам я ею не пользовался и как то дело не доходило, чтобы проверить, чтоже она возвращает, но по слухам вроде оно |
![]()
Сообщение
#3243
|
|
Level 2 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Ладно, вроди сделал пальцем скрипт, и боевая задача была решена=)
Но теперь новая проблема: я ненашел в базе скриптов следующего: НПС подходит и начинает разговор. Чтото помню, было такое... но невспомню, где видел... А такая фишка нужна мне уже в 2х местах... Сообщение отредактировал GoOfs - Mar 31 2010, 18:49 |
![]()
Сообщение
#3244
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Влей мой модуль ПВ, там куча стандартных триггеров и скриптов в палитре, с описанием. Почитай и попробуй. На них работает весь модуль.
|
![]()
Сообщение
#3245
|
|
Level 2 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Aiwan, благодарю! Думаю это привнесет в мой мод немного большее, чем я жду от ХотУ и СОУ. Я достаточно долго искал Хакпаки для нвн, и наконец то их нашел. А есть ли еще другие паки? Ну чтобы выбор был побольше.
|
![]() ![]() |
Текстовая версия | Сейчас: 2nd August 2025 - 02:12 |