Вверх Вниз


  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: Marmura, базилисса  
Форум » Игры-гиганты моддинга » Серия игр «Neverwinter Nights» » Neverwinter Nights 2 Electron Toolset (Документация, руководства, плагины и другие полезные вещи)
Neverwinter Nights 2 Electron Toolset
Lavallet  Offline Сообщение №1 написано: 16 Июня 2017 в 04:23



434


В качестве игрового движка Neverwinter Nights 2 использует Electron Engine, который представляет собой улучшенную версию движка Aurora Engine, разработанного канадской компанией BioWare и впервые использованного в Neverwinter Nights (2002), а затем и в Star Wars: Knights of the Old Republic (2003). Как и в случае с оригинальной игрой, вместе с сиквелом в комплекте поставляется мощный и простой в использовании игровой редактор, позволяющий изменять многие аспекты базовой игры и предоставляющий игрокам широкие возможности по созданию своих собственных приключений (известных как «модули»). Этот редактор (далее «тулсет»), являясь прямым развитием своего предшественника в лице Aurora Toolset, несмотря на то, что в ходе работы над созданием сиквела был полностью переписан с нуля на C#, сохранил с ним полную преемственность. Большинство привычных уже по Aurora вещей осталось неизменно. В их числе, например, использование (с небольшими улучшениями) C-подобного скриптового языка NWScript, который можно встретить во многих других основанных на Aurora творениях, таких как Star Wars: Knights of the Old Republic II, Jade Empire, The Witcher (в связке с Lua), Dragon Age: Origins и Dragon Age II. Кроме того, общая логика создания модулей также не претерпела существенных изменений по сравнению с первой частью. Это и многое другое позволяет с успехом переносить в той или иной мере накопленные в сети опыт и знания для первой части на процесс создания модов для второй.


Полезные ссылки



Полезные инструменты



Руководства



Плагины для тулсета

(надстройки, значительно расширяющие его функционал)



Не нашли ответа на свой вопрос выше? Задайте его в этой теме или на англоязычных форумах The Neverwinter Vault / Nexus Mods!

NokaS  Offline Сообщение №31 написано: 19 Июня 2018 в 21:05


Странник


11
Lavallet, Фракция была Defender. Я её скопировал и по своему назвал. Только со спутниками проблема. Всё в порядке в остальном. Только спутники не могут атаковать и всё.

Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №32 написано: 19 Июня 2018 в 21:08



434
NokaS, попробуйте вернуть Defender (через выпадающее меню) и проверить результат.

NokaS  Offline Сообщение №33 написано: 19 Июня 2018 в 21:25 | Отредактировано: NokaS - Вторник, 19 Июня 2018, 21:26


Странник


11
Lavallet, не работает. Вот мои фракции и диалог для присоединения спутника. Я туда вписываю TAG нпц.
https://yadi.sk/i/l8fHFyLM3Y8bPP
https://yadi.sk/i/6TY6ZsUF3Y8bY9

Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №34 написано: 19 Июня 2018 в 21:37



434
NokaS, проверьте свойства вашей кампании (Plugins -> Campaign Editor). Установлено ли переключателю UsesPersonalReputation значение False?

NokaS  Offline Сообщение №35 написано: 21 Июня 2018 в 21:47 | Отредактировано: NokaS - Четверг, 21 Июня 2018, 21:48


Странник


11
Lavallet,заработало good  . Спасибо за помошь! Я думал эта хрень должна работать так. Мол у каждого спутника личная репутация по отношению к глав.герою. А оно вон как. Странная опция.

Добавлено (21 Июня 2018, 21:47)
---------------------------------------------
Я скачал мод. https://neverwintervault.org/project....es-nwn2
В нём есть люки на земле. Когда я их пытаюсь поместить в сцену модели нет. Все файлы кинул в Ovveride.
Вот оно есть в редакторе. Блюпринты и свойства.
https://yadi.sk/i/A-nWWtyQ3YDUJq
Можно это как то исправить?

Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №36 написано: 21 Июня 2018 в 22:05



434
NokaS, возможно, к вашему модулю подключен hak-пак, внутри которого лежит файл placeables.2da и/или doortypes.2da. Дело в том, что у hak-паков приоритет чтения выше по сравнению с файлами из папки override, поэтому игра у вас не видит нужный placeables.2da/doortypes.2da и те новые blueprint'ы ссылаются на несуществующие поля.

NokaS  Offline Сообщение №37 написано: 21 Июня 2018 в 22:16


Странник


11
Lavallet,Точно. Совсем забыл про Hak файлы. :) . Отсоединил их от модуля и заработало. Видимо надо склеить 2da файлы в один и тогда конфликты исчезнут. Буду пробовать. А то без них ни как. Строю корабель и там надо перемешатся по палубам черз двери и люки. В стандартных чертежах я так и не нашол "люков на земле". Спасибо за помошь! 
P.S. Подскажи чем лучше редактировать файлы .UTP и .UTD? mellow

Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №38 написано: 22 Июня 2018 в 02:19



434
Цитата NokaS ()
Подскажи чем лучше редактировать файлы .UTP и .UTD?
Как и со всеми блупринтами – Тулсетом. Если что-то по мелочи требуется изменить, то GFFEditor'ом или TLKEdit'ом.

NokaS  Offline Сообщение №39 написано: 25 Июня 2018 в 19:13


Странник


11
Я увеличил количество ячеек в инвентаре до 6 полос. Изначально было 4. Теперь если поместить итем на 5 или 6 полосу он почему то дублируется во второй вкладке инвенторя. На скринах это лампа отображает. Почему происходит дубликат? Такое же дублирование происходит когда я увеличил количество ячеек на хот-барах. mellow   
Скрин 1
Скрин 2

Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №40 написано: 25 Июня 2018 в 19:28



434
NokaS, суммарное количество ячеек инвентаря нельзя увеличить, оно зашито в движок и равно 128. Почему происходит дубликат – не скажу так, нужно смотреть ваш XML-файл и самому проводить тесты в игре, потому что работа с UI – это работа с «чёрным ящиком».

NokaS  Offline Сообщение №41 написано: 25 Июня 2018 в 20:35


Странник


11
Lavallet, посмотрите на файл. Может подскажите что там не так.inventoryscreen.xml

Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №42 написано: 25 Июня 2018 в 21:15



434
NokaS,
1. Как было сказано выше, максимальное число ячеек - 128. Определитесь с тем, сколько у вас будет закладок, и поделите между ними поровну это количество. Очевидно, что с выбранным сейчас вами вариантом ничего не выйдет: в каждой закладке у вас получается по 48 ячеек. 128 не делится на 48 без остатка.

2. Чтобы ячейки не дублировались, необходимо установить правильные настройки для каждой из кнопок, отвечающих за закладки инвентаря. Все ячейки инвентаря проиндексированы от 0 до 127. В вашем примере в первой закладке лежат ячейки с индексами от 0 до 47, во второй – с индексами от 48 до 95, а в третьей – с индексами от 96 до 127 (оставшиеся 16 отображаемых ячеек будут нерабочие). Четвертая закладка будет полностью нефункциональна.

Кнопка, отвечающая за закладку инвентаря, имеет следующий вид:
Код
<UIButton name="ShowPage3" x=146 y=0 width=73 height=25 buttontype="radio" groupid=1 groupmemberid=3
   OnSelected=UIButton_Input_SetRepositoryIndex("32") MouseDownSFX="gui_bagopen"
   OnMouseDropReceived=UIButton_OnDropReceived_AddToRepository(32,"IG") >
   <UIFrame state="up"   fill="b_bag_normal.tga" />
   <UIFrame state="down"  fill="b_bag_pressed.tga" />
   <UIFrame state="focused"    fill="b_bag_hover.tga" />
   <UIFrame state="hilited"    fill="b_bag_hover.tga" />
   <UIFrame state="hifocus"    fill="b_bag_pressed.tga" />
   <UIFrame state="disabled"    fill="b_bag_normal.tga" />
  </UIButton>

Вам необходимо отредактировать значения аргументов у функций UIButton_Input_SetRepositoryIndex() и UIButton_OnDropReceived_AddToRepository() для каждой из таких кнопок. В примере выше там стоит 32, но в общем случае – это индекс начальной ячейки в этой закладке. В вашем примере для самой первой закладки он равен 0, для второй – 48, а для третьей – 96.

NokaS  Offline Сообщение №43 написано: 02 Июля 2018 в 18:30 | Отредактировано: NokaS - Понедельник, 02 Июля 2018, 18:29


Странник


11
Lavallet, отлично. Буду разбиратся. Надеюсь получится. Может и для хотбаров такая же система. Посмотрим. Спасибо за помошь good thanks

Добавлено (02 Июля 2018, 18:24)
---------------------------------------------
инвентарь :)

Добавлено (02 Июля 2018, 18:30)
---------------------------------------------
Подскажите что означают цифры на картинках? Не понятно что писать для изменения иконок.
скрин 1
скрин 2
Сам файл


Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №44 написано: 02 Июля 2018 в 19:51



434
NokaS, вы хотите увеличить максимальное число отображаемых иконок для эффектов?

Хорошо, попробую объяснить на конкретном примере. Предположим, вы захотели увеличить число ячеек с 12 до 18. Числа на картинках означают индексы ячеек в таблице иконок с эффектами. Ячейки этой таблицы проиндексированы от 0 до 17 в рассматриваемом примере. Самая неочевидная часть в этой задаче – понять теперь, как именно происходит нумерация ячеек. Для этого нужно внимательно посмотреть на  немодифицированную версию файла и сопоставить это с тем, что мы видим в игре. 

Так происходит заполнение сетки эффектов, номера ниже – это номера кнопок EFFECT_BUTTON_*.

10 | 7 | 4 | 1
11 | 8 | 5 | 2
12 | 9 | 6 | 3

А вот так расположены отвечающие этим кнопкам индексы в xml-файле:

11 | 10 | 9 | 8
  7 | 6  | 5 | 4
  3 | 2  | 1 | 0

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

Думаю, дальше должно быть ясно, какие индексы нужно прописать в вашем случае, если мы возьмем сетку 3x6.

Сетка заполнения эффектов:

16 | 13 | 10 | 7 | 4 | 1
17 | 14 | 11 | 8 | 5 | 2
18 | 15 | 12 | 9 | 6 | 3

Сетка индексов:

17 | 16 | 15 | 14 | 13 | 12
11 | 10 |  9  | 8   |  7  | 6
5   |  4  |  3  | 2   |  1  | 0

Т.е. для первой кнопки в вашем случае индекс будет 12, для второй – 6, для третьей – 0, для четвертой - 13, и т.д.

Не уверен, что максимальное число иконок вообще можно увеличить, но можете попробовать.

NokaS  Offline Сообщение №45 написано: 05 Июля 2018 в 13:32 | Отредактировано: NokaS - Понедельник, 02 Июля 2018, 22:33


Странник


11
Lavallet, от тута вроде пишут что максимум ячеек 256. Сцылко
Вот про эту таблицу самое не очевидное на первый взгляд. O_O
Вот ещё подсказали. Сцылко 2
Теперь всё стало ясно. Спасибо огромное! ok

Добавлено (05 Июля 2018, 13:32)
---------------------------------------------
Как сделать что бы работала скрытая часть окна? Иконки баффов там скрываются.В невидимой области. Все числа уже изменял в файле partybar.xml Ни чего не помогает.
1
2
mellow


Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Lavallet  Offline Сообщение №46 написано: 05 Июля 2018 в 17:26



434
NokaS, я уже ответил вам на NeverwinterVault, но напишу и здесь ещё. Попробуйте отрегулировать ширину элементов UIScene и UIListBox.

NokaS  Offline Сообщение №47 написано: 05 Июля 2018 в 21:28


Странник


11
Lavallet,увы но безрезультатно. Я уже менял все значения width-ширина. И координаты по X. И иконки баффов сдвигал. Но окно так и не желает расширится в левую сторону. Даже ни знаю что и делать. Наверно там нужны допольнительные строки кода. smile2 Такой облом. непреодолимый затык.

Каким бы умным не казался человек,
Каким бы славным не давал он жизнь идеям,
Но все же в полном одиночестве вовек
Он был и будет шалуном и прохиндеем!
Ауранг  Online Сообщение №48 написано: 10 Августа 2018 в 11:56



816
Не знаю куда подобный вопрос можно задать, но в GFFEditorе, где в нем изменение цвета глаз?

«Убей человека, и ты — убийца. Убей тысячи, и ты — завоеватель. Убей всех, и ты — бог» - Каэла Менша Кхеин
Lavallet  Offline Сообщение №49 написано: 10 Августа 2018 в 11:59



434

Ауранг  Online Сообщение №50 написано: 10 Августа 2018 в 12:09



816
Lavallet, моя невнимательность, как-то упустил этот пост. Спасибо!

Добавлено (15 Августа 2018, 18:25)
---------------------------------------------
Можно ли убрать у класса паладин. ограничение по мировоззрению?


«Убей человека, и ты — убийца. Убей тысячи, и ты — завоеватель. Убей всех, и ты — бог» - Каэла Менша Кхеин
Lavallet  Offline Сообщение №51 написано: 15 Августа 2018 в 18:34



434
Ауранг, можно.

1. Открой classes.2da.
2. Найди в нём строку, отвечающую за класс паладина.
3. В колонке AlignRestrict установи в этой строке значение 0x00, в колонке AlignRstrctType – 0x0, а в колонке InvertRestrict – 0.

Ауранг  Online Сообщение №52 написано: 15 Августа 2018 в 21:06



816
Lavallet,спс

Добавлено (18 Августа 2018, 01:09)
---------------------------------------------
А где можно просмотреть и изменить какое оружие входит в экзотическое\простое\монк\боевое?


«Убей человека, и ты — убийца. Убей тысячи, и ты — завоеватель. Убей всех, и ты — бог» - Каэла Менша Кхеин
Lavallet  Offline Сообщение №53 написано: 18 Августа 2018 в 01:29



434
Ауранг,
1. Открываешь baseitems.2da.
2. Находишь строку с интересующим тебя оружием.
3. Переходишь к колонкам с заголовками ReqFeatX, где на месте X может быть цифра от 0 до 5. В этих колонках задаются ID навыков из feat.2da, которые требуются для использования выбранного оружия (не все одновременно, один из них). Колонок несколько, потому что бывают ситуации, когда оружие входит в разные «наборы», которые пересекаются друг с другом: например, оружие плута, оружие волшебника, простое оружие, и т.д. За каждый из таких наборов отвечает свой навык. Соответственно, для любого оружия можно задать до 6 таких навыков, по числу данных колонок. Там и изменяешь эти навыки.


KoTJIeTko  Offline Сообщение №54 написано: 09 Сентября 2018 в 15:35


Странник


2
Привет всем!
Интересует создание навыка с нуля(скриптинг) есть ли возможность почитать информацию на Великом и Могучем?
Проходил НВН лет 8 назад был опыт ковыряния файлов игры с целью создания своего класса.
Получилось что-то монструозное путем копи-пасты навыков :)

В общем интересуют гайды.
Либо хотя б список файлов в которых можно посмотреть скрипты для понимания аналогий.

Спасибо.

Lavallet  Offline Сообщение №55 написано: 09 Сентября 2018 в 16:00



434
KoTJIeTko, приветствую! :)

Что-то конкретное посоветовать тут не могу, поскольку сам я изучал всё связанное с моддингом NWN1-2 исключительно по англоязычным гайдам/форумам. Возможно, какую-то информацию на эту тему вы сможете найти на форуме Города Мастеров в разделах по NWN1-2. Ещё вот тут на русском много информации по скриптингу.

По своему опыту могу сказать, что нет ничего лучше, чем учиться на конкретных примерах. Скачайте версию 1.41.4 мод-пака от Kaedrin'а (в последней версии 1.42.1 автор убрал исходники скриптов) и просто смотрите, как там всё реализовано. Там и новые заклинания, и навыки, и классы. Dialog.TLK можете взять не тот, что в архиве, а от последней версии этого мода из нашего файлового архива (если не хотите, чтобы у вас вся игра англофицировалась). Если будут конкретные вопросы по работе того или иного навыка/заклинания/класса из упомянутого мода, спрашивайте, я всегда готов помочь и подсказать, где в каких файлах что лежит ;)

KoTJIeTko  Offline Сообщение №56 написано: 11 Сентября 2018 в 19:23 | Отредактировано: KoTJIeTko - Вторник, 11 Сентября 2018, 19:25


Странник


2
Итак в планах:
1. Продумать лор для престиж-класса. Рабочее название "Тёмный Лицедей - 5 Улыбок смерти"
Кратко - Барды тифлингов и дроу кормящие внутреннего демона страданиями и болью.
2. Баб - средний, 5 своих навыков, спассы(реакция, воля), основная характеристика харизма(для заклов). Продолжаем прогресировать в
выступлении.
3. Навыки:
Улыбка первая - "Притворная смерть". Ну думаю тут и так понятно
Улыбка вторая - "Изощренное убийство". Добавить к урону оружия модификатор харизмы.
Улыбка третья - Увеличение спассов против заклинаний школы иллюзий и воздействию на разум. Безумие? ДА ЧТО ВЫ ЗНАЕТЕ о безумии :D
Улыбка четвертая - Вдохновение "Пир на костях" пассивно наносит урон враждебным существам излечивая персонажа.
Улыбка пятая - "Оскал Смерти" сопсно песня, добавляет на пару раундов трансформацию героя, выпуская внутренего демона.
Можно ли технически отоброзить визуальные изменение героя? Крылья там ему пределать, рога?
4. Цель этого всего шаманства. Интерес попробовать помодить и ролеплей.
Помните историю Валена из первого NWN? Тифлинг который пытался от демонической своей половины избавиться? Скажем так его антипод :)

Lavallet  Offline Сообщение №57 написано: 13 Сентября 2018 в 21:41



434
KoTJIeTko, если с концепцией класса уже более-менее определились, тогда можно переходить к технической части.

Итак, нам понадобятся две сторонних программы:
TlkEdit2 - для редактирования TLK-файлов;
- NeverWorker - для редактирования 2da-файлов.

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

1. Устанавливаем TlkEdit2 (для его работы необходима бесплатная JRE), запускаем её и открываем с помощью неё файл «..\Документы\Neverwinter Nights 2\Dialog.TLK».

2. Находим любые незанятые ячейки. Я выбрал для примера ячейки с номерами 70000 - 70003, но вы можете взять любые другие. Прописываем в первой из них название класса в ед. числе с заглавной буквы, во второй – то же самое, но во мн. числе, в третьей – название в ед. числе со строчной буквы, а в четвёртой – описание класса. Можно сразу же здесь добавить названия и описания навыков. Я поставил на место описаний пока что просто плейсхолдеры, нормальные описания можно будет добавить в самом конце, когда вы закончите со всем остальным. Сохраняем файл, запоминаем ID.



3. Теперь нам понадобится файл classes.2da. Если у вас в папке override установлен Kaedrin's PrC Pack, про который я говорил выше, и вы делаете свой мод на базе него, тогда этот файл вы найдёте в подпапке Core 2DA в папке c данным модом. Если Kaedrin's PrC Pack не установлен, тогда этот файл вам придётся извлечь из оригинальных архивов игры и поместить в свою папку override в "Документах". Найти этот файл можно в архиве «..\<Корневая папка с игрой>\Data\2DA_X2.zip».

4. После того, как вы выполнили п.3, запустите NeverWorker (он не требует предварительной установки) и нажмите в нём File -> Open, укажите путь к файлу classes.2da. Откроется таблица, в которой перечислены все классы в игре. Найдите незанятую строку (я выбрал для примера с номером 62) и выделите её, как показано на скриншоте.



В правой части вы видите много пустых полей. И четыре закладки - Main, Feats, Spell Casting, More. Вам нужно разобраться, за что каждое из них отвечает, и все их заполнить. Информация по всем полям доступна на англоязычной вики (тут и тут). Используйте уже готовые игровые классы в качестве примера. В поле Name в нашем примере прописываете 70000, в поле Plural - 70001, в поле Lower - 70002, в поле Description - 70003.

Когда вы сделаете это, мы сможем перейти уже к скриптовой части и созданию навыков. Если есть вопросы, можете спрашивать.

Форум » Игры-гиганты моддинга » Серия игр «Neverwinter Nights» » Neverwinter Nights 2 Electron Toolset (Документация, руководства, плагины и другие полезные вещи)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск: