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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
205 страниц V  « < 62 63 64 65 66 > »   
Ответить в эту темуОткрыть новую тему
> Вопросы новичков, Абсолютные глупости
Batkom
сообщение Jul 8 2005, 16:48
Сообщение #1576


Level 4
**

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



я нашел функцию определения чегото GetChallengeRating
видимо это и есть CR, но что делать с ним?
он float, значит дробь, возможно нужно умножать его на не знаю что и делить на HD игрока или общий HD партии
или нет....
у меня получилась формула fXp = GetChallengeRating(oMonster) * X / GetHitDice(oPC);
откуда взяь множитель Х не знаю, хотя может я вообще все не так делаю...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
dumbo
сообщение Jul 8 2005, 20:30
Сообщение #1577


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

Класс: Фея
Характер: Chaotic Evil
Раса: Тварь
NWN: Скриптинг [PW]



Batkom
одной формулой ты врядли обойдешся. возьми для примера систему из какого-нибудь hcr - сам "рожать" будешь долго... ;) float потому, что на маленьких значениях он бывает нецелый(0.5, 0.75)...

Zirrex
http://nwn.bioware.com/support/patchdetails164.html :
QUOTE
The game no longer displays the "Experience Points Gained:" message when the experience points gained was 0.


по поводу "ошибки алхимика":
Lexicon:
QUOTE
Neverwinter Script Source
effect EffectPolymorph(
    int nPolymorphSelection,
    int nLocked = FALSE
);
Parameters
nPolymorphSelection - POLYMORPH_TYPE_*
nLocked - If TRUE, player can't cancel polymorph (Default: FALSE)


Сообщение отредактировал dumbo - Jul 8 2005, 20:32
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 8 2005, 22:13
Сообщение #1578


Level 4
**

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



ясно сенк, сейчас попробую потырить скрипт с нордока170
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 8 2005, 22:17
Сообщение #1579


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



dumbo, не знал, но у меня по старинке установлен этот скрипт. Теперь можно и убрать.

У полиморфов есть один побочный эффект. Если превращаешься в Балора, Голема, Дракона, и т.д., то, у кого в полиморфе становится в 2 раза выше жизни, чем у персонажа, при автосохранении на сервере происходит перенакладка полиморфа. В принципе, это у всех, но с "тяжелыми" полиморфами иная проблема. Т.е., если полиморфа ранили, но жизнь не опустилась ниже критического порога, например, была 500/300, а стала 301/300, то она восстановится. Явный баг, но как его исправить, я не знаю, в момент автосохранения полиморф как бы дергает.

К тому же я так еще сделал, чтобы избавиться от эффекта полиморфа.

Сообщение отредактировал Zirrex - Jul 8 2005, 22:19
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 9 2005, 03:33
Сообщение #1580


Level 4
**

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



ух взял скрипт раздачи опыта с nordockpub170 вроде все правильно, но не работает вообще
посоветуйте какой нибудь простой во внедрении скрипт а я его дополню

вот что у меня получилось
Neverwinter Script Source
float fCR = GetChallengeRating(OBJECT_SELF);
    int nMonsterXP;
    object oMod = GetModule();




    int nPartyMembers;
    int nPartyLevelSum;
    int nHighestLevel=0;
    float fAvgPartyLevel;

    object oKilledArea = GetArea(OBJECT_SELF);
    object oPC = GetFirstFactionMember(oKiller);

    while(GetIsObjectValid(oPC)) {
        if(oKilledArea == GetArea(oPC)) nPartyMembers++;
        if(GetIsDM(oPC)) nPartyMembers--;
        else nPartyLevelSum += GetCharacterLevel(oPC);
        if (GetCharacterLevel(oPC)> nHighestLevel)
            nHighestLevel=GetCharacterLevel(oPC);
        oPC = GetNextFactionMember(oKiller, TRUE);
    }

    if (nPartyMembers == 0)
    return;

    fAvgPartyLevel = IntToFloat(nPartyLevelSum) / IntToFloat(nPartyMembers);


    if (FloatToInt(fAvgPartyLevel) < 3) fAvgPartyLevel = 3.0;
    PrintString ("party level "+FloatToString(fAvgPartyLevel,3,1));

    if ((FloatToInt(fAvgPartyLevel) <= 6) && (fCR < 1.5))
        nMonsterXP = GetLocalInt(oMod,"BASEXP");
    else
    {
        nMonsterXP = GetLocalInt(oMod,"BASEXP") * FloatToInt(fAvgPartyLevel/2);
        int nDiff = FloatToInt(((fCR < 1.0) ? 1.0 : fCR) - fAvgPartyLevel);
        switch (nDiff)
        {
        case -7:
            nMonsterXP /= 12;
            break;

        case -6:
            nMonsterXP /= 8;
            break;
        case -5:
            nMonsterXP = nMonsterXP * 3 / 16;
            break;
        case -4:
            nMonsterXP /= 4;
            break;
        case -3:
            nMonsterXP /= 3;
            break;
        case -2:
            nMonsterXP /= 2;
            break;
        case -1:
            nMonsterXP = nMonsterXP * 2 / 3;
            break;
        case 0:
            break;
        case 1:
            nMonsterXP = nMonsterXP * 3 / 2;
            break;
        case 2:
            nMonsterXP = nMonsterXP * 3 / 2;
            break;
        case 3:
            nMonsterXP = nMonsterXP * 3 / 2;
            break;
        case 4:
            nMonsterXP *= 2;
            break;
        case 5:
            nMonsterXP *= 2;
            break;
        case 6:
            nMonsterXP *= 2;
            break;
        case 7:
            nMonsterXP *= 3;
            break;
        case 8:
            nMonsterXP *= 3;
            break;
        case 9:
            nMonsterXP *= 3;
            break;
        case 10:
            nMonsterXP *= 4;
            break;
        case 11:
            nMonsterXP *= 4;
            break;
        case 12:
            nMonsterXP *= 4;
            break;
        case 13:
            nMonsterXP *= 5;
            break;
        case 14:
            nMonsterXP *= 5;
            break;
        case 15:
            nMonsterXP *= 5;
            break;
        case 16:
            nMonsterXP *= 6;
            break;
        case 17:
            nMonsterXP *= 6;
            break;
        case 18:
            nMonsterXP *= 6;
            break;
        case 19:
            nMonsterXP *= 7;
            break;
        case 20:
            nMonsterXP *= 7;
            break;
        case 21:
            nMonsterXP *= 7;
            break;
        case 22:
            nMonsterXP *= 8;
            break;
        case 23:
            nMonsterXP *= 8;
            break;
        case 24:
            nMonsterXP *= 8;
            break;
        case 25:
            nMonsterXP *= 9;
            break;
        case 26:
            nMonsterXP *= 9;
            break;
        case 27:
            nMonsterXP *= 9;
            break;
        case 28:
            nMonsterXP *= 10;
            break;
        case 29:
            nMonsterXP *= 10;
            break;
        case 30:
            nMonsterXP *= 10;
            break;
        case 31:
            nMonsterXP *= 11;
            break;
        case 32:
            nMonsterXP *= 11;
            break;
        case 33:
            nMonsterXP *= 11;
            break;
        case 34:
            nMonsterXP *= 12;
            break;
        case 35:
            nMonsterXP *= 12;
            break;
        default:
            nMonsterXP = 0;
        }
    }    if (fCR < 0.76 && nMonsterXP)
    {
        if (fCR <= 0.11)
            nMonsterXP = nMonsterXP / 10;
        else if (fCR <= 0.13)
            nMonsterXP = nMonsterXP / 8;
        else if (fCR <= 0.18)
            nMonsterXP = nMonsterXP / 6;
        else if (fCR <= 0.28)
            nMonsterXP = nMonsterXP / 4;
        else if (fCR <= 0.4)
            nMonsterXP = nMonsterXP / 3;
        else if (fCR <= 0.76)
            nMonsterXP = nMonsterXP /2;
       

        if (nMonsterXP == 0) nMonsterXP = 1;
    }


    nMonsterXP += GetLocalInt(oMod,"BONUSXP");
    int nCharXP;
    PrintString("Monster XP = "+IntToString(nMonsterXP));
    if (nPartyMembers < 5)
    {
        nCharXP = FloatToInt((nMonsterXP*(1+(0.3*(nPartyMembers-1))))/nPartyMembers);
    }
    else
    {
        nCharXP = FloatToInt((nMonsterXP*(1+(0.5*(nPartyMembers-1))))/nPartyMembers);
    }








    PrintString("Char XP = "+IntToString(nCharXP));
    oPC = GetFirstFactionMember(oKiller);
    while(GetIsObjectValid(oPC))
    {

        if(!GetIsDM(oPC) && oKilledArea == GetArea(oPC))
        {
            int nCurExp=GetXP(oPC);
            int modXP;
            if (nCharXP>0)
            {
                if(GetHitDice(oPC)<12)
                {
                    modXP=nCharXP;
                    if ((abs(GetHitDice(oPC)-FloatToInt(fAvgPartyLevel))>5) || (nHighestLevel-GetHitDice(oPC)>5))
                        modXP=modXP/4;

                                        if ((GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == TRUE)||(GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == TRUE))
                    modXP = modXP / 3;
                    if ((GetLevelByClass(CLASS_TYPE_SHIFTER, oPC) == TRUE)||((GetLevelByClass(CLASS_TYPE_RANGER, oPC) == TRUE)))
                    modXP = modXP * 2;
                    GiveXPToCreature(oPC, modXP);
                    PrintString("Rewarded "+GetName(oPC)+ " XP = "+IntToString(nCharXP));
                }
                else
                {
                    switch (GetHitDice(oPC))
                    {
                        case 12:modXP=nCharXP* 7 / 8;
                                break;
                        case 13:modXP=nCharXP* 13 / 16;
                                break;
                        case 14:modXP=nCharXP* 6 / 8;
                                break;
                        case 15:modXP=nCharXP* 11 / 16;
                                break;
                        case 16:modXP=nCharXP* 5 / 8;
                                break;
                        case 17:modXP=nCharXP* 9 / 16;
                                break;
                        case 18:modXP=nCharXP* 4 / 8;
                                break;
                        case 19:modXP=nCharXP* 7 / 16;
                                break;
                        case 20:modXP=nCharXP* 3 / 8;
                                break;
                        default: modXP=nCharXP* 3 /8;
                                break;
                    }
                    if (abs(GetHitDice(oPC)-FloatToInt(fAvgPartyLevel))>5 || (nHighestLevel-GetHitDice(oPC)>5))
                        modXP=modXP/4;

                                        if ((GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == TRUE)||(GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == TRUE))
                    modXP = modXP / 3;
                    if ((GetLevelByClass(CLASS_TYPE_SHIFTER, oPC) == TRUE)||((GetLevelByClass(CLASS_TYPE_RANGER, oPC) == TRUE)))
                    modXP = modXP * 2;
                    GiveXPToCreature(oPC, modXP);
                    PrintString("Rewarded "+GetName(oPC)+ " XP = "+IntToString(modXP)+ " (level "+IntToString(GetHitDice(oPC))+")");
                }
            }
        }
        oPC = GetNextFactionMember(oKiller, TRUE);
    }


откуда брать basexp и bonusxp понятия не имею
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jul 9 2005, 07:54
Сообщение #1581


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

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



Batkom вопросы по скриптингу в другой теме. Тут вопросы новичков. Еще раз увижу обсуждение кода, влеплю пред.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 9 2005, 13:39
Сообщение #1582


Level 4
**

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



сорри
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 9 2005, 13:56
Сообщение #1583


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



Batkom, не бери из Нордока, там паршивая система распределения опыта. Она мне не понравилась. Лучше попробуй этот скрипт Neverwinter Vault - PWFXP.

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

Сообщение отредактировал Zirrex - Jul 9 2005, 13:57
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 9 2005, 22:46
Сообщение #1584


Level 4
**

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



То что качелей и паравозов нету есть гут, ибо я чего толкьо не делал и как только не извращался.
Сейчас попробую внедрить.

Все работает, пока не совсем так как хотелось бы, но это вопрос времени.

Огромное спасибо. :D
Добавлено в [mergetime]1120956151[/mergetime]
Еще раз спасибо, скрипт отлично работает, все настроил, теперь прусь :D

..ээм...вот еще пара вопросиков :unsure:
1 как увеличить продолжительность сна
2 как проверить есть ли в пределах 5 метров от игрока плсбл обьект с известным тегом?
Хочу сделать, чтобы без разведенного рядом костра восстанавливались не все хит поинты и просто увеличить продолжительность отдыха в 2 или 3 раза

Сообщение отредактировал Batkom - Jul 10 2005, 00:28
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jul 10 2005, 07:55
Сообщение #1585


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

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



QUOTE (Batkom @ Jul 10 2005, 01:46)
2 как проверить есть ли в пределах 5 метров от игрока плсбл обьект с известным тегом?

Сделай перебор объектов рядом в кубе. Если в кубе бушь перебирать, укажи размер куба и не нужно писать третий параметр в строках снизу.
Neverwinter Script Source
object GetFirstObjectInShape(int nShape, float fSize, location lTarget, int bLineOfSight=FALSE, int nObjectFilter=OBJECT_TYPE_CREATURE, vector vOrigin=[0.0,0.0,0.0])

Neverwinter Script Source
if (GetObjectType(oPlsb) == OBJECT_TYPE_PLACEABLE && GetTag(oPlsb) == "TAG_ОБЪЕКТА"
      && GetDistanceBetween(OBJECT_SELF, oPlsb)<=5.0)
      {
        // Делай с ним что хошь...
        }

Добавлено в [mergetime]1120971414[/mergetime]
Если через перебор всех объектов то
Neverwinter Script Source
GetDistanceBetween(OBJECT_SELF, oPlsb)<=5.0

Оставь это. Но лучше через ту функцию что дал выше.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 10 2005, 22:12
Сообщение #1586


Level 4
**

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



хм, перед тем как посмотреть на форум успел додуматься до своего решения
Neverwinter Script Source
object oPlsbl = GetNearestObjectByTag("Тег" ,oPC, 1);


Neverwinter Script Source
if ((GetIsObjectValid(oPlsbl) == TRUE) && (GetDistanceBetween(oPC, oPlsbl) <= 5.0))
{
// действия
}


Помоему попроще чем с пееребором, но пока не знаю как будет работать в мультиплеере или когда костров несколько

Сообщение отредактировал Batkom - Jul 10 2005, 22:12
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 10 2005, 22:37
Сообщение #1587


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



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

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

Тебе все же лучше искать не просто тэг на локации, а именно требуемый объект в определенном месте. Например, как по скрипту выше, что от Aiwana, в радиусе игрока. Если ты будешь использовать свой скрипт, он будет искать все объекты с подобным тэгом на всей локации, что может привести к совершенно не тем результатам.

Сам хочу в скором времени перейти на костровый отдых, так что буду еще делать :)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 11 2005, 01:31
Сообщение #1588


Level 4
**

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



Все нормально работает, никаких багов.
я же там не зря поставил после нахождения обьекта с тегом проверку расстояния
к тому же GetNearestObjectByTag ищет ближайший обьект.
еще добавил палатки, теперь если партия из 10-15 человек останавливается на ночлег начинается форменое строительство огромного лагеря, выглядит потрясающе, + той же функцией добавляется проверка на дальность, чтобы палатки не ставились друг вдруга
если таргетлокейшн слишком близко, высвечивается сообщение в логе
все отлично работает
осталось только как то увеличить продолжительность отдыха.

Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Hassan
сообщение Jul 11 2005, 08:50
Сообщение #1589


Level 5
**

Класс: Монах
Характер: Lawful Evil
Раса: Эльф



Вопросы:
Можно ли добавить ПС конкретный Фит? Ну к примеру дать ему Дарквижн, если он чел?
Как сделать вещь, с помощью которой можно раз в день вызывать существо, к примеру статуэтку паука - и соотв-но чтоб вызывался паук?

пока все... :xz:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 11 2005, 08:51
Сообщение #1590


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



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

Если они любят ролеплей, то сами посидят у костра, если же важнее опыт и монстры, то не заставишь, а скриптовое насилие не самое лучшее решение.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 11 2005, 15:41
Сообщение #1591


Level 4
**

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



мда, жаль жаль

Добавлено в [mergetime]1121096583[/mergetime]
Кстати воимя РП я хотел бы отключить шаут.
На Gem pf the North я видел подобную фичу, там шаута нет и вместо него пишутся обычные фразы , "орать" может только ДМ. Это очень удобно нежели ограничивать игроков правилами и наказывать таковых делевелами. К тому же ДМ не всегда присутствует на шарде и не всегда может уличить игрока в нарушении.
И еще всекоманды макро текста тоже автоматом пишутся в шаут, возможно он отключается гдето в настройках тулсета? Или всеже придется писать скрипт на какой нить евент?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
dumbo
сообщение Jul 11 2005, 19:07
Сообщение #1592


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

Класс: Фея
Характер: Chaotic Evil
Раса: Тварь
NWN: Скриптинг [PW]



Batkom
nwnplayer.ini
CODE
...
[Server Options]
...
Disallow Shouting=1
...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 12 2005, 09:39
Сообщение #1593


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



Batkom, всегда можно написать скрипт, который бы штрафовал за количество фраз в шаут :) Одно время писали для шарда, а потом идея заглохла, хотя работала отлично, потому что выключили по этой опции шаут. Вначале игроки ворчали, что дескать нельзя использовать шаут, даже голосование устраивали, нужен ли он им, а потом привыкли. Для ролейплея это, и правда, незаменимая вещь, когда она выключена. Ранее постоянно были возгласы, да успокойтесь вы, или замолчите, но новичков хватает, и часто им все по барабану.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 12 2005, 11:43
Сообщение #1594


Level 4
**

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



:yes: истинно так, опробовал, действительно с этой опцией орать в шаут может только ДМ делая обьявления, потрясающе :yahoo: одним правилом сервера меньше.

Добавлено в [mergetime]1121182743[/mergetime]
Скачал отличный хак с красивыми лошадками, но не могу их вставить, по причине СЕПа. Если вставлять хак к новому модулю, то все пучком, а если к тому, что уже стоит на сепе, ничего не получается, я так думаю, что нужно написать tlk с дескриптом моделек, но как это сделать и это ли нужно сделать, чтобы модельки встали на свои места?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 12 2005, 20:41
Сообщение #1595


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



Странно, что про опцию шаута ты узнал только сейчас. Иногда не мешает повозиться с настройками ini файла :) Уверен, что ты не знаешь еще таких команд, как эти:

ClientChatLogging=1
ClientEntireChatWindowLogging=1

Прописываются в файл "nwnplayer.ini" в разделе "Game Options". Как видно из написанного, позволяют вести логи чата, а также записывать информацию в текстовый файл, которая вносится через закладку игрового журнала.

Также еще ранее можно было легко разблокировать камеру, пока не появилась подобная возможность открыто в дополнении Соу, данной командой, прописанной в том же файле, а именно:

Unlockcamera=1

Прописывается в разделе "Control Options". Ладно, все это тонкости, давно уже описанные в различных faq листах, зачитанных до дыр :)

Разработчики Cep-а забавные ребята, добавили много чего интересного, но не внесли лошадей, даже как-то не понятно это сознавать. Тем более сами лошади существуют еще с времен оригинального НВН, в том время, когда не было даже Соу.

Не совсем понял, причем тут tlk? Если ты добавляешь модельки лошадей в модуль, то они являются существами, в данном случе, хенчманами, позволяющими на себя садиться верхом и ездить по локациям точно также, как и пешком или бегом. В чем конкретная проблема, занята ниша или не желает устанавливаться в модуль с подключенным Cep?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 13 2005, 00:18
Сообщение #1596


Level 4
**

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



похоже ниша зенята, ибо создаю крича, устанавливаю модельку лошади, подключаю сеп и вижу инвизибл обжект
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jul 13 2005, 07:00
Сообщение #1597


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

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



QUOTE (Batkom @ Jul 13 2005, 03:18)
похоже ниша зенята, ибо создаю крича, устанавливаю модельку лошади, подключаю сеп и вижу инвизибл обжект

Ты 2Да файл посмотри. Может конфликт там скорее всего.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 13 2005, 08:30
Сообщение #1598


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [Sn]



QUOTE (Zirrex @ Jul 12 2005, 20:41)
Ладно, все это тонкости, давно уже описанные в различных faq листах, зачитанных до дыр

Не подскажешь, где их можно почитать?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
GoingPro)
сообщение Jul 13 2005, 11:59
Сообщение #1599


Level 3
*

Класс: Ниндзя
Характер: Chaotic Evil
Раса: Человек



Добрый день!

У меня к вам вопрос:
Как зделать так что бы НПС считывала фразы с чата, ты пишешь например ей дай мне стрел и она тебе дает стрелы...??
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 13 2005, 13:32
Сообщение #1600


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [Sn]



Кажись вот функции
Задать фразу
Neverwinter Script Source
SetListenPattern(object oObject, string sPattern, int nNumber=0)



Сравнить фразу игрока
Neverwinter Script Source
GetListenPatternNumber()


Значит На OnSpawn НПС
Neverwinter Script Source
void main()
{
SetListening(OBJECT_SELF, 1);
SetListenPattern(OBJECT_SELF,"дай мне стрел",1);
}


А на OnConversation

Neverwinter Script Source
void main()
{
object oPC = GetLastSpeaker();

  if (GetListenPatternNumber()==1 && GetIsListening(OBJECT_SELF))
      {
      CreateItemOnObject("Strela", oPC, 99);
      }

}


Сообщение отредактировал -fenix- - Jul 13 2005, 14:08
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

205 страниц V  « < 62 63 64 65 66 > » 
Ответить в эту темуОткрыть новую тему
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 30th April 2025 - 06:54