![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#3161
|
|
Level 4 ![]() ![]() Класс: Некромант Характер: Chaotic Evil Раса: Нежить ![]() |
Lex, так он визуальном эффекте. Ауре бессмертия типа. (IMG:style_emoticons/kolobok_light/biggrin.gif)
Epsilon, эффекты, "привязываются" вот такой функцией: ApplyEffectToObject, либо ApplyEffectAtLocation. EffectVisualEffect - визуальные эффекты. Примеры аур, смотри либо в лексиконе, либо в модуле gennady'я, в котором демонстрируются эффекты... PS: начинатся константы, будут с VFX_DUR_AURA_*. |
![]()
Сообщение
#3162
|
|
Level 2 ![]() Класс: Некромант Характер: True Neutral Раса: Нежить ![]() |
Кол-во получаемого опыта расчитывается из разницы в оценках игрока и монстра которого он замочил а за каждого дополнительного члена в команде -1 к разнице вот меня и интересует как снять это пинальти с вызваных существ и фамильяров?
А за ссылочки спасибо!! (IMG:style_emoticons/kolobok_light/thank_you.gif) А где взять прогу которая музыку перецифрить из мр-3 в NWN Формат? за ранее благодарен!! |
![]()
Сообщение
#3163
|
|
Level 4 ![]() ![]() Класс: Ученик Дракона Характер: Lawful Good Раса: Человек ![]() |
Хочу написать скрипт дуэлей.
Работа: двое игроков решают сразиться на публике, для этого один из ных должен через хозяина выбранной арены послать вызов другому, другой может либо принять, либо отклонить его. Далее хозяин проверяет занятость арены (сражения бывают ежедневно в шесть вечера), и ставит их на ближайшее свободное место. Место выбрано, игрокам рассылаются свитки, в описании которых написана дата и участники боя (рассылка идёт если игрок на неё подписался, кстати можно чтобы описание одного предмета менялось). Как только приходит время боя игроки телепортируются на арену, проигравший не умерает, а лишившись всех доспехов и всего оружия (больше он ничего не должен потерять), телепортируется в госпиталь. Мна НЕ НУЖЕН готовый скрипт, мне нужнысоветы по его написанию (хочу научиться) Если вы не желаете грузить в форуме, пишите на аську или в ящик Не могу вписать в свою регистрацию аську, ошибки выдаёт. Мой номер ICQ: 450-084-661 |
![]()
Сообщение
#3164
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Epsilon, начни с малого. Первое действие: выбор арены и оповещение. Затем второе, третье... Разбей поэтапно то чего тебе требуется. Вообще это сложные скрипты и тут с нуля тебе даже если подскажут то до адресата это может не дойти ввиду неопытности. И это будет в шарде или в сингле?
|
![]()
Сообщение
#3165
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Цитата(Epsilon @ May 21 2007, 09:32) [snapback]108450[/snapback] Если вы не желаете грузить в форуме, пишите на аську или в ящик лучше такое как раз на форуме грузить Цитата(Epsilon @ May 21 2007, 09:32) [snapback]108450[/snapback] через хозяина выбранной арены послать вызов другому, другой может либо принять, либо отклонить его. диалог с кастом-токенами, динамический. Баал такие любил делать в крафте (IMG:style_emoticons/kolobok_light/biggrin.gif) Те у Хозяина арены должен формироваться список игроков на шарде в данный момент (если нет собственных идентификаторов у игроков, это все усложнит. Посмотри систему такую где-то на форуме.). Потом список по 8-10 элементов выводится в диалоге в виде вариантов фраз игрока. Появится понятие страницы (грубо говоря на 5-ой скажем позиции выбора будет игрок с порядковым номером = (номер страницы - 1)*8(10) + 5. И тд.) После выбора игрока запуск скрипта приема им вызова. Тут надо проверять, в бою он или нет и прочее, мб как вариант дать ему камешек какой, активировав который и будет диалог, где можно будет подтвердить вызов или отклонить. Камешек со сроком годности, чтобы не набиралось много (скажем удалится через 5 минут). и тд. разбей на такие примерно этапы и сам подумай КАК оно должно выглядеть, чтобы вписаться в игру, не было дырок, игрокам было удобно и тд. и по каждому непонятному пункту спрашивай. |
![]()
Сообщение
#3166
|
|
Level 4 ![]() ![]() Класс: Ученик Дракона Характер: Lawful Good Раса: Человек ![]() |
Хм...списки...а как их сделать-то, в смысле как их в диалог впихнуть, какими переменными
Кстати, как по вашему можно оформить арену для магических баталий...о...ведь можно поставить запрет на сражения между магами и воинами, как по вашему, товарищи форумчане |
![]()
Сообщение
#3167
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
можно почти все.
с идентификаторами я малек склинил, в данном случае можно без них, простым GetFirstPC и GetNextPC. пробегаешься по всем игрокам (стандартный цикл, такой же как на перебор шмоток например) и каждого PC (кроме PCSpeaker'а текущего) записываешь в переменную. Ну например PC_X, где Х - порядковый номер. Это был первый этап. Второй этап - в диалоге пишешь например: НПС: "с кем ты хочешь сразиться?" ИГРОК: "<CUSTOM50001>" ИГРОК: "<CUSTOM50002>" ИГРОК: "<CUSTOM50003>" ИГРОК: "<CUSTOM50004>" ИГРОК: "<CUSTOM50005>" ИГРОК: "<CUSTOM50006>" ИГРОК: "Дальше" ИГРОК: "Назад" в скрипте TextAppearsWhen на каждую строчку пишем скрипт, который по порядковому номеру (1...6, но надо еще многостраничность учесть, если скажем игроков на серваке 20, в 1 списке давать их всех - неудобно выбирать будет. Как со страницами делать я выше писал) берет игрока и его имя заносит в токен. На фразу "Дальше" просто увеличиваем локалку страницы на 1 (если там еще есть игроки, нужно проверять), на фразу "Назад" соотв. уменьшаем, если страница не 1. ну и в принципе все почти. Тока после выбора игрока надо все равно проверять, валиден он или нет - мог выйти с сервера, пока игрок думал. Дальше сам думаю осилишь. |
![]()
Сообщение
#3168
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Все это есть в любом модуле. Загрузи МОнету Судьбы и посомтри как сделано например общение в Храме. Списки оружия проклятого и прочее. Через токены.
|
![]()
Сообщение
#3169
|
|
Level 2 ![]() Класс: Монах Характер: Lawful Neutral Раса: Дварф ![]() |
Помогите пож-ста, сам-но не нашел ответа:
Q1: какой командой из консоли можно изменять максимальные (постоянные) очки жизни (HP) героя? мне ответили так: A1: "ИМХО, такое невозможно. HP зависит от уровня героя и его класса, напрямую установить его значение - это противоречить правилам D&D." Q2: "Временые хиты получить можно без проблем, почему же тогда нельзя постоянно? Вы ошибаетесь - это возможно, но не тривиально." P.S. Игра с ГСЧ отбирает кучу времени, а по ходу игры иногда нужно сбросить уровни для другого развития. Спасибо. P.P.S. Временное решение нашел в виде правки поля HitDie в classes.2da и записью его в overrive. |
![]()
Сообщение
#3170
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Введи чит dm_god 1.
|
![]()
Сообщение
#3171
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Цитата(Skaarj @ May 23 2007, 08:16) [snapback]108514[/snapback] Q2: "Временые хиты получить можно без проблем, почему же тогда нельзя постоянно? Вы ошибаетесь - это возможно, но не тривиально." очень странная логика. (IMG:style_emoticons/kolobok_light/biggrin.gif) Например бонусные очки на статы давать можно скриптами без проблем (эффект повесить), а базовые значения статов при этом скриптами не меняются. И еще много таких примеров. из жизни: волосы покрасить на время можно без проблем. Краска и ты хоть буро-малиновый. Однако вот беда, естественный цвет буро-малиновым не станет. (IMG:style_emoticons/kolobok_light/biggrin.gif) |
![]()
Сообщение
#3172
|
|
Level 2 ![]() Класс: Монах Характер: Lawful Neutral Раса: Дварф ![]() |
QUOTE Введи чит dm_god 1. Судя по быстрому ответу такой команды у ДМ не существует? Существует ли решение в виде аналога HPWAR.2DA для игр: This "patch" will allow your characters to gain Max HP when they level up. It will work with either Planescape: Torment (PS:T) or Baldur's Gate 1 (BG1). Simply extract the archive into your "Override" folder. 2DA V1.0 0 SIDES ROLLS MODIFIER 1 1 10 0 2 1 10 0 3 1 10 0 4 1 10 0 5 1 10 0 6 1 10 0 7 1 10 0 8 1 10 0 9 1 10 0 10 1 10 3 11 10 0 3 12 10 0 3 13 10 0 3 14 10 0 3 15 10 0 3 16 10 0 3 17 10 0 3 18 10 0 3 19 10 0 3 20 10 0 3 QUOTE(Lex @ May 23 2007, 09:58) [snapback]108519[/snapback] из жизни: волосы покрасить на время можно без проблем. Краска и ты хоть буро-малиновый. Однако вот беда, естественный цвет буро-малиновым не станет. Разговор идет по игре, а там возможно практически все. Пример скрипта из учебника ДМ: effect Ebark = EffectVisualEffect(VFX_DUR_PROT_BARSKIN) ApplyEffectToObject(DURATION_TYPE_PERMANENT,eBark,OBJECT_SELF,0.0) Я прошу прощения у Aiwan и Lex, за свои luser-ые агрументы и полную неграмотность в вопросе скриптования, но если нет такой возможности изначально в консоли, то зачем давать ненужны мне советы (про dm_god) и уходить от ответа на вопрос? Мне нужне лишь простой и ясный ответ вида: - да, это возможно, но так-то и так-то; - нет, такой возможности не существует; - алтер. вариант (я уже высказал): в виде правки поля HitDie в classes.2da и записью его в override. К примеру, вот таким методом можно изменить на постоянно максимальные HP? Как это правильно нужно оформить и запустить скрипт из консоли? Спасибо. Neverwinter Script Source void RestoreHP(object oPC) { if (oPC != OBJECT_INVALID) { int nPolyHP = GetLocalInt(oPC, "PolyHP"); int nCurrentHP = GetCurrentHitPoints(oPC); if (nPolyHP > 0) { if (nCurrentHP > nPolyHP) { ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(nCurrentHP - nPolyHP), oPC); } } } } Дополнительно из форума BioWare (Builders - NWN2 Scripting): EffectBonu***Points and EffectTemporaryHitPoints can both be used: EffectTemporary has the benefit of adding the hitpoints as part of the effect, the downside is that you have to go through all those Hit Points before damage shows up. Also, be careful when linking other effects to this one as, when the temporary points are used up, all linked effects will fade EffectBonu***Points has the benefit of adding permanent bonus Hitpoints but does not "heal" up those points as part of the effect. Calling ForceRest() should take care of that (Probably not a great idea to spawn these within range of the PC) Using either method you could get the current or max HP, figure out how many you need and apply either as an effect.(supernatural so it can't be dispelled). Т.е. в скрипте достаточно прописать единственную команду: ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectBonu***Points(ХХ), oPC); где, ХХ - бонус хитов, и потом его выполнить? Вот такой скрипт получается у меня: Neverwinter Script Source void main() { // declare variables object oPC = GetFirstPC(); effect eBonus = EffectBonu***Points(10); effect eHeal = EffectHeal(25); { //heal the target or the script gets called again ApplyEffectToObject(DURATION_TYPE_INSTANT, eBonus, oPC); ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, oPC); } } } *) Только не ясно одно - эти три звездочки нужно заменить на слово Hit в данном случае? |
![]()
Сообщение
#3173
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Цитата(Skaarj @ May 23 2007, 15:47) [snapback]108522[/snapback] Судя по быстрому ответу такой команды у ДМ не существует? скорее всего нет, на сервере много что отключено. dm_god действует после команды DebugMode 1 в сингле. А про то, что у тя сервер ты сказал только что, так что претензии малек не по адресу. Цитата(Skaarj @ May 23 2007, 15:47) [snapback]108522[/snapback] This "patch" will allow your characters to gain Max HP when they level up. It will work with either Planescape: Torment (PS:T) or Baldur's Gate 1 (BG1). Simply extract the archive into your "Override" folder. ни. РТ и BG - на другом движке и с другими возможностями. Форматы файлов да, у них частично общие, но не более того. Цитата(Skaarj @ May 23 2007, 15:47) [snapback]108522[/snapback] Разговор идет по игре, а там возможно практически все. Пример скрипта из учебника ДМ: effect Ebark = EffectVisualEffect(VFX_DUR_PROT_BARSKIN) ApplyEffectToObject(DURATION_TYPE_PERMANENT,eBark, OBJECT_SELF,0.0) и что? я знаю, можно эффект визуальный повесить? Это должно было что-то доказать? (эффект снимется рестом, кстати) Цитата(Skaarj @ May 23 2007, 15:47) [snapback]108522[/snapback] о если нет такой возможности изначально в консоли тебе же уже давно ответили, что нет. А раз нет - предлагаем другие варианты достижения подобного (с некоторой погрешностью) эффекта. Цитата(Skaarj @ May 23 2007, 15:47) [snapback]108522[/snapback] ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectBonu***Points(ХХ), oPC); беда в том, что это до первого реста/диспелла. И это никоим образом не базовые (постоянные) хиты. Это именно бонусные. Цитата(Skaarj @ May 23 2007, 15:47) [snapback]108522[/snapback] (supernatural so it can't be dispelled). вот это да, спасет от диспелла. Но не от реста. (от реста extraordinary. А вот можно ли их совместить, или нет - я хз) Но все это не отменит бонусности хитов, проблемы лечения и тд. зы: ты бы лучше вместо того, чтобы обижаться и катить бочку, сказал что сделать то тебе нужно (те какой внешний эффект должен быть в итоге, мб ты не в том направлении просто идешь) Цитата(Skaarj @ May 23 2007, 15:47) [snapback]108522[/snapback] и уходить от ответа на вопрос? просто очень порадовал ваш ответ: "Вы ошибаетесь - это возможно, но не тривиально." Эдакое "я умный, а вы все идиоты". Ну и аргументация в стиле "Временые хиты получить можно без проблем, почему же тогда нельзя постоянно?" просто убила наповал. Посмеялся и на эту тему поофтопил. (IMG:style_emoticons/kolobok_light/biggrin.gif) |
![]()
Сообщение
#3174
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Цитата(Skaarj @ May 23 2007, 17:47) [snapback]108522[/snapback] Я прошу прощения у Aiwan и Lex, за свои luser-ые агрументы и полную неграмотность в вопросе скриптования, но если нет такой возможности изначально в консоли, то зачем давать ненужны мне советы (про dm_god) и уходить от ответа на вопрос? Я кончено дико извиняюсь, но каков вопрос, таков и ответ. Телепаты у нас все в разъедах, а если вас не устраивают наши ответы то можете идти смело по железнодорожному полотну дальше и писать жалобы в газету Гудок. |
![]()
Сообщение
#3175
|
|
Level 4 ![]() ![]() Класс: Ученик Дракона Характер: Lawful Good Раса: Человек ![]() |
Поздравьте меня, я разобрался со списками в диалогах, со способом скриптинга для шардов и я наконец дописал скрипт дуэли, остаётся избавиться от мелких недочётов и предупредить баги.
Кстати, у вас тут бывабт конкурсы локаций на НВН 1? |
![]()
Сообщение
#3176
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Конкурсы были раньше. Сейчас... Можено в принципе. (IMG:style_emoticons/kolobok_light/smile.gif) Было бы ВАШЕ желание.
|
![]()
Сообщение
#3177
|
|
Level 2 ![]() Класс: Фея Характер: Chaotic Good Раса: Фея ![]() |
Epsilon, мои поздравления (IMG:style_emoticons/kolobok_light/smile.gif) Наверное я опоздал с советом, но, в TextAppearThen можно обойтись одним скриптом, который при каждом выполнении увеличивал бы локальную переменную на 1, и по ней определял какой именно пункт меню он сейчас обрабатывает. И ту кучу скриптов в ActionTaken удобнее перенаправить в один скрипт(ExecuteScript(...)), что бы в будущем изменять только его.
И то и то не принципиально, все от моей ненависти к лишним скриптам в модуле и повторению одинакового/похожего кода (IMG:style_emoticons/kolobok_light/smile.gif) Lex, супернатурал спасает и от того и от другого, а екстраординари как раз снимается рестом, но не в начале реста, как магик, а в конце. |
![]()
Сообщение
#3178
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
|
![]()
Сообщение
#3179
|
|
Level 2 ![]() Класс: Монах Характер: Lawful Neutral Раса: Дварф ![]() |
QUOTE(Lex @ May 24 2007, 09:31) [snapback]108541[/snapback] зы: ты бы лучше вместо того, чтобы обижаться и катить бочку, сказал что сделать то тебе нужно В самом первом сообщении: QUOTE(Skaarj @ May 23 2007, 07:16) [snapback]108514[/snapback] P.S. Игра с ГСЧ отбирает кучу времени, а по ходу игры иногда нужно сбросить уровни для другого развития. Спасибо. Lex, Aiwan, спасибо за науку, вопрос закрыт. P.S. Меня сейчас вполне устраивает альтер. вариант: в виде правки поля HitDie в classes.2da и записью его в override. P.P.S. Задача такая: по ходу игры иногда нужно сбросить уровни для другого развития, а потом получить максимальные HitDie при наборе уровней. Из этого следовал логичный вопрос - как изменять их (HP) из консоли после этого. |
![]()
Сообщение
#3180
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
ну связи между "снять уровни" и "дать ХП" я не нашел, поэтому подумал что про уровни - лирическое отступление (оффтоп те). (IMG:style_emoticons/kolobok_light/smile.gif)
Цитата(diggers @ May 24 2007, 20:54) [snapback]108552[/snapback] Lex, супернатурал спасает и от того и от другого, а екстраординари как раз снимается рестом, но не в начале реста, как магик, а в конце. мдя... надо глянуть в лексиконе. Не просто же так я всю жизнь думал так, как написал (IMG:style_emoticons/kolobok_light/smile.gif) но в любом случае Аза, респект (IMG:style_emoticons/kolobok_light/smile.gif) А чего ты не собой подписался? |
![]()
Сообщение
#3181
|
|
Level 3 ![]() Класс: Волшебник Характер: Lawful Neutral Раса: Эльф ![]() |
Я подумал что вопросы глупые для вас (о великие мастера и модостроители) и реши здесь напичать:
1)Как сделать чтобы огонь обжигал? 2)Как посадить перца на стул? Плиз полностью опишите что куда и как, а то я все перечитал но все равно ничего не понел (IMG:style_emoticons/kolobok_light/wacko.gif) Заранее благодарю вас! |
![]()
Сообщение
#3182
|
|
Mystery ![]() Класс: Маг Характер: Lawful Evil Раса: Тварь NWN: Контент Амен ![]() |
(IMG:style_emoticons/kolobok_light/offtopic.gif)
Для начала нужно отмоделлить перца... |
![]()
Сообщение
#3183
|
|
Ушедший на войну ![]() Класс: Маг Характер: Chaotic Good Раса: Человек NWN: Контент ![]() |
"а то я все перечитал но все равно ничего не понел" (IMG:style_emoticons/kolobok_light/this.gif) <--- ШАБЛОН И ВРАНЬЕ. Про то как посадить ПЕРСА на стул я уже задрался в этой и подобных темах читать, заходя сюда раз в неделю (и реже).
Так что сначала читать ВСЕ или юзать поиск. Сообщение отредактировал Leon PRO - May 29 2007, 20:09 |
![]()
Сообщение
#3184
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Цитата(Gashish @ May 29 2007, 19:51) [snapback]108674[/snapback] 1)Как сделать чтобы огонь обжигал? скриптами. Задача не самая тривиальная и тот, кто спрашивает Цитата(Gashish @ May 29 2007, 19:51) [snapback]108674[/snapback] 2)Как посадить перца на стул? сходу ее не напишет. Готовую такую штуку я выкладывал в теме "База Скриптов". собсна как сажать на стул написано в той же базе. ActionSit команда называется. |
![]()
Сообщение
#3185
|
|
Level 3 ![]() Класс: Волшебник Характер: Lawful Neutral Раса: Эльф ![]() |
Все равно не работают скрипты... все правильно ошибок нет а они не работают... Плизз помогите где скачать какую нить инфу. Все что касалось скриптов я скачал с этого сайта но надо бы еще че нить для разнообразия!
|
![]() ![]() |
Текстовая версия | Сейчас: 28th July 2025 - 13:14 |