Помощь - Поиск - Пользователи - Календарь
Полная версия: Вопросы новичков
Город Мастеров > РЕДАКТОРЫ > 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, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103
Nokoll
QUOTE
LOL!!!    Последнее время стало гораздо веселее на форуме благодаря тебе. Почти каждое выражение - перл! Только я не знаю: веселиться или плакать от этого? Жаль удалили ту тему, где ты на DarkT(по-моему так звали бедолагу) наехал. Я долго ржал. За дело, конечно, наехал, но...

Я всё правильно сказал чтобы он заменил TRUE на FALSE это просто может ты не знаеш..
Ну про тему с DarkT это ващще я не думаю что ктото сдесь создовал 10 тем сразу и всё по разным вопросам!
Nokoll
И вабще Ты чиво сюда Поржать Заходиш...
Archangel
Не подскажет ли мне кто-нить как поминять музыку в локе скриптом. Я юзал такую ф-ию:
Neverwinter Script Source
MusicBackgroundChangeNight(GetArea(OBJECT_SELF), 43);

Но че-то она не фурычит. Может кто-нить пдскажет чего надобно сделать? this.gif
Tiger Greyhawk
2 Archangel
Neverwinter Script Source
MusicBackgroundChangeNight(OBJECT_SELF, TRACK_BATTLE_CITY1);

вместо TRACK_BATTLE_CITY1 подставляешь ту константу, кот. надо.
Вроде так.
Equil
2 Archangel : Вроде все правильно, ошибка может быть только в том если у тебя нет трека под таким номером, или в том что ты ее днем сменить пытаешься, ведь она меняет музло в ночное время суток.
Archangel
QUOTE
Neverwinter Script Source
MusicBackgroundChangeNight(OBJECT_SELF, TRACK_BATTLE_CITY1);

вместо TRACK_BATTLE_CITY1 подставляешь ту константу, кот. надо.
Вроде так.

Неа не работает. Я тож сначала так пытался сделать. Но никого толку из ентого не вышло.

Ага Equil - ты прав. У мня день, а надо чтоб музыка ночная играла! Или хотя б музыка битвы! ОТВЕТЬ. biggrin.gif

Lexey aka Hawk
QUOTE (Bregolas @ Feb 25 2005, 09:56)
А теперь небольшой вопрос wink.gif прошу сильно не пинать, если где уже обсуждалось. Разумеется, без запоминания состояния игрока при выходе с сервера, можно чрезвычайно просто осуществить "нелегальный" респаун. Я решил проблему таким образом: OnDeath на игроке создается такая вещичка - Death Ward, типа страж смерти smile.gif Если игрок попытается зайти снова с этой вещичкой, его живо пришибет. OnRespawn и в нескольких скриптах/ заклинаниях вроде ressurriction этот Ward уничтожается. Вопрос: существует ли более "цивилизованный" способ запрещения такого рода респауна (вариаблы, как понимаю, сбрасываются при выходе клиента).

Вопрос как я понимаю задан про шарды и прочие мультиплеерные дела. Более "цивилизованным" методом является прописывание глобальной переменной. Эта переменная может сохраняться на любой неразрушимый объект в модуле, начиная от самого модуля, заканчивая системным пласеблом. В этом случае, данные о смерти игрока сохранятся до очередного рестарта модуля. Если ты хочешь перенести состояние смерти между рестартами, то тебе придется работать со внешней базой - либо Bioware, либо через NWNX2. Имя переменной должно однозначно указывать на конкретного персонажа - обычно имя такой переменной делают = <имя персонажа>+<уровень персонажа>+<CD-Key клиента>. Этот способ сработает только в том случае, если каждый клиент имеет уникальный CD-Key, т.е. твой сервер имеет систему защиты аккаунтов по CD-Key.
Есть еще более "цивилизованный" метод. Это связано с системой регистрации персонажей в игре. Суть в том, что каждому персонажу на аккаунте присваивается уникальный ID, что позволяет его однозначно идентифицировать. Но такая система уже внешняя надстройка и пишется не скриптами НВН.
Equil
2 Archangel :
Если я правильно тебя понял :
MusicBackgroundChangeNight(), MusicBackgroundChangeDay(), MusicBattleChange() соответственно меняют музыку играющую ночью, днем, в битве.
Bregolas
QUOTE (Lexey aka Hawk @ Feb 25 2005, 18:22)
Если ты хочешь перенести состояние смерти между рестартами, то тебе придется работать со внешней базой - либо Bioware, либо через NWNX2. Имя переменной должно однозначно указывать на конкретного персонажа - обычно имя такой переменной делают = <имя персонажа>+<уровень персонажа>+<CD-Key клиента>. Этот способ сработает только в том случае, если каждый клиент имеет уникальный CD-Key, т.е. твой сервер имеет систему защиты аккаунтов по CD-Key.


NwNX2 мне очень даже знаком, однако покамест я с недоверием отношусь к глобальным переменным dntknw.gif Но на будущее буду знать, спасибо большое! yes.gif А пока попользуемся "варварским" методом wink.gif Просто мне интересно было как это устроено на самом wrg.
Nokoll
Вот Архангел Скрипт на изменение музыки victory.gif
путём перемены дня или ночи!

Neverwinter Script Source
MusicBackgroundChangeNight(GetArea(OBJECT_SELF), 50);
MusicBackgroundChangeDay(GetArea(OBJECT_SELF), 50);
DBColl
QUOTE (Bregolas @ Feb 25 2005, 19:50)
Просто мне интересно было как это устроено на самом wrg.

А ВРГ тут причем?.. this.gif dntknw.gif У нас шарда вроде нет... biggrin.gif
Archangel
БЛИН. Сраная ф-ия. Слов нет. Вроде ф-ия входящая в список "проще некуда", а ведь довела человека.
Гадина. Значит так, нихрена она не фурычит. Я уж и так и этак. Ну блин она не в какую! russian_roulette.gif russian_roulette.gif
Вот, что у мня вообщем получилось(хоть и не работает, а покажу):
Neverwinter Script Source
DelayCommand(19.9, MusicBattleChange(GetArea(OBJECT_SELF), 50));

Если здесь еще остались здравомыслящие люди(а у мня блин на 2й день нервы сдали), то немогли бы они мне помочь
с ентим говном....
Прошу прощения за большое кол-во ненармотивной лексики(но подругому никак не объяснить мое состояние(блин!)). mad.gif

Фу, вроде успокоился.А тем временем(пока я налаживал свои нервы и пил ведрами валерьянку) у мня родился еще вопросик:
Моно ли сделать так, чтобы в определенный момент кут_сцены НеПиСь как бы парализовал или заморозил Игрока. А потом он же обратно его разморозил. wink.gif
Bregolas
QUOTE (DBColl @ Feb 26 2005, 02:39)
А ВРГ тут причем?.. this.gif  dntknw.gif У нас шарда вроде нет... biggrin.gif

Ну ладно, ладно, прошу прощения за мое невежество biggrin.gif Я имел в виду шарды, владельцы которых присутствуют на wrg good.gif Чтобы не флудить еще один вопросик: никто никогда не имел дело со swearfilter.2da? dntknw.gif если да, то как его заставить работать :S
Vhall
QUOTE (Bregolas @ Feb 26 2005, 16:35)
никто никогда не имел дело со swearfilter.2da? dntknw.gif если да, то как его заставить работать :S


БАХАХАХА! rofl.gif

Подкалываешь, да? biggrin.gif
Ну а если серьезно:

word - та похабщина которую нужно заменить
replace - чем заменить. "****" - не пропускать
standalone - хз. Возможно связано с типом игры - сингл\мульт
exceptions - в связи с тем, что заменяются все слова которые содержат буквы похабщины, ведена данная строка - какие слова содержащие word не будут заменены

ЗЫ особенно понравилась замена "gayspy" - GameSpy lol.gif lol.gif lol.gif
Nokoll
QUOTE
Моно ли сделать так, чтобы в определенный момент кут_сцены НеПиСь как бы парализовал или заморозил Игрока. А потом он же обратно его разморозил.

Конечно можно, Архангел я сделал так это будет эффектнее Непись накалдует на РС и ПК ПАРАЛИЗОВАН!
Затем Парализацыя Снимается
Вот Скрипт
Neverwinter Script Source
void main()
{
object oNpc = GetObjectByTag("TEG_NPC");//Teg Npc
object oPC = GetEnteringObject();//PC
effect eStoiat = EffectParalyze();//Efect Paralizacii
DelayCommand(1.0, AssignCommand(oNpc, ActionCastSpellAtObject
(SPELL_MASS_CHARM,oPC, METAMAGIC_ANY, 1)));//NPC KASTUET ZACLINANIE NA PC
DelayCommand(7.5, ApplyEffectToObject(DURATION_TYPE_INSTANT,eStoiat,oPC));
DelayCommand(14.5,RemoveEffect(oPC,eStoiat));


Мой Скрипт Подойдёт для любой твоей Катсценки, просто Дробавь Камеры и подстрой под твой ход мысли!

Добавлено в [mergetime]1109460619[/mergetime]
Neverwinter Script Source
DelayCommand(19.9, MusicBattleChange(GetArea(OBJECT_SELF), 50));

Наскоко я Помню Так Делать Нельзя, Нужно указать Тег Музона или Сменить День На Ночь!
Equil
2 Archangel :
CODE
DelayCommand(19.9, MusicBattleChange(GetArea(OBJECT_SELF), 50));


Если хочешь чтобы работало - убери DelayCommand() она тут нафиг не нужна.
Nokoll
QUOTE
Если хочешь чтобы работало - убери DelayCommand() она тут нафиг не нужна.

Архангел Хотел Запустить Музон Через некое время вот и поставил ДелайКоманд!
MasterMage
QUOTE (Nokoll @ Feb 27 2005, 16:56)
Архангел Хотел Запустить Музон Через некое время вот и поставил ДелайКоманд!
все правильно... я ставил, все пучком!!!! не слушай
Bregolas
QUOTE (Vhall’rafein @ Feb 26 2005, 17:45)
ЗЫ особенно понравилась замена "gayspy" - GameSpy  lol.gif  lol.gif  lol.gif

Мне тоже smile.gif И опять меня неправильно поняли biggrin.gif Как использовать 2da поймет и ребенок yes.gif Вопрос был в том как его активировать unsure.gif Просто прописать-то я все это прописал... Однако не работало ничего - шиш мене) Сам пробовал запускать? Может дело в кириллице? this.gif Нарооод работает оно у кого? biggrin.gif
Alina
Только начала разбираться с тулсетом. Создала две локации. Пытаюсь сохранить это как модуль, жалуется на отсутствие валидной starting point.

Как, где эту точку старта указывают? Понимаю, что вопрос, скорее всего, дурацкий, но чего-то уже никак не найти. sad.gif

Если уже был такой вопрос - звиняйте, пошлите туда, где он был. Поиск юзала многократно, туториал с сайта выкачать пока не могу - 5 метров не осилю.
Nokoll
Alina Странно??
У меня такого не бывало..
1.Поставь свой модуль в папку MODULES..
2.Открой Свои локацыи и сохрани должным образом..
3.И скажи Лагает при Загрузки Модуля или при Сохранении?
Voshod
Ты скорее всего удаляла первую локоцию?
Вот эта кнопка позволяет поставить старт поинт в нужном месте

user posted image
Nokoll
Точно Voshod я незнаю Англиского! sclerosis.gif
Alina Поставь Стартпоинт в любой локе.
Aiwan
Alina ОЙ! Привет! Рад видеть!
Старт поинт - точка старта игрока в модуле. Без ее наличия не сохранишь модуль. Поставь его там где нужен старт и поверни в ту сторону стрелку куда лицом будет стартовать игрок. SHIFT + правая кнопка мыши.
Alina
Спасибо, поняла. Вчера уже не видела кнопок. lol.gif
Назначение точки старта я поняла, а вот поставить не сумела - кнопку не заметила. Странно, причем первую локацию не удаляла...
Archangel
QUOTE
Странно, причем первую локацию не удаляла...

Потому что точка старта ставится в первой локе, которую создашь. А, если ты удалила локу, то и точку старта тоже....
QUOTE
Назначение ее я поняла, а вот поставить не сумела.

Сначала жмешь на иконку кнопки, а потом в любое место в окне для редактирования. Куда показывает красная стрелка - туда Игрок встанет лицом.
Lexey aka Hawk
Не обязательно удалять. При Resize локации точку старта тоже элементарно обрезать можно.
Leon PRO
QUOTE
Ну ладно, ладно, прошу прощения за мое невежество  Я имел в виду шарды, владельцы которых присутствуют на wrg  Чтобы не флудить еще один вопросик: никто никогда не имел дело со swearfilter.2da?  если да, то как его заставить работать :S

Насколько мне известно, этот файл фи льтрует только чат в "chatroom" НВН.

Рад приветствовать нового новичка Alina ВОт только что-то мне подсказывает *косится на Айвана* что уже не новый ?
Shadenuat
Просидел суток пять не вставая за тулсетом, намертво "утопил" три или четыре модуля в ошибках, пока более менее не разобрался... Никогда еще не доводил себя до такого состояния отупения!

...Мне снился пингвин, с которым, коли поговоришь с INT > 12, то партия гейнит XP 200...

1. Хочу чтобы в области полусферы, которую можно поставить в опциях озвучки местности, звучали не звуки окружения, а музыка. Например - стоит парочка бардов. Подходишь ближе - музыка основной темы локации меняется.
Можно?

1.1. Как вставить свою музыку и звуки? Куда и в каком формате пихать?

2. Как проставлять метки на карте?

3. Хочу модельку девочки-ребенка не в сине-желтом платье, а, скажем, в темно-фиолетовом. Но "раздеть" ее и напялить на нее другую одежду не получается. К-к-к-к-а-а-а-к-к?
[MoF]Darth_Nick
вроде:
2. открываеш палитру вэйпойнтов там в стандартной есть такой тип, стивиш на карту его и смотриш в игре
3. это модель вроде "нераздеваемая"..

попровьте если не прав
Aiwan
1. Только хаком. Добавь в хак музыку и отредактируй 2Да файлы. Какие не знаю точно мне не надо было ни разу.
1.1 Читай мануалы. Их тут много. Писать одно и то же мне лично некогда и много писать, а много ты не поймешь, прийдется на пальцах объяснять...
2. В свойствах метки на карте есть <Place text here> - это и будет текст на карте.
3. Сделать десяток-другой моделей в 3Дмаксе для девочки, прописать это все в 2Да файлах, сакинуть в хак и все готово!
Читай мануалы. НА РУССКОМ.
mamuc
QUOTE
...Мне снился пингвин, с которым, коли поговоришь с INT > 12, то партия гейнит XP 200...

...ммм..попрошу пингвинов не обижать..пингвины есть умный и гродый птЫц biggrin.gif yes.gif
balrog
QUOTE
3. Хочу модельку девочки-ребенка не в сине-желтом платье, а, скажем, в темно-фиолетовом. Но "раздеть" ее и напялить на нее другую одежду не получается. К-к-к-к-а-а-а-к-к?

Скачай с ваулта детские головы и их Хафлингам натяни.
Лито
Как реализовать систему каста с крестом? Что это такое? Сейчас объясню. Есть клирик(желательно чтобы был именно клирик) он хочет скастовать какой либо закл, на что ему отвечают что у вас мол нет креста(символа бога и т.д.) в руке, но как только крест в руках появляется, заклинания начинают успешно действовать. Подскажите, пожалуйсто, тем более я думаю это пригодится для других не опытных модуль-мейкеров unsure.gif
2GoDoom
Я точно не знаю как там с кастами, но думаю, что надо буит менять скрипт для каждого спелла...

При касте спелла - идёт проверка тэга вещи в слоте, куда должен класться крест... (возможно надо буит сделать еще проверку на наличае хоть какой-то вещи в слоте - шоп без глюков).. Дальше думаю всё понятно pardon.gif

Лито
Как сделать проверку тега вещи на слот второй руки? pardon.gif
Ответьте в скрипты плз, сразу если здесь нельзя blush.gif
Lexey aka Hawk
Ох, не лазили бы вы в спеллы без соответствующей подготовки. Не надо править каждый спелл. Начиная с HoTU (вроде) в каждый спелл уже вставлен SpellHook. Извращайтесь в нем, дорогие товарищи smile.gif
Лито
Дело в том что я не умею им пользоватся blush.gif , никакого хелпа, кроме Лексикона(в котором я тоже не разбираюсь) я не нашел...
Может кто нибудь даст наводку на объяснение на русском языке или объяснит сам? unsure.gif
Aiwan
Лито не парься. Прийдет время сам расковыряешь. Мануалов нет по таким предметам, я так думаю..
Лито
Эх...придется каждый спелл править... black eye.gif
DBColl
Лито
Neverwinter Script Source
object oLeftObj = GetItemInSlot(INVENTORY_SLOT_LEFTHAND);
if (GetTag(oLeftObj) == "тэг твоего предмета")
{
    ... предмет в левой руке
}
Lexey aka Hawk
Вообще идея править каждый спелл есть правильная идея по сути, но причины это гораздо более сложные, чем может представить себе наш пока еще неопытный товарищ по искусству. Вообще же для его целей не надо править КАЖДЫЙ спелл, а править надо 1 единственный скрипт x2_inc_spellhook, а в нем конкретно функцию int X2PreSpellCastCode().
Лито
Я так понимаю, сейчас я проделываю бесполезную работу, редактируя каждый спелл. Очень прошу привести хотя бы один пример с x2_inc_spellhook и исправленой int X2PreSpellCastCode(), а то я даже не знаю с чего начать this.gif
dumbo
Lexicon > Lyceum > Tutorial > Advanced Scripting > Lilac Soul - Spell-Hooking
все вроде внятно разжевано: либо в свойствах мода, либо скриптом вешаешь на модуль переменную типа string с именем X2_S_UD_SPELLSCRIPT и значением - имя скрипта, который будет собственно висеть хуком на всех спеллах.
Neverwinter Script Source
SetLocalString(GetModule(), "X2_S_UD_SPELLSCRIPT", "myspell");

чтобы отключить свой хук, надо удалить переменную -
Neverwinter Script Source
DeleteLocalString(GetModule(), "X2_S_UD_SPELLSCRIPT");


примеры есть в указанном разделе лексикона. но уж пожуем тут...

в своем скрипте-хуке ты можешь юзать функции:
GetSpellId(); // возвращает константу SPELL_* перехваченного спелла
GetSpellTargetObject(); // объект, по которому палим, если идет каст на объект
GetSpellTargetLocation(); // локация, по кот-ой палим, если палим по локе
GetLastSpellCastClass(); // класс PC используемый при кастовании
GetSpellCastItem(); // если каст с предмета, возращает предмет
GetSpellSaveDC(); // какой нужен DC, чтоб спастись от спелла
GetCasterLevel(OBJECT_SELF); // левел класса PC, используемого при касте

маленький пример - тормозим каст в дневное время:
myspell.nss:
Neverwinter Script Source
// сий include обязателен для вызова функции остановки спелла!
#include "x2_inc_switches"

void main()
{
    //день на дворе? - магам спать!
    if (GetIsDay())
    {
          SetModuleOverrideSpellScriptFinished();
          SendMessageToPC(OBJECT_SELF,
            "Извините, днем кастовать запрещено. /Администрация");
    }
}


вот как-то так...
Archangel
QUOTE
Как вставить свою музыку и звуки? Куда и в каком формате пихать?

Конечно Aiwan правильно сказал, но есть способ полегче(енто как-то Nokoll объяснял wink.gif ):
QUOTE
Для музыки ваще Хак нужен, но я делаю лучше На WRG есть конвентатор который переведёт любую твою музыку фарматом MP3 в Формат BMU этот формат поддерживает НВН когда переведёш в нужный формат вставь твою музыку вместо "битвы в городе 1" или любой другой которая тебе надаела, включи Тулсет и музон будет!
Программа называется MP3toBMU, поищи в WRG!

Прошу прощения у Nokoll`a, если ему не понравилось, шо я его процитировал. this.gif
Lexey aka Hawk
QUOTE (Лито @ Mar 2 2005, 19:02)
Я так понимаю, сейчас я проделываю бесполезную работу, редактируя каждый спелл. Очень прошу привести хотя бы один пример с x2_inc_spellhook и исправленой int X2PreSpellCastCode(), а то я даже не знаю с чего начать this.gif

Собственно dumbo дал ответ на твой вопрос. Если уж дальше продолжать, то в твоем скрипте, который будет висеть хуком, ты определяешь, что за спелл кастится и какой компонент для него нужен. Вот и все. Этот принцип и заложен сейчас в основу Гемовской компонентной магии.
][umepa
прива народ!!!
я нуб и мне срочно нужна помощь crazy.gif 1хотелось бы узнать как сделать чтобы control undead можно было на много нежити кастовать и они все были бы моими
2как поднимать мертвых но 1 зомби о например 4 вампиров.если это скрипты выложите код плз
заранее спасибо
__________
мама анархия
папа стакан портвейна
Punk
ответьте пожалуйстана такой вопрос

Как делать респ монстров?
Как делать продаваемые дома с владельцем?
как делать сундуки чтобы ложить вещи как в банке на аккаунт?
Tiger Greyhawk
][umepa и Leon-punk.
QUOTE (Xumepa @ Mar 2 2005, 22:49)
выложите код плз

Есть тема: "База сриптов". Там не будет скрипта под "вас", но похожие, я думаю, найдете. И переделаете.

Вы хотите сразу и все. Оно, конечно, хорошо, но никто не сделает эти вещи под "вас". Придется самому разбираться, имхо. То, что вы спрашиваете, не пять минут объяснений. Читайте форум и статьи. + Lexicon. Что будет не получаться - спрашивайте. Конкретные вопросы. Не "как делать продаваемые дома?", а "как сделать проверку в скрипте, чтобы в дом не смог войти человек без ключа?", "как забрать у человека деньги за дом скриптом?" и т.п. Тогда мы сможем, и захотим вам помочь (имхо).

P.S. ][umepa, извини, я в цитате тебя переименовал. Иначе тег закрывался раньше, чем надо
dumbo
][umepa
опиши подробней свои проблемы, хотя, сдается мне, ты не туда попал...

Leon-punk
QUOTE (Leon-punk @ Mar 2 2005, 23:34)
Как делать респ монстров?
тут искать что читать - хотя бы "Туториал на русском". в тулсете для выбранной локации проследовать в меню Wizards/Encounter Wizard
QUOTE (Leon-punk @ Mar 2 2005, 23:34)
Как делать продаваемые дома с владельцем? как делать сундуки чтобы ложить вещи как в банке на аккаунт?
скажу сразу - это системы скриптов, причем не из самых простых. качать тут, тут и тут . копаться и разбираться. либо просто поставить одну из этих систем.
Добавлено в [mergetime]1109808479[/mergetime]
offtopic.gif

Tiger Greyhawk, синхронно и сходно... friends.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2025 Invision Power Services, Inc.