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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 131 132 133 134 135 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
greye
сообщение Jun 1 2010, 17:53
Сообщение #3291


Level 7
**

Класс: Некромант
Характер: True Neutral
Раса: Нежить



SetName, SetDescription
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jun 1 2010, 18:51
Сообщение #3292


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



Спасибо, я балбес, SetName нашел, а вот SetDescription нету. Он в каком-то инклюде?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Jun 1 2010, 19:25
Сообщение #3293


Level 11
Иконки Групп

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Нет, в версии 1.69 / в плагине Funcs к NWNX.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jun 1 2010, 22:25
Сообщение #3294


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



Чорт, на 1,69 переходить совсем не хочется, много лишнего и с dialog.tlk проблемы. Впрочем, NWNX все равно подключать собирался. Спасибо.

Сообщение отредактировал Batkom - Jun 1 2010, 22:25
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
virusman
сообщение Jun 1 2010, 22:35
Сообщение #3295


Level 17
Иконки Групп

Класс: Волшебник
Характер: Neutral Good
Раса: Человек
NWN: Скриптинг [PW]
Axistown SR 1.9
NWNX



SetDescription есть в 1.69.
А NWNX уже сам требует 1.69.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Jun 1 2010, 22:56
Сообщение #3296


Level 11
Иконки Групп

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Цитата
Чорт, на 1,69 переходить совсем не хочется, много лишнего и с dialog.tlk проблемы.
Actually, никаких проблем. Полностью переведённый dialog.tlk для 1.69. А лишнее же всегда можно не использовать, верно?
Вернул на место ссылку на плейграунд. Алсо, не первый случай, когда ссылки на плейграунд начинают магическим образом вести на вpг. Достойный способ потешить самолюбие, ничего не скажешь.

Сообщение отредактировал Ilerien - Jun 7 2010, 19:13
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jun 2 2010, 02:32
Сообщение #3297


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



Ух-ты!
Вот спасибо. (впрочем, я еще конечно поканителюсь с переходом на 1.69, конечно, не известно, чем это грозит, главное, чтобы с тайлсетом ничего не стряслось)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
ReyBrujo
сообщение Jun 6 2010, 19:07
Сообщение #3298


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Вот один из моих скриптиков, который я использовал как спец-атаку монстра (в моем случае дракона).
Действует он так :
1. Проставляем переменные.
2. Чекаем локацию НПЧ на наличие валидных созданий - врагов.
3. Если враг ,- НПЧ ,- то парализуем его на 10-20 сек.
4. Если враг ПЧ - парализуем на 10-20 сек и колдуем на него заклинание огненного шара.
5. Записываем локальную переменную специальных атак.

Может, кому - то понадобится. =)

Neverwinter Script
/////////////////////////////////////////////////////
//////        /////    //////  //  //            //
/////        //  //  //      //  //            ///
////          /////    /////    /////          ////
///          //  //  //          //          /////
//            //  //  //////  /////          //////
/////////////////////////////////////////////////////
// Copyright © Rey Brujo, ma-zi-la@hotmail.com  //
// Created By: ReyBrujo, City Of Masters          //
// Created On: 06/06/2010                          //
/////////////////////////////////////////////////////

void main()
{
object oNPC = OBJECT_SELF; // NPC
object oPC = GetFirstPC(); // Player
int nHP = (GetCurrentHitPoints() / GetMaxHitPoints())*100; // Hit Points (in (IMG:style_emoticons/kolobok_light/wacko.gif)
int nSAtt = GetLocalInt(oNPC, "specatt"); // Special Attack integer
int nNHP = 50;

if(nHP < nNHP && nSAtt >= 1)
    {
    nSAtt -= 1;
    object oCreature = GetFirstObjectInArea(GetArea(oNPC));
    while(GetIsObjectValid(oCreature)) // Check for valid creatures (enemies). If it exists - cast chosen spells/effects.
        {
        // NPC //
        if(GetObjectType(oCreature) == OBJECT_TYPE_CREATURE && GetIsEnemy(oCreature) == TRUE && GetIsPC(oCreature) == FALSE)
            {
            ClearAllActions(TRUE);
            ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectParalyze(), oCreature, 10.0+Random(10));
            }

        // PC //
        if(GetObjectType(oCreature) == OBJECT_TYPE_CREATURE && GetIsEnemy(oCreature) == TRUE && GetIsPC(oCreature) == TRUE)
            {
            ClearAllActions(TRUE);
            ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectParalyze(), oCreature, 10.0+Random(10));
            ClearAllActions(TRUE);
            SetFacingPoint(GetPosition(oPC));
            ActionDoCommand(ActionCastSpellAtObject(SPELL_FIRE
BALL, oPC, METAMAGIC_EMPOWER, TRUE));
            ActionWait(0.5);
            }
        oCreature = GetNextObjectInArea(GetArea(oNPC)); // Continue checking
        }
    SetLocalInt(oNPC, "specatt", nSAtt); // Set number of special attacks
    }
}


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

Еще одно забыл сказать - действие происходит только если у НПК хп меньше чем nNHP % (у меня поставлено 50)

И еще одно - не забудьте в переменные НПЧ поставить переменную specatt, которая больше 0.

Этот скрипт ставится на хертбит монстра (IMG:style_emoticons/kolobok_light/wacko.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Laajin
сообщение Jun 7 2010, 08:10
Сообщение #3299


Level 5
**

Класс: Пьяный Мастер
Характер: Chaotic Good
Раса: Человек



Два варианта:
1. тебе нужно изучить 3д макс и там сделать свою анимацию.
2. На nwn vault я видел хек пак где сделаны летающие драконы, впринципе можно сделать чтобы происходила замена модели - стоящего на лапах, на летящего в воздухе, а потом наоборот.

честно говоря боле вариантов я не вижу, потому что функции аппер-дизаппер они по другому работать не могут.

Сообщение отредактировал Laajin - Jun 7 2010, 08:10
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
ReyBrujo
сообщение Jun 8 2010, 18:19
Сообщение #3300


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Вот начал делать собственный мультиплеерный модуль. Никак не могу сделать две вещи - скрипт на вход(игрок заходит, его должно перенести на вейпоинт) и скрипт, который бы при создании НПЧ давал им команду атаки ближайшего врага.
Пока что есть вот что:
1. (ОнЕнтер триггера под точкой входа)
Neverwinter Script
void main()
{
//////////// MY SCRIPTS ////////////
//--------------------------------//
////////////////////////////////////
object oPC = GetEnteringObject();
object oGame = GetObjectByTag("GAME");
object oGuard = GetObjectByTag("NW_ELFRANGER001");
object oSieger = GetObjectByTag("NW_DROWCLER001");
int nPlayers = GetLocalInt(oGame, "players");
int nGuards = GetLocalInt(oGame, "guards");
int nSiegers = GetLocalInt(oGame, "siegers");
if(GetIsPC(oPC) == TRUE)
{
SetLocalInt(oGame, "players", nPlayers+1); //Set number of players to +1
if(nGuards>nSiegers)
{//Set number of siegers to +1
JumpToObject(GetWaypointByTag("wp_siegers"));
SetStandardFactionReputation(STANDARD_FACTION_HOST
ILE, 100, oPC);
SetStandardFactionReputation(STANDARD_FACTION_DEFE
NDER, 0, oPC);
SetLocalInt(oGame, "siegers", nSiegers+1);
SpeakString(IntToString(nSiegers));
}
else
{//Set number of guards to +1
JumpToObject(GetWaypointByTag("wp_guards"));
SetStandardFactionReputation(STANDARD_FACTION_HOST
ILE, 0, oPC);
SetStandardFactionReputation(STANDARD_FACTION_DEFE
NDER, 100, oPC);
SetLocalInt(oGame, "guards", nGuards+1);
SpeakString(IntToString(nGuards));
}
///////// OTHER SCRIPTS /////////
//-----------------------------//
/////////////////////////////////

// ITEMS //
CreateItemOnObject("potion001", oPC);
CreateItemOnObject("potion001", oPC);
CreateItemOnObject("potion001", oPC);
CreateItemOnObject("potion001", oPC);
CreateItemOnObject("potion001", oPC);
}
}


2. (Хертбит. Инклюд "inc_nearest" просто перенаправляет на "x0_i0_enemy" (чтобы удобнее было искать =) ))
Neverwinter Script
#include "nw_i0_generic"
#include "inc_nearest"

void main()
{
//////////////////////////////////////////
// тут обычные скрипты хертбита //
//////////////////////////////////////////
    if(GetCurrentAction() != ACTION_ATTACKOBJECT)
    {
    ActionAttack(GetNearestEnemy(), TRUE);
    }
}


В первом скрипте всё, кроме джамп ту вейпоинт работает нормально. С вейпом проблем вроде-бы нет.
А во втором скрипте я долго пытался намутить, один раз что-то получилось, но тогда у мну вылетел тулсет, а я не помню, что сделал.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Jun 8 2010, 18:38
Сообщение #3301


Level 11
Иконки Групп

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



1) Во-первых, джамп в НВНе переносит объект, вызвавший функцию (ты пытаешься перенести триггер). Во-вторых, он сделан криво, перед джампом обязательно вызывать ClearAllActions(TRUE) для нужного объекта. Т. е. в этом случае:
Neverwinter Script
AssignCommand(oPC, ClearAllActions(TRUE));
AssignCommand(oPC, JumpToObject(GetWaypointByTag("wp_siegers")));
Для непися аналогично.

2) Я полагаю, эти самые "стандартные скрипты хербита" забивают стек экшенов так, что атака выполняется хз когда (IMG:style_emoticons/kolobok_light/smile.gif)

Сообщение отредактировал Ilerien - Jun 8 2010, 18:39
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
ReyBrujo
сообщение Jun 8 2010, 19:53
Сообщение #3302


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



За перенос объекта огромнейшее спасибо=) подействовало. А вот мои чудаки ни в какую не хотят бежать на врага, даже когда в скрипте хертбита ничего кроме атаки нет... тупо стоят, пока я не подойду к ним.

На всякий случай попробую объяснить, как все у меня взаимодействует.
Я захожу в игру, наступаю на триггер, меня переносит на одну из сторон(в зависимости от того, кого в игре больше - стражей (которые охраняют замок) или осаждающих). Потом, где-то на краю карты сидит человечек, который в хертбите создает осаждающих в точке их появления. По плану эти осаждающие должны сразу же бежать бить ближайшего врага. А они тупо появляются, и стоят. Хотя они являются вражеской к защитникам фракцией.



Проверил отношения фракций - все в норме..
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Jun 8 2010, 20:26
Сообщение #3303


Level 11
Иконки Групп

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Цитата
По плану эти осаждающие должны сразу же бежать бить ближайшего врага. А они тупо появляются, и стоят. Хотя они являются вражеской к защитникам фракцией.
Посмотреть, что возвращает GetNearest Enemy() и GetCurrentAction().
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
ReyBrujo
сообщение Jun 8 2010, 20:40
Сообщение #3304


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Neverwinter Script
// Gets the nearest enemy. Берет ближайшего врага
object GetNearestEnemy(object oSource=OBJECT_SELF, int nNth = 1)
{
    return GetNearestCreature(CREATURE_TYPE_REPUTATION,
                              REPUTATION_TYPE_ENEMY,
                              oSource, nNth);
}


Neverwinter Script
// Get the current action (ACTION_*) that oObject is executing. Берет текущее действие которое исполнЯет объект.
int GetCurrentAction(object oObject=OBJECT_SELF)


Всё! У меня получилось!
Вот на что я изменил хертбит:
#include "nw_i0_generic"
#include "inc_nearest"

Neverwinter Script
void main()
{
    if(GetCurrentAction() != ACTION_ATTACKOBJECT)
    {
    ClearAllActions();
    ActionAttack(GetNearestEnemy());
    }
}


После пессив мода они поползли=)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ilerien
сообщение Jun 8 2010, 20:41
Сообщение #3305


Level 11
Иконки Групп

Класс: Волшебник
Характер: Lawful Evil
Раса: Эльф
NWN: Скриптинг [PW]
Gem of the North



Цитата
Посмотреть, что возвращает GetNearest Enemy() и GetCurrentAction().
(IMG:style_emoticons/kolobok_light/smile.gif) Имелось в виду выполнить скрипт:
Neverwinter Script
object oSelf = OBJECT_SELF;
AssignCommand(GetModule(), SpeakString("Action: " + IntToString(GetCurrentAction(oSelf)), TALKVOLUME_SHOUT));
AssignCommand(GetModule(), SpeakString("Nearest enemy: " + GetName(GetNearestEnemy(oSelf)), TALKVOLUME_SHOUT));
Цитата
После пессив мода они поползли=)
Ну значит мое первое предположение в широком смысле верно - что-то забивает стек экшенов.

Сообщение отредактировал Ilerien - Jun 8 2010, 20:43
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Rommantic
сообщение Jun 11 2010, 16:36
Сообщение #3306


Level 1


Класс: Страж Тьмы
Характер: Lawful Evil
Раса: Эльф



Доброго времени суток. Боюсь показаться тупым юзером, но у меня не работает встроенный в редактор скрипт "дать награду" что-либо. Не выдаёт ни денег, ни опыта ни вещей. Что у меня неверно? Вот так на данный момент выглядит скрипт:

//::///////////////////////////////////////////////
//:: FileName at_003
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: Script Wizard
//:: Created On: 11.06.2010 17:34:41
//:://////////////////////////////////////////////
void main()
{
// Äàòü ãîâîðÿùåìó îïûò
GiveXPToCreature(GetPCSpeaker(), 10);

}

Вместо абракадабры, соответственно " Дать говорящему опыт"
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 11 2010, 16:46
Сообщение #3307


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



маленькая буква "я" в скрипте - древнейшая проблема, о упоминание о которой есть в куче тем.
Убирай русский коммент или, что гораздо лучше, ставь патч Думбо
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Rommantic
сообщение Jun 12 2010, 06:22
Сообщение #3308


Level 1


Класс: Страж Тьмы
Характер: Lawful Evil
Раса: Эльф



Благодарю. Страниц море всё читать - никакого времени не хватит ) Честно пролистал первые две страницы этого раздела, не нашёл )

Пойду разбираться с патчем: как и куда втыкать ) Более чем уверен, что будут ещё вопросы, так что моралььно готовьтесь: я тот ещё чайник )) (IMG:style_emoticons/kolobok_light/crazy.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 12 2010, 07:37
Сообщение #3309


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Rommantic, есть еще версия для печати и поиск по странице. Плюс, есть скрипты для новичков там всяко разно есть то что ищется. Например, Вот тут.

Neverwinter Script
//:://////////////////////////////////////////////
//:: Даем партии ХР
//:: Copyright © 2005 WRG!
//:://////////////////////////////////////////////
//:: Created By: Aiwan
//:: Created On: 18.09.2005
//:://////////////////////////////////////////////
#include "nw_i0_tool"

void main()
{
    RewardPartyXP(150, GetPCSpeaker());
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Rommantic
сообщение Jun 12 2010, 07:53
Сообщение #3310


Level 1


Класс: Страж Тьмы
Характер: Lawful Evil
Раса: Эльф



Вот,кстати, сразу и вопрос. Если мне нужно написать скрипт оценки наличия определённого количества золота у игрока, где пивать количество золота? Пока что выглядит оно вот так:
Neverwinter Script
//::///////////////////////////////////////////////
//:: FileName sc_002
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: Script Wizard
//:: Created On: 12.06.2010 8:44:20
//:://////////////////////////////////////////////
#include "nw_i0_tool"

int StartingConditional()
{

    // Удостовериться, что в снаряжении персонажа игрока имеются данные предметы
    if(!HasItem (GetPCSpeaker(), "NW_IT_GOLD001") )
        return FALSE;

    return TRUE;
}


Попытался методом тыка, пока что пришёл к такому варианту (компелирует, но не работает):

Neverwinter Script
//::///////////////////////////////////////////////
//:: FileName sc_002
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: Script Wizard
//:: Created On: 12.06.2010 8:44:20
//:://////////////////////////////////////////////
#include "nw_i0_tool"

int StartingConditional()
{

    // Удостовериться, что в снаряжении персонажа игрока имеются данные предметы
    if(!HasItem (GetPCSpeaker(), "NW_IT_GOLD001 (1000)") )
        return FALSE;

    return TRUE;
}


как правильно? (IMG:style_emoticons/kolobok_light/unsure.gif)
Причины изменения: Для скриптов есть тег [nss]
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
greye
сообщение Jun 12 2010, 08:55
Сообщение #3311


Level 7
**

Класс: Некромант
Характер: True Neutral
Раса: Нежить



Есть функция GetGold().
Соответственно:
Neverwinter Script
if (GetGold(GetPCSpeaker()) < 1000) {
    return FALSE;
}
return TRUE;


Сообщение отредактировал greye - Jun 12 2010, 08:59
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
likkil
сообщение Jun 12 2010, 22:22
Сообщение #3312


Level 2
*

Класс: Вор
Характер: Lawful Good
Раса: Человек



Доброго времени суток
У меня такой вопросик : вот у меня есть модуль старой версии 1.6 , а так охота в нём покататся на лошадях какие команды мне использовать в скрипте чтоб это было возможно
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 13 2010, 08:45
Сообщение #3313


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата(likkil @ Jun 13 2010, 00:22) *
а так охота в нём покататся на лошадях какие команды мне использовать в скрипте чтоб это было возможно

Команда - НО!!! Трогай! - двигаться вперед.
Команда - ТРРРРР! - остановка.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Laajin
сообщение Jun 14 2010, 14:37
Сообщение #3314


Level 5
**

Класс: Пьяный Мастер
Характер: Chaotic Good
Раса: Человек



likkil
это долгая история
во первых что за модуль...кастомный иль не кастомный - вопрос непонятен
во вторых лошадки появляются только после патча 1.69
до него жалкие попытки покататься на лошадках выливались в тяжелые хаки и муторные системы скриптов.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Jun 14 2010, 17:13
Сообщение #3315


Level 19
Иконки Групп

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



В 1.69 по сути те же хаки (просто включены в ресурсы игры) и те же муторные системы скриптов. Ничего конкретно нативного в коняшках нет - всё тот же геморрой с кастомными анимациями и подменой аппиаранса. Изврат в общем.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 131 132 133 134 135 > » 
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 8th May 2025 - 17:57