Город Мастеров
IPB

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V   1 2 3 >

Важно! Скрипты
Buldog
Отправлено: Jun 28 2005, 09:05


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Где то тут это уже обсуждалось, поищи по форуму. Кажись, во II томе Скриптов.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #45268 · Ответов: 3670 · Просмотров: 702,627

Buldog
Отправлено: Jun 24 2005, 14:53


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Нелюблю сеттинги, т.к. просто немогу рисовать карты "по описанию" если я рисую карту по какому то описанию ничего хорошего, как правило, у меня не выходит. Мои наиболее красивые карты получались когда я рисовал полностью, что называется, от балды. Посему, я за последний вариант :)
  Форум: Главный Зал · Просмотр сообщения: #44947 · Ответов: 65 · Просмотров: 64,010

Buldog
Отправлено: Jun 24 2005, 13:51


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


А зачем ты ставишь тригер ловушки? Тебе нужен тригер типа Generic.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #44936 · Ответов: 5109 · Просмотров: 855,096

Buldog
Отправлено: Jun 23 2005, 20:21


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Пришла мне в голову такая идея, а что если сделать такой тригер перехода, который бы перекидывал игрока не в какую то определенную точку, а ровно в то место, в которое игрок входит, с той разницей, что если выходит игрок из локации с востока, то войдет в локацию назначения с запада, ну или с севера на юг, так жн и наоборот.

И вылилась идейка вот в такой скрипт:
Neverwinter Script Source
//////////////////////////////////////
//////////////////////////////////////
//////For Area Transmition Trigers////
//////////////////////////////////////
//////////OnClick Script//////////////
//////////////////////////////////////
////////////Created By Buldog/////////
////////////////23.06.05//////////////
//////////////////////////////////////
//////////////////////////////////////

void main()
{
    object oPC = GetClickingObject();
    object oTarget = GetTransitionTarget(OBJECT_SELF);
    object oTArea = GetArea(oTarget);

    location lTarget;

    vector vPC = GetPosition(oPC);
    vector vTarget = GetPosition(oTarget);
    vector vTLoc = Vector();

    vTLoc.z = vPC.z;

    if(vPC.x < 10.0 || vPC.x > vTarget.x * 2 - 10) vTLoc.x = vTarget.x * 2 - vPC.x;
    else vTLoc.x = vPC.x;

    if(vPC.y < 10.0 || vPC.y > vTarget.y * 2 - 10) vTLoc.y = vTarget.y * 2 - vPC.y;
    else vTLoc.y = vPC.y;

    float fFace = GetFacing(oPC);

    lTarget = Location(oTArea, vTLoc, fFace);

    AssignCommand(oPC, ClearAllActions());
    AssignCommand(oPC, ActionJumpToLocation(lTarget));
}


Подготовка местности:

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

Ограничения:

- Тригер перехода должен размещаться по краю локации и не вылезать по ширине (или высоте, смотря с какой стороны находится) за пределы одной клетки.
- Не размещайте тригер в угловых клетках, будет глючить.
- Ширина (высота) тригера не должна превышать ширины (высоты) локации назначения.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #44889 · Ответов: 111 · Просмотров: 457,472

Важно! Скрипты
Buldog
Отправлено: May 21 2005, 01:29


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Можно сделать просто вот такую функцию:
Neverwinter Script Source
void ReEquipItem(object oPC)
{
    object oItem;
    int nSlot;

    for(nSlot = 0; nSlot < 14; nSlot++)
    {
        oItem = GetItemInSlot(nSlot, oPC);
        if(oItem != OBJECT_INVALID)
        {
            AssignCommand(oPC, ActionUnequipItem(oItem));
            AssignCommand(oPC, ActionEquipItem(oItem, nSlot));
        }
    }
}

И использовать ее в нужном месте :) Она будет переодевать шмот и если что то будет не по лвлу, оно не оденется :)
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #40725 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 20 2005, 17:03


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Тут есть одна проблемка, нельзя создать кучку золота больше 50000 монет, и, забрав у игрока все, что есть велик риск превысить эти 50000...
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #40668 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 19 2005, 11:28


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Нет, для всех мобов существуют стандартные скрипты nw_c2_default9 для OnSpawn и nw_c2_default7 для OnDeath, в них и вноси нужные изменения.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #40515 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 19 2005, 00:49


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Если ты хочешь, что бы вещи выпадали стандартным образом тебе придется редактировать 2da таблицы, какие сказать немогу, никогда этим не занимался, либо придумать свою собственную систему. Можно генерить лут при спавне моба, тогда нужные действия прописываются в OnSpawn скрипте, а потом выбрасывать лут при смерти моба, необходимые действия в OnDeath скрипт, ну или сразу все при смерти.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #40463 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 16 2005, 15:01


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Я блоки это конечно хорошо, но вот скрипты для генерации лута куда удобней делать под OnUsed или OnOpen
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39993 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 16 2005, 12:54


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Смотря какой скрипт, но, скорей всего, в OnUsed сундука.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39977 · Ответов: 3670 · Просмотров: 702,627

Buldog
Отправлено: May 15 2005, 10:30


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Звук есть, просто прислушаться надо, я тож сперва думал, что нету, а потом, краем уха, уловил :D
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39809 · Ответов: 3359 · Просмотров: 638,214

Buldog
Отправлено: May 15 2005, 01:24


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Ну во-первых, на шарде я это не вводил, а во-вторых у нас такая система лута, что даже если бы ввел, не помешалобы :) Ксожалению поделиться ей не смогу, автор выкладывать ее тут не хочет...
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39789 · Ответов: 3359 · Просмотров: 638,214

Buldog
Отправлено: May 14 2005, 12:02


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


QUOTE (Мефистофель @ May 14 2005, 01:34)
Buldog Ничегосибе, я даже не догадывался. Можно пожалуйста поподробнее.

Ну, для примера вот скрипт, он для OnActivateItem модуля, создаешь какой то предмет со свойством "Уникальная сила" и при его использовании летаешь :)
Neverwinter Script Source
void main()
{
    object oUser = GetItemActivator();

    SendMessageToPC(oUser, "Взлетаем!");

    location lTarget = GetItemActivatedTargetLocation();

    AssignCommand(oUser, ClearAllActions(TRUE));
    DelayCommand(0.9, PlaySound("fs_flapfeather"));
    DelayCommand(1.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectDisappearAppear(lTarget), oUser, 2.0));
    DelayCommand(2.5, AssignCommand(oUser, ActionJumpToLocation(lTarget)));
    DelayCommand(2.7, PlaySound("fs_flapfeather"));
}

Добавлено в [mergetime]1116061530[/mergetime]
Только, что бы лижбы от чего не летать в скрипте x2_mod_def_act добавь строчку:
Neverwinter Script Source
if(GetTag(oItem) == "тэг_итема_для_полетов") ExecuteScript("имя_скрипта_полета", OBJECT_SELF);
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39637 · Ответов: 3359 · Просмотров: 638,214

Важно! Скрипты
Buldog
Отправлено: May 12 2005, 19:03


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Для сохранения HP и спелов вот эта часть, правда это я не сам писал, но идея мне понятна :) Модуль мы не сами делали, а разгребали какой то старый :)
Вот это в OnClientEnter:
Neverwinter Script Source
int iSavedHP = GetLocalInt(oStore, sStoreName);

    if (iSavedHP != 0)
    {
        effect efDamage = EffectDamage(GetMaxHitPoints(oPC)-iSavedHP,DAMAGE_TYPE_MAGICAL,DAMAGE_POWER_ENERGY);
        ApplyEffectToObject(DURATION_TYPE_INSTANT,efDamage,oPC);
    }

    int k, j, nSpells;
    for (k = 1; k <= 805; k++)
    {
        nSpells = GetLocalArrayInt(oStore, sStoreName+"_spells", k);
        if (nSpells)
        for (j = 0; j <= GetHasSpell(k, oPC) - nSpells; j++) DecrementRemainingSpellUses(oPC, k);
    }

А вот это в OnClientLeave:
Neverwinter Script Source
//@by _Kaa_ 20.05.30
#include "nw_o0_itemmaker"
void main()
{
object oPC = GetExitingObject();
object oStore = GetModule();
string sStoreName = GetLocalString(oPC,"HP_MyIdString");
SetLocalInt(oStore, sStoreName, GetCurrentHitPoints(oPC));
int k,nSpells;
for (k=1;k<805;k++)
{
nSpells = GetHasSpell(k,oPC);
if (nSpells)
SetLocalArrayInt(oStore,sStoreName+"_spells",k,nSpells);
}
}

Добавлено в [mergetime]1115914001[/mergetime]
В OnClientEnter тож этот инклюд нужен:
Neverwinter Script Source
#include "nw_o0_itemmaker"
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39361 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 12 2005, 18:59


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Нет, эта часть только для перезахода в полиморфе :)
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39359 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 12 2005, 18:36


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Может быть, но конкретно это я сочинял сам :)
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39356 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 12 2005, 18:30


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Вот, одновременно и HP вернет и фиксит баг с перезаходом в полиморфе, когда у сорка становится много много спелов после перезахода в полиморфе :)
Neverwinter Script Source
void RemoveSpells(object oPC)
{
    int i, k, l;
    for(i = 0; i <= 805; i++)
    {
        k = GetHasSpell(i, oPC);
        if(k)
        {
            for(l = 0; l < k; l++)
            {
                DecrementRemainingSpellUses(oPC, i);
            }
        }
    }
}

Neverwinter Script Source
int i;
    int nCHP = GetCurrentHitPoints(oPC);
    int nMHP = GetMaxHitPoints(oPC);
    effect eDmg = EffectDamage(nCHP - nMHP);

    effect eEffect = GetFirstEffect(oPC);
    while(GetIsEffectValid(eEffect))
    {
        if(GetEffectType(eEffect) == EFFECT_TYPE_POLYMORPH)
        {
            RemoveEffect(oPC, eEffect);
            if(nCHP > nMHP) ApplyEffectToObject(DURATION_TYPE_INSTANT, eDmg, oPC);
            DelayCommand(1.0f, RemoveSpells(oPC));
            SendMessageToPC(oPC, "Вот тебе за багоюз!");
            break;
        }
        eEffect = GetNextEffect(oPC);
    }

Это в OnClientEnter модуля.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39354 · Ответов: 3670 · Просмотров: 702,627

Buldog
Отправлено: May 12 2005, 12:47


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Что бы заставить кого то полететь, вовсе ненужны никакие хаки, хотя я может ни так понял... Но, в принципе есть вот такой эффект:
Neverwinter Script Source
// Create a Disappear/Appear effect.
// The object will "fly away" for the duration of the effect and will reappear
// at lLocation.
// - nAnimation determines which appear and disappear animations to use. Most creatures
// only have animation 1, although a few have 2 (like beholders)
effect EffectDisappearAppear(location lLocation, int nAnimation=1)

При помощи него вполне можно летать, и не только мобам, но и игрокам :D Выглядит это как взлет из точки А и приземление в точке В :)
Добавлено в [mergetime]1115891261[/mergetime]
Для наглядности можешь к нам на шард зайти у нас там все драконообразные летают :D
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39326 · Ответов: 3359 · Просмотров: 638,214

Важно! Скрипты
Buldog
Отправлено: May 12 2005, 12:42


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Табличка при смерти вызывается вот этой функцией:
Neverwinter Script Source
// Spawn in the Death GUI.
// The default (as defined by BioWare) can be spawned in by PopUpGUIPanel, but
// if you want to turn off the "Respawn" or "Wait for Help" buttons, this is the
// function to use.
// - oPC
// - bRespawnButtonEnabled: if this is TRUE, the "Respawn" button will be enabled
//  on the Death GUI.
// - bWaitForHelpButtonEnabled: if this is TRUE, the "Wait For Help" button will
//  be enabled on the Death GUI.
// - nHelpStringReference
// - sHelpString
void PopUpDeathGUIPanel(object oPC, int bRespawnButtonEnabled=TRUE, int bWaitForHelpButtonEnabled=TRUE, int nHelpStringReference=0, string sHelpString="")

В OnPlayerDeath ее прописываешь, а там, где sHelpString, я так понимаю, сам ничего не писал там :D, вписываешь нужный тебе текст.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39325 · Ответов: 3670 · Просмотров: 702,627

Buldog
Отправлено: May 12 2005, 12:34


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Ну можешь скачать патч у биотварей, но там сразу до 1.65, незнаю, есть ли у них архив...
Добавлено в [mergetime]1115890531[/mergetime]
Только если у тебя пиратская версия придется еще кряк поискать. А что бы пропатчиться найти оригинальные экзешник и диалог.тлк.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39324 · Ответов: 5109 · Просмотров: 855,096

Важно! Скрипты
Buldog
Отправлено: May 12 2005, 00:38


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


А еще бывает Девастейт, ну это если эпики используются :) Еще у монка дрожащая ладонь, смертельные сники у Ассасина, и если с заклинаниями можно бороться, прописать при провале спаса на смерть, что бы наносился дамаг какой то, то эти фиты правятся только хаками...
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39303 · Ответов: 3670 · Просмотров: 702,627

Важно! Скрипты
Buldog
Отправлено: May 11 2005, 23:50


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


QUOTE (Jammed @ May 11 2005, 21:36)
Понимаешь, Buldog, может случиться такое, что у непися останется, допустим, 20хп, а я долбану его, к примеру, критическим на 60хп и у него сразу станет 0хп, минуя единицу.

Прочий внимательней мой пост, я же написал, что эффективней это сделать через не ОнДамаг, а ОнДеас, просто при смерти не убиваешь НПС, а он падает с 1 НР, правда там тогда надо пудет как то придумывать, что бы его добить можно было, но в принципе сразу он уже не помрет.
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39298 · Ответов: 3670 · Просмотров: 702,627

Buldog
Отправлено: May 11 2005, 14:05


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Супер :D

p.s. А нельзя мне как нить свой Аватар закачать? :rolleyes:
  Форум: Техническая поддержка · Просмотр сообщения: #39183 · Ответов: 63 · Просмотров: 60,228

Buldog
Отправлено: May 10 2005, 22:35


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Как показывает практика, когда начинаешь химичить с тулсетом, или применять всяческие читы игра быстро так надоедает... И касается это не только Аллодов... :)
  Форум: СRPG · Просмотр сообщения: #39121 · Ответов: 18 · Просмотров: 24,185

Buldog
Отправлено: May 10 2005, 22:30


Level 5
**

Группа: Members
Сообщений: 114
Регистрация: 09.04.2005
Из: Москва
Пользователь №: 872


Я говорил и про коннект и про сервер :D
  Форум: Neverwinter Nights Aurora Toolset · Просмотр сообщения: #39119 · Ответов: 3359 · Просмотров: 638,214

3 страниц V   1 2 3 >

Есть новые сообщения  Открытая тема (есть новые ответы)
Нет новых сообщений  Открытая тема (нет новых ответов)
Горячая тема (есть новые сообщения)  Горячая тема (есть новые ответы)
Горячая тема (нет новых сообщений)  Горячая тема (нет новых ответов)
Опрос (есть новые голоса)  Опрос (есть новые голоса)
Опрос (нет новых голосов)  Опрос (нет новых голосов)
Тема закрыта  Закрытая тема
Тема перемещена  Тема перемещена
 

Текстовая версия Сейчас: 18th April 2024 - 08:57