Моддинг для начинающих 2 - создание рецептов в New Vegas

Создание рецептов в FNV G.E.C.K продвинутая часть.
 

Вот и второй урок из серии «Моддинг для начинающих» от Modgames.net. В этом уроке я расскажу вам о том, как делать «продвинутые» рецепты в Fallout: New Vegas, задавать для них более разнообразные и гибкие условия и требования, чем один навык. Данный урок подразумевает, что вы уже ознакомились с первым уроком базовым созданием рецептов в FNV G.E.C.K, или имеете свои навыки.

Итак, приступим.

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

Согласитесь, друзья, одно требование, к примеру, ремонт, не всегда может отразить реальные требования для создания того или иного предмета. К примеру, мы создаем Силовую Броню. Подумаем логически нам потребуется не только ремонт, но и наука. Как это реализовать? Открываем наш рецепт на вкладке Requirements и 
создаем новое условие.

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

Давайте разбираться с этим скриншотом:

Condition Function это сама функция условия, будь это условие, касающееся игрока, или завершенность квеста, или что-либо еще.
Function Parameters (в данном случае Science Наука) собственно, сама переменная, которая нам нужна.
Comparsion будьте внимательны! Это математическое условие (больше, меньше, равно, и так далее), которое будет использоваться при проверке функции. То есть, сейчас нам нужно, чтобы при «Науке» от 80ти и выше мы могли увидеть этот рецепт на верстаке. Будьте внимательны!
Если вы поставите «=80», к примеру, то увидите этот рецепт только при 80ти науки, и никак иначе! Поэтому, чаще всего используется >=, если речь идет о навыках.
Value непосредственное значение навыка, который нам нужен. У меня стоит значение «Наука», равное 80.
Run on Subject данная переменная означает, что этот скрипт будет работать на том, кто его начал, то есть, проверка условий будет относиться к игроку, чего нам и нужно.

Вы можете поставить любой навык вместо науки. Просто выбирайте другой параметр. Также вы можете поставить не 2 навыка на условие, а, к примеру, 3 или 4. При этом, эти требования не будут отображаться в рецепте, да и сам рецепт просто не появится в списке до достижения требуемых значений. Как подсказать игроку, сколько и чего нужно для создания определенной вещи я расскажу чуть позже в этом уроке.

Это главное и основное в «Продвинутом создании рецептов».

Теперь, давайте подумаем и поведем мысль дальше. К примеру, если у вас низкий интеллект, будь у вас хоть 100 ремонта или науки вы по логике не сможете сделать силовую броню или какую-то высокотехнологичную вещь. Это будет не слишком логично. Давайте посмотрим, как можно ограничить крафтинг параметрами S.P.E.C.I.A.L

И тут нас выручит замечательное значение GetActorValue!

Просто вместо значения типа «Science» ставьте один из главных параметров героя. У кого совсем туго с английским подскажу названия:

Agility Ловкость
Charisma Обаяние
Endurance Выносливость
Intelligence Интеллект
Luck Удача
Perception Восприятие
Strength Сила

Другие переменные, которые могут вам понадобиться в «ActorValue», включая и навыки. Опять же для тех, у кого плохо с английским, и не только.

Barter Торговля
Explosives Взрывчатка
EnergyWeapons Энергооружие
Guns Оружие
LockPick Взлом
Medicine Медицина
MeleeWeapons Оружие ближнего боя
Repair Ремонт
Science Наука
Sneak Скрытность
Speech - Разговор
Survival Выживание
Unarmed - Безоружное

Karma карма (неожиданность). Вполне может подойти для рецептов, которыми можно охарактеризовать добрых или злых персонажей (рагу из человечинки, оружие из конечностей и так далее)

По поводу других функций:

GetIsRace требование по расе персонажа. Можете сделать специальные рецепты для афроамериканцев, к примеру, типа «племенная кость» :)
GetIsSex требование по полу персонажа. Специальные рецепты для мужчин и женщин уже интереснее!
GetLevel установите этот параметр, если хотите, чтобы рецепт был доступен персонажу только после определенного уровня
GetReputation требование на определенную репутацию у фракций. Очень редко, но может пригодиться.
HasPerk очень полезная вещь, если вы создаете специальный перк, позволяющий создавать определенные предметы. Выбираете свой созданный перк из списка всех перков, или любой стандартный, если он вам подходит и вуаля!

К вышесказанному: К примеру, у вас есть переменная HasPerk и выбранный перк. Что ставить в цифрах? Это очень правильный вопрос, потому что в цифрах в этом случае должно быть =1, если это да и =0, если это нет. То есть, при требовании определенного перка,  

у вас должно получиться примерно следующее:

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

Для этого, мы введем с вами схему или записку и расположим ее в удобном месте в игре.
Откройте в G.E.C.K.е вкладку Note и найдите любой рецепт (ID Recipe), 

как на картинке.

Если хотите посмотреть, как это будет выглядеть в игре, нажмите правой кнопкой и выберите «превью». Это стандартный рецепт. На его базе мы создадим свой. Кликните дважды левой кнопкой по рецепту, 

откроется окно:

Обратите внимание на поле «ID». Сейчас изменяйте ID на любой, какой захотите, на английском. Кроме него ничего не трогайте! Когда измените, нажмите OK и программа предложит вам создать новую форму. Соглашайтесь и смотрите в список Note. Найдите свой, 

откройте и начинайте заполнять:


В Note Data записано содержание рецепта, соответственно, в Name отображаемое имя рецепта. Вот и ответ на вопрос «как показать игроку, что именно нужно». Жмем «ОК» и идем к нашему рецепту в Recipe.

Заходим в requirements и добавляем новое условие.

Функция, проверяющая наличие предмета в инвентаре, называется «GetItemCount». Запомните это, особенно, если будете в дальнейшем создавать квесты вида пойди-принеси :)

Однако, рецепт или записка не является предметом, поэтому для них используйте "GetHasNote" (спасибо за найденную ошибку sado)

Выбирайте свой рецепт и приравнивайте к одному. Все, условие «требуется схема/рецепт для создания» готово. Вы можете не ставить такое условие, но сделать схему с требованиями все же стоит, так как игроки при большом количестве условий ничего не поймут.

Мы уже совсем недалеко от развязки, осталось лишь разместить схему в мире :)

Откройте вкладку «Cells» (Ячейки мира) Выберите любую подходящую (справа от ID есть названия) и щелкните дважды. Локация загрузится в окне рендера. Я выбрал Дом

 
Помощника шерифа в Примме.

Управляйте окном рендера с помощью зажатой средней клавиши мыши, колесико приблизить/отдалить, shift + мышь «оглядеться». Если есть более удобные способы управления рендером, поправьте меня. 

Чтобы положить туда ваш рецепт, просто перетащите его из «Note» прямо в окно рендера.

После этого кликните дважды на выделенной схеме и стрелками переместите ее координаты в «Position» и «Rotation», как вам нравится. Я положил ее прямо на пол к помощнику шерифа Примма (все равно бардак.)

Теперь сохраняем все и идем в игру пробовать свой рецепт со схемой!

Теперь пару слов о редактировании брони/оружия.

К примеру, вы хотите создать Боевую Броню МК3 на базе Боевой Брони МК 2 для вашего нового рецепта.
Просто зайдите в раздел «Armor», найдите Боевую Броню МК2, измените ее ID по аналогии с тем, как мы это делали с рецептами, создайте новую форму и изменяйте параметры и название, как вам будет угодно. То же самое относительно оружия, химии и прочего. Так вы сможете делать рецепты апгрейда с обычной версии предмета до вашей, улучшенной.
 

1
4
Комментарии:  4
Ваш комментарий

хорошо копируешь Комментарии пользователей:

Спасибо большое за единицу только вот смотри внимательней это комментарии пользователей на этом сайте . Вот ты рассеянный :D

Вот ты камень за слова как так можно ошибиться :D

Rizenmusic Слыш доказательства гони баннер