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

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

4 страниц V  < 1 2 3 4 >  
Ответить в эту темуОткрыть новую тему
> Кто нибудь расскажите как создать сервер для NWN, Чайник просит помощи!
KoYuKi
сообщение Mar 31 2005, 19:53
Сообщение #26


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan в очередной раз спасибо, добрый ты человек блин, побольше бы таких :good:
Но у меня как обычно очередная проблема :D. Вобщем так на серваке такая проблема: когда перс умирает, открывается менюшка, в ней 4 варианта (из которых само собой разумеется работаю только 3), все вполне стандартно: респаун, выйти из игры, и ждать помощи. Но вот какая проблема, некоторые хитрецы, чтобы не тратить опыта и денег при респауне просто нажимают выйти из игры, а когда входят снова их перс находится на том же месте только живой здоровый! Просто кошмар, я не знаю что делать, наказывать их нельзя - вроде как мой косяк, не наказывать тоже, остается только один - выход исправить это. Но как это сделать? Пожайлусто подскажите, я просто в отчаянии, дайте скрипт, или скажите как его написать, или может есть метод попроще это исправить (хотя я лично сомневаюсь). Скажите что надо сделать я сделаю всё, даже если придётся за неделю научится хорошо работать со скриптами, спать не буду но научусь! Ещё немного и из за этой мелочи я просто свихнусь. Эта ерунда портит весь геймплей! Пожалуйсто помогите.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Mar 31 2005, 20:09
Сообщение #27


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



OnClientEnter

CODE

//by _Kaa_ 20.05.30
#include "nw_o0_itemmaker"
void main()
{
object oPC = GetEnteringObject();
object oStore = GetModule();  
string sStoreName = GetName(oPC)+GetPCPlayerName(oPC); // =[PC name] + [login name]
SetLocalString(oPC,"HP_MyIdString",sStoreName);
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 < 500; k++)
{
nSpells = GetLocalArrayInt(oStore,sStoreName+"_spells",k);
if (nSpells)
 for (j=0; j <= GetHasSpell(k,oPC)-nSpells; j++) DecrementRemainingSpellUses(oPC, k);
}
}


OnClientLeave

CODE

//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<500;k++)
{
nSpells = GetHasSpell(k,oPC);
if (nSpells)
 SetLocalArrayInt(oStore,sStoreName+"_spells",k,nSpells);
}
}


CODE
for (k=1;k<500;k++)

Я тут подправил под 500. Но со вторым аддоном количество спелов думаю перевалило.

Сообщение отредактировал baskan - Mar 31 2005, 20:10
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Mar 31 2005, 20:19
Сообщение #28


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan, ты конечно извени за такую наглую лесть, но ты не человек, ты добрый волшебник :yahoo:
БОЛЬШОЕ СПАСИБО! Ты даже не представляешь себе как я тебе благодарен. Вот мое мыло avatar1987@mail.ru если надо чтото перевести (с английского) обращайся, да и вообще если какя нить помощь нужна будет, всегда помогу в любое время дня и ночи. :good:
Добавлено в [mergetime]1112362308[/mergetime]
Появилась очередная проблема: вобщем так есть город "A" и город "B", в окрестности города "А" есть 6 локаций и в окрестности города "В" есть 6 локаций. Как сделать так, чтобы все кто умерли в окрестности города "А" появлялись в храме города "А", а те кто умирают в окрестности города "В" появляются в храме города "В". На данный момент у меня кто бы где бы не умер появляется в храме города "А". Впринципе я вообще не знаю как делаются респавны оживления, так как мод я слизал из инета.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 2 2005, 10:12
Сообщение #29


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



Неужели никто мне не ответит? :xz:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Apr 2 2005, 12:10
Сообщение #30


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

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



гм...вариант 1. Простой.

В локациях около города "А" поставь поинты с тэгами "TOWN_A_SUB", около "B" соовт. "TOWN_B_SUB".
В скрипте респавна проверяй, если ближайший к игроку объект с тэгом "TOWN_A_SUB" валидный
Neverwinter Script Source
if GetIsObjectValid(GetNearestObjectByTag("TOWN_A_SUB"),oPC)

тогда точка респа в городе А, иначе в городе Б.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 2 2005, 20:34
Сообщение #31


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



Lex спасибо!
Появилась очередная проблема а именно "timestop" (спелл), как с этим бороться, нельзя ли ограничить его действие на определённое расстояние или хотябы на локацию и если нельзя то как его запертить?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Apr 3 2005, 09:30
Сообщение #32


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



Можно его убрать. Можно порезать. Могу дать фикс который стоит на моем шарде.Эспортируеш его в модуль и смотриш результат.
Фикс
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 3 2005, 15:30
Сообщение #33


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan в очередной раз спасибо.
Но есть очередная очень конкретная проблема: как сделать так, чтобы лут (ну мешочки из монстров) исчезал через некоторое время если его не берут? Ну просто очень надо, у меня на серваке всего 256 оператива, несобранный лут его кушает как пылесос! Если скрипт, то немогли бы вы его выложить, если выложить нет возможности, то хотябы намекните как его написать, и куда потом вставлять, ну имеется ввиду: OnHeartBeat или там ещё куда (кстати не подскажите что значит OnHeartBeat - всмысле ни как это с английского переводится, а что оно делает?)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Apr 3 2005, 19:41
Сообщение #34


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



OnExit Локи


CODE
int nClearPlaceInv = TRUE;
float fDelayTime = 30.0;

void CleanArea(object oArea)
{
 object oTrash = GetFirstObjectInArea(oArea);
 object oInvItem;


 object oPC = GetFirstPC();
 while (GetIsObjectValid(oPC)) {
   if  (GetArea(oPC) == oArea) {
     DeleteLocalInt(oArea, "CleanArea");
     return;
   }
   oPC = GetNextPC();
 }

 while(GetIsObjectValid(oTrash)) {
   string sTagPrefix = GetStringLeft(GetTag(oTrash), 15);
   // Î÷èùàåì ðèìýéíñû è áðîøåíûå âåùè
   if(GetObjectType(oTrash)==OBJECT_TYPE_ITEM ||
       GetStringLowerCase(GetName(oTrash)) == "remains") {
         AssignCommand(oTrash, SetIsDestroyable(TRUE));
         if (GetHasInventory(oTrash)) {
           oInvItem = GetFirstItemInInventory(oTrash);
           while(GetIsObjectValid(oInvItem)) {
             DestroyObject(oInvItem,0.0);
             oInvItem = GetNextItemInInventory(oTrash);
           }
         }
         else DestroyObject(oTrash, 0.0);
     }
   
     if(GetObjectType(oTrash)==OBJECT_TYPE_PLACEABLE &&
       nClearPlaceInv == TRUE) {
       if (GetHasInventory(oTrash))
       {
         object oInvItem = GetFirstItemInInventory(oTrash);
         while(GetIsObjectValid(oInvItem)) {
           DestroyObject(oInvItem,0.0);
           oInvItem = GetNextItemInInventory(oTrash);
         }
       }
     }
   
     else if (GetIsEncounterCreature(oTrash) ||
             sTagPrefix == "PWFSE_SPAWNERID")
     {
       AssignCommand(oTrash, SetIsDestroyable(TRUE));
       DestroyObject(oTrash, 0.0);
     }

     oTrash = GetNextObjectInArea(oArea);
 }
 DeleteLocalInt(oArea, "CleanArea");
}

void main()
{
 object oArea = OBJECT_SELF;
 object oPC = GetExitingObject();
 if (!GetIsPC(oPC)) return;

 if (GetLocalInt(oArea, "CleanArea") != 1)
 {
   DelayCommand(fDelayTime, CleanArea(oArea));
   SetLocalInt(oArea, "CleanArea", 1);
 }
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 3 2005, 20:25
Сообщение #35


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan спасибо!
Тут мне для одного дела понадобилась разобраться в фале nwserverLog1.txt вобщем то всё понятно вот только одно пнять не могу: [Mon Apr 04 01:07:01] SaYkS (ZDDLTMBR) Joined as Player 5, что такое "(ZDDLTMBR)" это вообще откуда, причём у одного и того же игрока оно ввсегда одинаковое. Подскажите откуда у него ноги растут.
А и ещё baskan та фишка что ты мне от timestop'a дал она не работает, ну всмысле он то наверно работает просто подключить я ее не могу, так как версия у меня видать тула старая, говорит мол "было сделанно используя более новую версию тула". Может есть способ попроще, просто скрипт какой нить?
И ещё появилась ещё одна проблема из ряда очень больших. Как организовать автосохранение персов на серваке через определённый интервал времени. А то как у меня свет вырубит или ещё чё, так у всех сразу откат происходит. И потом приходится всем бегать их опыт возвращать и оружие потерянное. Может есть какая нить прога для этого дела или скрипт?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Apr 3 2005, 20:46
Сообщение #36


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



1)Походу это сидикей.
2)Зайти на ваулт и в поисковик напиши imestop
3)Щас напишу, сек подожди
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 4 2005, 05:01
Сообщение #37


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan Жду... заранее спасибо.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
OslavaO
сообщение Apr 4 2005, 10:10
Сообщение #38


Level 1


Класс: Ученик Дракона
Характер: Neutral Evil
Раса: Эльф



Подскажите пожалуйста, каким образом увеличить или уменьшить шанс вападания магичь вещей с монстров
Если это скрипт, то пожалуйста напишите образец и скажите кудаего поместить.
Заранее спаибо :D
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 4 2005, 12:18
Сообщение #39


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



Ааааа... помогите! катастрофа! персы ломаются ArtMoney , что делать ??? подскажите кто нибудь, может скрипт како нибудь есть?? или ещё что нить вроде этого??? Я щас себе просто вены вскрою!! Это ужас помогите!!!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
mamuc
сообщение Apr 4 2005, 14:30
Сообщение #40


Лорд AxisTown'a
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Дварф
NWN: Маппинг



обьясни толком (подробно, по существу, а не эмоции), что случилось...а то непонятно в чем проблема
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
RiPPeR
сообщение Apr 4 2005, 15:15
Сообщение #41


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

Класс: Страж Тьмы
Характер: Chaotic Neutral
Раса: Дракон
NWN: Скриптинг [PW]



QUOTE
Подскажите пожалуйста, каким образом увеличить или уменьшить шанс вападания магичь вещей с монстров
Если это скрипт, то пожалуйста напишите образец и скажите кудаего поместить.
Заранее спаибо :D


Для этого нужна целая система скриптов, над которой скриптеры всех шардов парят себе мозги :). Простым скриптом тут не обойтись, поищи на nwvault, там наверняка есть подходящие тебе системы, но все же рекомендую сделать что-то своё, например как у нас на шарде.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 4 2005, 15:51
Сообщение #42


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



mamuc блин вобщем такое дело, создаёт один фоцик перса и ради эксперимента решает проверить не взламываются ли характеристики (Str, Dex, Con, Wis и т.д.) стандартной прогой типа ArtMoney, Omatic и т.п.? и они взломались! Я просто в шоке, бегает эдакий убийца все характеристики по 18! Как с этим бороться!?? У меня просто руки опускаются, хочется из окна выброситься, помогите пожалуйсто, ШАРД погибает! Пока до этого додумался только один и слава богу он оказался моим другом, но ведь это временно и скоро так будут делать все! Расскажите всё что знаете про такие фишки, есть ли скрипты против этого, или программы, или если нету то хотябы подскажите как сделать. Ди и ещё нюанс - опыт во время игры не взламывается, впрочем как и деньги, а характеристики взломать можно, но только при создании персоонажа.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
RiPPeR
сообщение Apr 4 2005, 16:20
Сообщение #43


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

Класс: Страж Тьмы
Характер: Chaotic Neutral
Раса: Дракон
NWN: Скриптинг [PW]



Хм... сколько пробовал ломать, правда было немного круче, мне сервер писал что типо слишком много у вас батенька характеристик и бутил. Попробуй поставить посвежее сервак. Или просто элементарную проверку скриптом может ли человек прокачать себе столько статистик и все.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 4 2005, 16:32
Сообщение #44


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



RiPPeR я бы с удовольствием поставил эту проверку скриптом о который ты говоришь, но скрипер из меня нулевой. Мой метод это банальный copy/paste с соблюдение авторских прав хозяина скрипта :D. При входе на сервак у меня кстати выдаётся сообщение чьи скрипты на нём используются.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Apr 4 2005, 16:48
Сообщение #45


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



Бань того, кто так делает. :drag:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 4 2005, 17:36
Сообщение #46


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan это непредставляется возможным, на серваке 22 аккаунта на некторых по !15-20! персов, всех проверять долго и муторно. И ещё ты чё то там говорил насчёт проги которая сейвы персов делает.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
baskan
сообщение Apr 4 2005, 18:10
Сообщение #47


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



Повесь на диалог непися например, скрипт:
Слот "Выполнить Действие"

CODE

void main()
{
   object oPC = GetPCSpeaker();

   SendMessageToPC(oPC, "Saving...");
   ExportSingleCharacter(oPC);
   SendMessageToPC(oPC, "Done.");
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 4 2005, 18:50
Сообщение #48


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan спасибо! Что значит "диалог непися"? что вообще значит это выражение: "непись". Я много раз встречал это выражение в этом форуме, но в туле такого термина не нашёл. Понятно когда говорят OnHeartBeat, OnPlayerDeath и т.п. но когда говорят непися, я просто сбиваюсь с толку... :xz: Это вообще где, куда заходить чтобы это найти?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
balrog
сообщение Apr 4 2005, 20:25
Сообщение #49


Великий хранитель фотоальбома
Иконки Групп

Класс: Оборотень
Характер: Chaotic Neutral
Раса: Тварь
МАСТЕР Кисти



НеПиСь - НПС
всцнцл свои 3 рубля всётаки :yahoo:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
KoYuKi
сообщение Apr 4 2005, 20:30
Сообщение #50


Level 6
**

Класс: Варвар
Характер: Chaotic Good
Раса: Полуорк



baskan тогда я что то вообще растирялся, елси непись это НПС, то тогда для чего на его диалог надо вешать это скрипт, точнее я не совсем понимаю каким образом он будет сохранять персоонажей?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

4 страниц V  < 1 2 3 4 >
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 2nd May 2025 - 17:35