StasMokos
Jan 30 2015, 22:39
Добрый день!
Перестал запускаться тест модуля при нажатии F9 в редакторе. Подозреваю, что дело в записи в реестре, ошибка по поводу которой выскакивает каждый раз при запуске редактора. Переустановка игры не помогла (устанавливался Diamond Edition от R.G. Catalyst).
Может быть, дело в винде (стоит убогая восьмерка)?
denis0k
Jan 30 2015, 23:30
У меня на восьмёрке (в год релиза, лицензия) была DE лицензионная, не от пиратов, всё работало без сообщений об ошибках в реестре. Собсно, нет смысла в пиратской нвн уже давно, носиди добавили с одним из патчей, а ключи любые валидные подходят.
Запускал тулсет от админа? Нвн требует админа.
StasMokos
Jan 31 2015, 03:03
Ага, запуск от админа помог, спасибо)
Еще вот вопрос...
Сильно ли плохо, если скрипт на вешанье отрицательных эффектов на входе в область работает правильно, но перед этим выдает ошибку по типу "слишком много инструкций"?
denis0k
Jan 31 2015, 07:28
Это значит, что в результате он вылетает, не доработав совсем до конца. Как правило, это либо слишком большой, либо (что чаще) бесконечный цикл.
StasMokos
Feb 1 2015, 20:29
Цикл вроде завершается (как мне кажется). Собственно, тут только открытие карты для игрока, запись в журнал, снятие вещей, дающих иммунитет, и наложение самих эффектов. Многовато проверок, да?
(сами функции)
Код
void CheckItem(int iTape, object oPC, object oItem)
{
itemproperty ipItem = GetFirstItemProperty(oItem);
while(GetIsItemPropertyValid(ipItem))
{
if (iTape ==1)
if (GetItemPropertyType(ipItem) == ITEM_PROPERTY_IMMUNITY_MISCELLANEOUS)
{
if(GetItemPropertySubType(ipItem) == IP_CONST_IMMUNITYMISC_LEVEL_ABIL_DRAIN)
AssignCommand(oPC, ActionUnequipItem(oItem));
}
if (iTape ==2)
if (GetItemPropertyType(ipItem) == IMMUNITY_TYPE_MOVEMENT_SPEED_DECREASE)
ipItem = GetNextItemProperty(oItem);
}
}
void HandleItems(int iTape, object oTarget)
{
object oItem;
oItem = GetItemInSlot(INVENTORY_SLOT_ARMS, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_BELT, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_BOOTS, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_CHEST, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_CLOAK, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_HEAD, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_LEFTRING, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_NECK, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oTarget);
CheckItem(iTape, oTarget, oItem);
oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oTarget);
CheckItem(iTape, oTarget, oItem);
}
void AdvanceDisease(object oEnter)
{
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_HEAD_NATURE), oEnter);
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_IMPLOSION), oEnter);
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_NATURE), oEnter);
ApplyEffectToObject(DURATION_TYPE_PERMANENT, SupernaturalEffect( EffectAbilityDecrease(ABILITY_WISDOM, 5)), oEnter);
ApplyEffectToObject(DURATION_TYPE_PERMANENT, SupernaturalEffect( EffectAbilityDecrease(ABILITY_INTELLIGENCE, 5)), oEnter);
int Str_Ch;
int Dex_Ch;
int Cha_Ch;
int Con_Ch;
switch (Random(3))
{
case 0: Str_Ch = 0; break;
case 1: Str_Ch = 3; break;
case 2: Str_Ch = 5; break;
}
switch (Random(3))
{
case 0: Dex_Ch = 0; break;
case 1: Dex_Ch = 3; break;
case 2: Dex_Ch = 5; break;
}
switch (Random(3))
{
case 0: Cha_Ch = 0; break;
case 1: Cha_Ch = 3; break;
case 2: Cha_Ch = 5; break;
}
switch (Random(3))
{
case 0: Con_Ch = 0; break;
case 1: Con_Ch = 3; break;
case 2: Con_Ch = 5; break;
}
ApplyEffectToObject(DURATION_TYPE_PERMANENT, SupernaturalEffect( EffectAbilityDecrease(ABILITY_STRENGTH, Str_Ch)), oEnter);
ApplyEffectToObject(DURATION_TYPE_PERMANENT, SupernaturalEffect( EffectAbilityDecrease(ABILITY_DEXTERITY, Dex_Ch)), oEnter);
ApplyEffectToObject(DURATION_TYPE_PERMANENT, SupernaturalEffect( EffectAbilityDecrease(ABILITY_CONSTITUTION, Con_Ch)), oEnter);
ApplyEffectToObject(DURATION_TYPE_PERMANENT, SupernaturalEffect( EffectAbilityDecrease(ABILITY_CHARISMA, Cha_Ch)), oEnter);
SetLocalInt (oEnter, "Str_Change", Str_Ch);
SetLocalInt (oEnter, "Dex_Change", Dex_Ch);
SetLocalInt (oEnter, "Con_Change", Con_Ch);
SetLocalInt (oEnter, "Cha_Change", Cha_Ch);
SetLocalInt (oEnter, "Wis_Change", 5);
SetLocalInt (oEnter, "Int_Change", 5);
}
denis0k
Feb 1 2015, 20:54
CODE
void CheckItem(int iTape, object oPC, object oItem)
{
itemproperty ipItem = GetFirstItemProperty(oItem);
while(GetIsItemPropertyValid(ipItem))
{
if (iTape ==1)
if (GetItemPropertyType(ipItem) == ITEM_PROPERTY_IMMUNITY_MISCELLANEOUS)
{
if(GetItemPropertySubType(ipItem) == IP_CONST_IMMUNITYMISC_LEVEL_ABIL_DRAIN)
AssignCommand(oPC, ActionUnequipItem(oItem));
}
if (iTape ==2)
if (GetItemPropertyType(ipItem) == IMMUNITY_TYPE_MOVEMENT_SPEED_DECREASE)
ipItem = GetNextItemProperty(oItem);
}
}
Я конечно устал и очень хочу спать, но налицо классика программирования

GetNextItemProperty под условием, не выполняется условие - цикл становится бесконечным. Биоварям стоило такую проверку прямо в компилятор загнать.
StasMokos
Feb 1 2015, 22:33
Прошу прощения, что трачу ваше время на такие глупости. Действительно, просто не заметила, что эта строка под условие попала.
Cпасибо!)
denis0k
Feb 2 2015, 07:28
Таки для этого форум и существует
NumberOne
Feb 22 2015, 14:19
Приветствую всех. Сразу к делу:
Можно ли как-то запретить выгонять спутника из отряда кнопкой из радиального меню? Если нельзя, то как можно запустить определенный скрипт, когда игрок все же выкинул спутника через радиальное меню?
Цитата(NumberOne @ Feb 22 2015, 15:19)

Можно ли как-то запретить выгонять спутника из отряда кнопкой из радиального меню? Если нельзя, то как можно запустить определенный скрипт, когда игрок все же выкинул спутника через радиальное меню?
Никак, насколько мне известно: нативных событий нет, быстрый поиск по nwnx результатов не дал. Можно разве что проверять на хб, состоит ли непись в группе с игроком, и запускать необходимые действия. Очевидно, скорее всего с задержкой в несколько секунд.
NumberOne
Feb 22 2015, 20:25
Благодарю за ответ.
Ребят... начал баловаться с tlk файлами. Засунул свой тлк в папку tlk и в модуле поставил индивидуальный тлк файл. Но почему-то когда я играл в свой модуль перевод оставался прежним. Как это вообще работает? И для чего тогда, если при распаковке и загрузке в игре модуля перевод не меняется, а должен ли вообще?
В папке оверрайд любой ресурс перебъет модульные хаки и ресурсы нвн в целом. Если в овверайде лежит тлк, то остальные уже не важно где лежат...
NumberOne
Feb 22 2015, 20:55
А если в оверрайде нет тлк? Что может быть?
denis0k
Feb 23 2015, 08:04
Я всегда думал, что тлк в овере и не работает

Это не модульный ресурс, смысл ему там работать. Для перевода всей игры меняется сам dialog.tlk в корне. А тот тлк, что в папке тлк - это чисто для модуля (добавочный), и он начинается не с первой строки, в гайдах можно найти это число, там кажется больше миллиона.
NumberOne
Feb 23 2015, 09:30
Цитата(denis0k @ Feb 23 2015, 09:04)

Для перевода всей игры меняется сам dialog.tlk в корне. А тот тлк, что в папке тлк - это чисто для модуля (добавочный), и он начинается не с первой строки, в гайдах можно найти это число, там кажется больше миллиона.
Понятно, я не так слегка понял. Зря размечтался.
NumberOne
Jun 27 2015, 19:39
Подскажет кто, как прекратить в области дождь? Т.е свести погодный процент в свойствах области к нулю скриптом в игре?
Цитата(NumberOne @ Jun 27 2015, 20:39)

Подскажет кто, как прекратить в области дождь? Т.е свести погодный процент в свойствах области к нулю скриптом в игре?
SetWeather()
Heather
Jul 12 2015, 01:38
Доброго всем времени суток. Подскажите, можно ли командой
Neverwinter Script
SetCreatureAppearanceType
поменять внешний вид лошади? Не нашла ее в списке типов внешности в редакторе скриптов. Хочется, чтобы через диалог можно было, например, снять седло или надеть.
Flaristan
Jul 13 2015, 03:41
Цитата(NumberOne @ Feb 22 2015, 13:19)

Приветствую всех. Сразу к делу:
Можно ли как-то запретить выгонять спутника из отряда кнопкой из радиального меню? Если нельзя, то как можно запустить определенный скрипт, когда игрок все же выкинул спутника через радиальное меню?
Все команды спутников содержатся в отдельном стандартном НВН-ском скрипте "x0_inc_henai", если ты напишешь кастомный скрипт для своего спутника (или "модернизируешь" стандартный и сохранишь в качестве своего кастомного скрипта) в триггер OnConversation и используешь этот ресурс инклюдом, то сможешь задать спутникам такие параметры, какие сможешь. В том числе запретить выгонять их из группы.
Кроме того, если какое-либо существо было добавлено к игроку в качестве хенчмена командой AddHenchman, и у этого существа отсутствует адекватный скрипт по управлению хенчменом в триггере OnConversation - его по умолчанию вообще не возможно выгнать из отряда (т.к. все команды его радиального меню без такого скрипта просто не будут работать).
Цитата(Heather @ Jul 12 2015, 00:38)

Подскажите, можно ли командой
Neverwinter Script
SetCreatureAppearanceType
поменять внешний вид лошади? Не нашла ее в списке типов внешности в редакторе скриптов. Хочется, чтобы через диалог можно было, например, снять седло или надеть.
Можно. Вся трудность состоит в том, что в окне свойств создания аппеаренсы обозначены словесным описанием и негде посмотреть их таги (если они вообще есть), однако все они имеют
Neverwinter Script
int nAppearanceType
т.е. свой номер.
Так например:
Neverwinter Script
SetCreatureAppearanceType(OBJECT_SELF, 522);
= "Лошадь пегая".
Neverwinter Script
SetCreatureAppearanceType(OBJECT_SELF, 523);
= "Лошадь пегая, оседланная".
Neverwinter Script
SetCreatureAppearanceType(OBJECT_SELF, 524);
= "Лошадь пегая, оседланная, навьюченная".
Тоже делал у себя в модуле такую фичу с поклажей - экспериментальным путем нашел эти аппеаренсы, дальше не искал. Можешь поэкспериментировать с цифрами и найти вариации для других мастей (сделай модуль с рычагом который меняет стоящему рядом неписю апеаренс, произнося его номер вслух).
denis0k
Jul 13 2015, 12:18
Очевидно, эти номера в appearance.2da.
Heather
Jul 14 2015, 12:06
denis0k, спасибо! я сама этот 2.da файл ковыряла, но не догадалась вводить цифры, пыталась текст вбивать. Со сменой внешнего вида будет куда удобнее, нежели убирать одну модель и телепортировать другую))) Пасиба еще раз)
NumberOne
Aug 2 2015, 19:17
Вот сижу я дом и сижу, да тут как приспичит мне что-нибудь скачать для баловства в тулсете, тайлы например, захожу и что не ссылка - то непонятная страница на ваулте, где окромя ереси и нет ничего. Это что, получается, все потеряно, капут? Как быть, столько тайлов интересных качал с этого форума, а сейчас ссылки в бездну ведут...
denis0k
Aug 3 2015, 21:54
Переехал - это сильно сказано. Атари (или игн, кто там рулил хз) не парились с сохранением контента и просто закрыли сайт. То, что сейчас есть, слили и выложили энтузиасты, там имхо лишь малая доля.
Melisse
Aug 12 2015, 13:18
Да, мало того они я так понимаю даже не предупредили о закрытии. Просто в один прекрасный день ваулт перестал работать.
Радует то что большая часть качественных ресурсов сохранилась. Остальное - потеряно навсегда или лежит у кого-то мертвым грузом.
Не могу понять кому потребовалось 5гб сносить, лежали бы уж...
denis0k
Aug 12 2015, 17:16
Предупреждение с полгода минимум висело, а то и год. Просто всем пофиг на самом деле

И я думаю там больше юридический вопрос, чем экономический.
NumberOne
Aug 12 2015, 18:31
Обращаюсь ко всем жителям города: если у кого-то есть дополнение к стандартному биоваревскому тайлсету леса в виде возможности строить замки, как в тайлсете города, просьба мне написать.
P.S Перерыл ваулт, не нашел...
denis0k
Aug 12 2015, 19:16
Лес + город ни разу не видел, хотя тоже перерыл много чего на оригинальном волте. Rural+city было несколько версий, с лесом как-то обошло
NumberOne
Aug 12 2015, 20:04
Там не совсем лес + город. Добавляется лишь один замок. Ничего городского больше нет. Так же есть возможность строить эти замки в сельской местности, rural.
Даже ссылку нашел, откуда качал когда-то:
http://www.city-of-masters.ru/forums/index...ost&p=31055Четвертый пост лекса, третья строчка "Замок среди дикой природы"...
Эх...
Heather
Aug 12 2015, 22:29
NumberOne, а что-то наподобие не подойдет? мне этот тайлсет очень нравится
Medieval
NumberOne
Aug 13 2015, 15:42
Слишком хорош. В моем случае нужна лишь стандартная моделька биоваревских замков city только для forest...
А еще слегка баговат этот тайлсет. А еще не убираются объекты при повороте камеры, а меня это жутко раздражает.
Flaristan
Aug 14 2015, 01:43
А чем тебя не устраивают стандартные тайлы 1.69 для "наружной части замка": там есть и деревья типа лес и собсно замок?
NumberOne
Aug 14 2015, 06:40
Всем, абсолютно. Во-первых, не скрываются элементы, когда поворачивается камера, во-вторых, слегка тормозит, в третьих, мне нужен биоваревский лес, с деревьями в высоту с несколькиэтажным домом (суть модуля такая).
Flaristan
Aug 15 2015, 03:27
Большие деревья есть отдельными плейсеблами в 1.69 палитре, в разделе природных объектов - в принципе можно нарисовать красивый лес или его кусок вокруг замка самостоятельно. А локацию разбить на несколько, если это принципиально (сам замок с рядом стоящими "большими деревьями" + локация(и) леса ее предворяющие/окружающие).
Почему-то большинство мододелов гонится за "красотой" и "оригинальностью" в своих модулях в виде хаков, что ИМХО для такой игрушки, как НВН1 просто бесполезно. Она морально устарела в плане графики еще лет 5 назад и это никакими хаками не исправить. Зато у игры есть куча других преимуществ упор на которые легко можно сделать вместо "красивой" и "оригинальной" графики, придя к подобным вышеописанному компромиссам.

PS: Я б РПГ-игры тут сравнил с хорошей книжкой: какие бы красивые иллюстрации к ней ты не делал - суть книги все равно останется в ее текстовом содержании.
denis0k
Aug 15 2015, 07:29
Ну конкретно ты можешь играть хоть в текстовые квесты
Flaristan
Aug 16 2015, 05:52
Конкретно я уж как-нибудь сам решу во что я могу играть.

А РПГ из аналогии с книгой - ролевая игра, на первый план в ней должна выходить не графика а ролевая составляющая.
denis0k
Aug 16 2015, 09:22
Если бы большинству не нужна была графика, мы бы все играли в текстовые квесты. Однако, это не так. Если бы у биоварей были попрямее руки, и кричи не застревали на сложных тайлах, тайлсеты были бы ещё круче.
NumberOne
Aug 16 2015, 10:49
Цитата(Flaristan @ Aug 15 2015, 04:27)

Почему-то большинство мододелов гонится за "красотой" и "оригинальностью" в своих модулях в виде хаков, что ИМХО для такой игрушки, как НВН1 просто бесполезно. Она морально устарела в плане графики еще лет 5 назад и это никакими хаками не исправить. Зато у игры есть куча других преимуществ упор на которые легко можно сделать вместо "красивой" и "оригинальной" графики, придя к подобным вышеописанному компромиссам.
Ты совершенно прав, именно поэтому я хочу использовать СТАНДАРТНЫЙ биоваревский замок, только в лесном массиве. А насчет деревьея я скажу все тоже - эти деревья неимоверно тормозят мой комп и все так же мешают обзору камеры, что очень печалит, ибо они довольно хорошо вписываются.
Ах да, тот хак весил по-моему не более 2 мегабайт.
Flaristan
Aug 17 2015, 00:43
Цитата(denis0k @ Aug 16 2015, 08:22)

Если бы большинству нужна была графика, мы бы все давно играли только в новые игры, а не НВН. Однако, это не так.
fxd 
С тайлами вообще никаких проблем не вижу - научите АИ ваших мобов выбираться из любых текстур и все будет ок. Если не нравится нагрузка на сервер от скриптов - просто поставьте заглушку дающую застрявшим мобам волшебного пенделя (не так красиво, зато компромисс).
Вообще продвинутый уровень модинга в НВН позволяет не с нуля профессионально заняться геймдевом и тупо создать свою команду разработчиков и игру, если уж вам как то творение биоварей не нравится. Никто ж не держит.
Графика это конечно хорошо, но я повторюсь - она не главное. И это кстати доказывает и история, потому как видеоигры в жанре адвенчур (из которых появился жанр РПГ) и начинали как раз в виде текстовых игр, а не аркад. РПГ должна давать игроку нечто большее, чем просто мир с псевдофизическими законами и красивой графикой, если делать это не получается - лучше заняться творчеством в жанре экшена. Там это как раз главное.
Цитата(NumberOne @ Aug 16 2015, 09:49)

Ты совершенно прав, именно поэтому я хочу использовать СТАНДАРТНЫЙ биоваревский замок, только в лесном массиве. А насчет деревьея я скажу все тоже - эти деревья неимоверно тормозят мой комп и все так же мешают обзору камеры, что очень печалит, ибо они довольно хорошо вписываются.
Ах да, тот хак весил по-моему не более 2 мегабайт.
Без понятия где достать такой хак (всегда предпочитал обходиться в принципе без них).
Из 1.69 деревьев там вроде только ивы тормознутые, но их можно починить, если потыкать в свойствх плейсеблов галочку на "сюжет" вместо "статика" (почему-то у всех новых 1.69 моделек плейсеблов слетает галочка "статик" в свойствах даже если ее выставлять вручную). Если тормозят остальные деревья - могу только посоветовать купить новый комп или скачать менее глючный НВН.
Обзор камеры - это да, но можно приспособиться понижая в игре угол камеры ближе к земле и приближая ее к персонажу (у меня в модуле есть такой лес - так даже более атмосферно бегать в нем, переключаясь больше на 1 лицо от 3).
На счет замка могу только еще предложить поизвращаться в таком духе:..

NumberOne
Aug 17 2015, 07:00
Неплохие скрины. У автора хорошо голова работает в плане мапинга. Главное не переборщить, а то чрезмерное использование таких объектов вызывает ощущение костыля.
Вообще я подумываю уже самому создать такой хак. Буду изучать как создавать свои тайлсеты - там надо-то, совсем ничего: перенести модельку замка в лес и дать ей текстуры подножья соответствующие.
Эм... сразу вопрос появился, чему открыть mdl и itp файлы? Блонкнот их не берет, либо берет настолько криво, что сделать что-то не возможно.
Flaristan
Aug 17 2015, 07:30
Это я тебе грубо и приблизительно накидал экстерьер возможного замка в лесу, как это могло бы выглядеть без помощи всяких хаков.

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

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

Использую его в своем модуле постоянно так что, играя в него, у вас не будет постоянно возникать ощущение избитости встреченных карт (чего только стоит к примеру лес овер 8х8 всего из двух видов деревьев посаженный так, чтоб не вызывать ощущения 8-битной игры или стереокартинки - все деревья тщательно рассажены с разным вектором и на разную высоту

). Чего и всем советую (включать воображение и творческое мышление, а не хаки).
PS: Вот к примеру несколько скринов моих локаций сделанных не на скорую руку...







denis0k
Aug 17 2015, 07:50
Цитата
Если бы большинству нужна была графика, мы бы все давно играли только в новые игры, а не НВН.
Открой глаза, все и играют в новые игры

Тут пишет три калеки, из них полторы - про ведьмаки и драгон эйджи

Цитата
С тайлами вообще никаких проблем не вижу - научите АИ ваших мобов выбираться из любых текстур и все будет ок.
1) Естественно ты не видишь, у тебя же нет хаков

2) Быстро и в бою это нереально, застревание можно понять только со временем.
3) Игроки в них тоже застревают. Иногда создаваемый лут создаётся под землёй. Это мало играбельно в принципе. На волте завались тайлов по сотне мб, но их оценивали походу по скриншотам, т.к. проблемы у всех одни и те же - поиск пути и застревания. Даже на стандартных тайлах нвн тупит и при обилии плейсов ведёт чара совсем не по короткому пути, именно поэтому никто массово плейсами "в продакшене" и не маппит, оно красиво конечно, но создаёт больше проблем, чем решает. Особенно, если модуль не сингл.
Цитата
Эм... сразу вопрос появился, чему открыть mdl и itp файлы? Блонкнот их не берет, либо берет настолько криво, что сделать что-то не возможно.
Все редакторы когда-то были на волте
NumberOne
Aug 17 2015, 07:52
Цитата(Flaristan @ Aug 17 2015, 08:30)

Все редакторы когда-то были на волте
Зшбс, блин...
Flaristan
Aug 17 2015, 08:12
Ну прям уж, и ты и я периодически играем/модим в НВН1, и NumberOne вон походу тоже, так что не надо прям так сгущать краски.

Еслиб НВН не была нам интересна, мы б сюда не заходили даже.
То, что у меня нет хаков, совершенно не значит, что я никогда не испытывал проблем с застреванием в тайлах/текстурах.
Вот к примеру этот НПС на скрине, в соответствии с установками своего АИ и задумке, должен уметь ПСЖ выйти из этого заставленного плейсеблами закутка и полечить соседнего НПС-стража, который в соответствии с установками своего АИ должен бродить туда сюда неподалеку и выслеживать мнимых врагов.

Причем после того, как страж полечиться, НПС должен вернуться на свое место. Задача практически не выполнимая путем следования из точки А в точку Б из-за сложности рельефа + обстоятельства требовали того, чтоб эти НПС могли проделывать аналогичную функцию в произвольной местности. Пришлось писать цикл "вездехода" - написал, работает успешно.

Вышеозвученная задача для того НПС и подразумевает действия в бою (страж бьет врагов, ремонтники бегают за ним и лечат себя и стража). "Вездеход" у крыс к примеру написан в еще более реактивной формации - они способны осиливать сложные лабиринты в текстурах в течении 1-3 раундов (все без всяких "рокетджампов" есно).
То что игроки застревают - этого везде хватает с хаками или без... Ну тут уж ничего не поделать, да и прошаренные игроки знают все способы как можно вылезти.
retriever
Jun 18 2016, 13:59
У меня такой вопрос.
Есть модуль (РП). В модуле ДОФИГА локаций (70 с чем-то), многие из них заставлены плейсеблами очень так конкретно.
Используются хакпаки d20modern, CEP 2.4 + несколько моих (там, в основном, музыка и патчи для предотвращения перекрытия ресурсов из существующих хакпаков)
Решаю импортировать в него еще 4 локации из другого модуля (по хакпакам там все более-менее совместимо, хотя создавались эти локации в версии CEP 2.3 или 2.2, кажется)
Так вот, сам по себе этот другой модуль запускается без проблем.
Если я выкидываю из текущего модуля все локации вообще и вставляю только эти 4 локации, все тоже работает.
А вот если я добавляю локации в существующий модуль, то при заходе в игру крашится сервер.
Причем крашится, даже если я вставляю только одну локацию из 4-х и выкидываю после импорта из нее вообще все, оставляя только тайлы.
Есть ли у кого-то опыт лечения подобных вещей? Может, есть какой-то патч или утилиты, позволяющие отыскать причину?
denis0k
Jun 18 2016, 22:42
Ну 70 - это далеко не дофига

А как импортируешь? Через меню тулсета, собирая erf с кучей попутного дерьма?
Я не спец по локациям, но предложил бы два варианта:
1) Толстый. Перерисовать заново с нуля самому, их всего 4.
2) Тонкий. Создать в модуле локации с аналогичными ресрефами, а потом напрямую подменить файлы в temp0. В ситуации без конфликта хаков я так делал постоянно, импорт-экспорт в нвн изврат.
Melisse
Jun 18 2016, 23:00
Цитата
У меня такой вопрос.
Есть модуль (РП). В модуле ДОФИГА локаций (70 с чем-то), многие из них заставлены плейсеблами очень так конкретно.
Используются хакпаки d20modern, CEP 2.4 + несколько моих (там, в основном, музыка и патчи для предотвращения перекрытия ресурсов из существующих хакпаков)
Решаю импортировать в него еще 4 локации из другого модуля (по хакпакам там все более-менее совместимо, хотя создавались эти локации в версии CEP 2.3 или 2.2, кажется)
Так вот, сам по себе этот другой модуль запускается без проблем.
Если я выкидываю из текущего модуля все локации вообще и вставляю только эти 4 локации, все тоже работает.
А вот если я добавляю локации в существующий модуль, то при заходе в игру крашится сервер.
Причем крашится, даже если я вставляю только одну локацию из 4-х и выкидываю после импорта из нее вообще все, оставляя только тайлы.
Есть ли у кого-то опыт лечения подобных вещей? Может, есть какой-то патч или утилиты, позволяющие отыскать причину?
1.
Это, возможно, проблема совмещения версий СЕР или битые локации.
Если проблема в СЕР, то нужно методом тыка изучить какие тайлы/плэйсы/существа крашат
Если проблема в битых файлах локации тут только перерисовать заново
2.
Если как выразился denis0k ты не правильно экспортировал - то могло экспортнуться куча всякого овна в .erf в виде левых скриптов, структур gff и подобного... В данном случае сервер будет крашиться, без сомнения
Iceberg
Oct 28 2016, 19:26
Товарищи. Есть такая идея, реализации в своем модуле системы фракций по типу дарк соулса. С присоединением к определенным фракциям, репы у них и различным плюшкам за выполнение различных квестов/действий. Как примерно это можно реализовать и можно ли?
Melisse
Oct 31 2016, 15:26
Сделай существ с фракциями и уникальными тэгами, поставь в закрытой локации.
После этого через цикл пробегаешь по нужным фракциям и сдвигаешь репу относительно игрока через AjustReputation ... что то такое -я уже не помню как называется функция и все.
Добрый вечер!!! нашел один скрипт для респавна мобов как в ММОРПГ MMORPG Style Respawner
Код
#include "NW_I0_GENERIC"
void VoidCreateObject(string sTemplate, location lLoc, int bUseAppearAnimation=TRUE);
void main()
{
float fSeconds = 600.0; //monster spawn time
string sTemplate = GetTag(OBJECT_SELF);
string sWayPointPrefix = "WP_";
string sCurrentWaypoint = sWayPointPrefix + sTemplate;
location lLoca = GetLocation(GetObjectByTag (sCurrentWaypoint));
if(GetSpawnInCondition(NW_FLAG_DEATH_EVENT))
{
SignalEvent(OBJECT_SELF, EventUserDefined(1007));
}
{
SetIsDestroyable(TRUE);
AssignCommand(GetObjectByTag("SpawnWalk"), DelayCommand(fSeconds, VoidCreateObject(sTemplate,lLoca, TRUE)));
}
}
void VoidCreateObject(string sTemplate, location lLoca, int bUseAppearAnimation=TRUE)
{
CreateObject(OBJECT_TYPE_CREATURE, sTemplate,lLoca,TRUE);
}
//****************
Скрипт вставляется в OnDeath, если в краце то создается моб с тегом и вайпоинт тоже с тегом тем же.Когда моб умерает то должен сработать скрипт.Но почему то не срабатывает.Помогите знатоки что не так
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.