Сталкер как редактировать артефакты
Сталкер как редактировать артефакты
Спаун через xrSpawner 1. Предварительные телодвижения
1.1 Итак, прежде чем мы приступим к созданию собственных модов, не помешает проветрить, все ли необходимое у нас есть.
a) Собственно, сама игра, установленная на компьютер.
b) Распаковщик архивов игры STALKER_Data_Unpacker
c) Текстовый редактор, подойдет практически любой, даже Блокнот. Если у вас есть редактор с подсветкой синтаксиса, это будет плюсом.
d) Редактор файла all.spawn. Если вы корифей в HEX-редакторах, берите тот, который нравится. Тем же, кто даже толком не представляет, что такое НЕХ-редактор, крайне рекомендую xrSpawner 0.13.0 Beta от небезызвестного в сталкеровском комьюнити Zeed’а. Удивительно удобная штука, тем более что в дальнейшем речь пойдет именно о xrSpawner.
e) Ровные руки и мыслящая голова.
Если все это у вас есть, продолжим. В том случае, если вы уже распаковали архивы игры, переходите сразу ко второму пункту. Если же нет, то…
1.2 Допустим, игра у вас установлена в папку D:\Games\S.T.A.L.KE.R. Тогда при помощи Unpacker-а извлеките все содержимое файлов gamedata.dbX (где Х – буква или число) из корневого каталога игры в отдельную папку, например D:\Source\gamedata.
2. Добавление транспорта.
2.1 Начнем, пожалуй, с самого легкого и в достаточной степени необходимого – с добавления транспорта. В правой части окна редактора раскрываем список «Добавить объект» и выбираем пункт Transport. В окне внизу выбираем вид транспорта, который вам необходим, пусть это будет, к примеру, Niva_Green (Нива армейского образца) и жмем кнопку «Добавить».
2.3 Известно, что «по умолчанию» новоявленные автомобили чрезвычайно хрупки и взрываются буквально от первого же столкновения с забором. Устраняется эта проблема моментально. В папке Source ищем файл veh_niva_u_01 и копируем его в папку D:\Games\S.T.A.L.KE.R.\gamedata\config\models\vehicles. Это файл конфигурации автомобиля. Открываем его блокнотом и ищем раздел [immunities], после чего выставляем все параметры (burn_immunity, strike_immunity и т.д.) равными нулю. Сохраняем и закрываем файл. Теперь ваша Нива неуничтожима в принципе. Небольшая ремарка, повреждения для дверей и крышки багажника считаются отдельно и после парочки столкновений можно лишиться нескольких деталей корпуса, но, думаю, без дверей вы уж как-нибудь покатаетесь. Рекомендую сразу же в ту же папку перенести файлы остальных машин и проделать с ними те же операции. Все.
3 Поиск координат и расстановка объектов на других локациях.
4 Добавление новых монстров
1: Спавн ГГ
Тут ничего сложного нету, открываеш all.spawn, в поиске ищеш actor (только в Entity) и меняеш его координаты (не забудь выставить Level_ID) вот собственно и всё
2: Спавн предметов в рюкзаке у ГГ
В этом же параметре actor есть скрип в котом прописаны все предметы он выглядит так:
][spawn]
wpn_binoc
detector_simple
novice_outfit
device_torch
[spawn]
dialogs.relocate_item_section(trader, «wpn_binoc», «in»)
dialogs.relocate_item_section(trader, «wpn_knife», «in»)
dialogs.relocate_item_section(trader, «detector_elite», «in»)
dialogs.relocate_item_section(trader, «exo_outfit», «in»)
dialogs.relocate_item_section(trader, «dolg_scientific_outfit», «in»)
dialogs.relocate_item_section(trader, «protection_outfit», «in»)
dialogs.relocate_item_section(trader, «device_torch», «in»)
dialogs.relocate_item_section(trader, «af_medusa», «in»)
dialogs.relocate_item_section(trader, «af_cristall_flower», «in»)
dialogs.relocate_item_section(trader, «af_night_star», «in»)
dialogs.relocate_item_section(trader, «af_vyvert», «in»)
dialogs.relocate_item_section(trader, «af_gravi», «in»)
dialogs.relocate_item_section(trader, «af_gold_fish», «in»)
dialogs.relocate_item_section(trader, «af_blood», «in»)
dialogs.relocate_item_section(trader, «af_mincer_meat», «in»)
dialogs.relocate_item_section(trader, «af_soul», «in»)
dialogs.relocate_item_section(trader, «af_electra_sparkler», «in»)
dialogs.relocate_item_section(trader, «af_electra_flash», «in»)
dialogs.relocate_item_section(trader, «af_electra_moonlight», «in»)
dialogs.relocate_item_section(trader, «af_rusty_thorn», «in»)
dialogs.relocate_item_section(trader, «af_rusty_kristall», «in»)
dialogs.relocate_item_section(trader, «af_rusty_sea-urchin», «in»)
dialogs.relocate_item_section(trader, «af_ameba_slime», «in»)
dialogs.relocate_item_section(trader, «af_ameba_slug», «in»)
dialogs.relocate_item_section(trader, «af_ameba_mica», «in»)
dialogs.relocate_item_section(trader, «af_drops», «in»)
dialogs.relocate_item_section(trader, «af_fireball», «in»)
dialogs.relocate_item_section(trader, «af_cristall», «in»)
dialogs.relocate_item_section(trader, «af_dummy_glassbeads», «in»)
dialogs.relocate_item_section(trader, «af_dummy_pellicle», «in»)
dialogs.relocate_item_section(trader, «af_dummy_battery», «in»)
dialogs.relocate_item_section(trader, «af_dummy_dummy», «in»)
dialogs.relocate_item_section(trader, «af_dummy_spring», «in»)
dialogs.relocate_item_section(trader, «af_fuzz_kolobok», «in»)
dialogs.relocate_item_section(trader, «ammo_9x18_fmj», «in»)
dialogs.relocate_item_section(trader, «ammo_9x18_pmm», «in»)
dialogs.relocate_item_section(trader, «ammo_9x19_pbp», «in»)
dialogs.relocate_item_section(trader, «ammo_9x19_fmj», «in»)
dialogs.relocate_item_section(trader, «ammo_11.43x23_hydro», «in»)
dialogs.relocate_item_section(trader, «ammo_11.43x23_fmj», «in»)
dialogs.relocate_item_section(trader, «ammo_12x70_buck», «in»)
dialogs.relocate_item_section(trader, «ammo_12x76_dart», «in»)
dialogs.relocate_item_section(trader, «ammo_12x76_zhekan», «in»)
dialogs.relocate_item_section(trader, «ammo_5.45x39_ap», «in»)
dialogs.relocate_item_section(trader, «ammo_5.45x39_fmj», «in»)
dialogs.relocate_item_section(trader, «ammo_9x39_sp5», «in»)
dialogs.relocate_item_section(trader, «ammo_9x39_ap», «in»)
dialogs.relocate_item_section(trader, «ammo_9x39_pab9», «in»)
dialogs.relocate_item_section(trader, «ammo_5.56x45_ss190», «in»)
dialogs.relocate_item_section(trader, «ammo_5.56x45_ap», «in»)
dialogs.relocate_item_section(trader, «ammo_7.62x54_7h14», «in»)
dialogs.relocate_item_section(trader, «ammo_7.62x54_7h1», «in»)
dialogs.relocate_item_section(trader, «ammo_7.62x54_ap», «in»)
dialogs.relocate_item_section(trader, «ammo_og-7b», «in»)
dialogs.relocate_item_section(trader, «ammo_vog-25p», «in»)
dialogs.relocate_item_section(trader, «ammo_vog-25», «in»)
dialogs.relocate_item_section(trader, «grenade_f1», «in»)
dialogs.relocate_item_section(trader, «ammo_m209», «in»)
dialogs.relocate_item_section(trader, «ammo_gauss», «in»)
dialogs.relocate_item_section(trader, «wpn_colt1911», «in»)
dialogs.relocate_item_section(trader, «wpn_desert_eagle», «in»)
dialogs.relocate_item_section(trader, «wpn_toz34», «in»)
dialogs.relocate_item_section(trader, «wpn_vintorez», «in»)
dialogs.relocate_item_section(trader, «wpn_rg-6», «in»)
dialogs.relocate_item_section(trader, «wpn_rpg7», «in»)
dialogs.relocate_item_section(trader, «wpn_fn2000», «in»)
dialogs.relocate_item_section(trader, «wpn_gauss», «in»)
dialogs.relocate_item_section(trader, «wpn_addon_scope», «in»)
dialogs.relocate_item_section(trader, «wpn_addon_scope_susat», «in»)
dialogs.relocate_item_section(trader, «wpn_addon_silencer», «in»)
dialogs.relocate_item_section(trader, «wpn_addon_grenade_launcher», «in»)
dialogs.relocate_item_section(trader, «wpn_addon_grenade_launcher_m203», «in»)
dialogs.relocate_item_section(trader, «bandage», «in»)
dialogs.relocate_item_section(trader, «medkit», «in»)
dialogs.relocate_item_section(trader, «medkit_scientic», «in»)
dialogs.relocate_item_section(trader, «medkit_army», «in»)
dialogs.relocate_item_section(trader, «antirad», «in»)
dialogs.relocate_item_section(trader, «bread», «in»)
dialogs.relocate_item_section(trader, «kolbasa», «in»)
dialogs.relocate_item_section(trader, «conserva», «in»)
dialogs.relocate_item_section(trader, «vodka», «in»)
dialogs.relocate_item_section(trader, «energy_drink», «in»)
dialogs.relocate_item_section(trader, «wpn_ak74_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_abakan_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_fort_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_ak74u_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_mp5_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_groza_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_spas12_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_winchester_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_l85_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_lr300_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_svd_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_sig_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_eagle_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_val_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_mp5_m2», «in»)
dialogs.relocate_item_section(trader, «wpn_abakan_m2», «in»)
dialogs.relocate_item_section(trader, «wpn_l85_m2», «in»)
dialogs.relocate_item_section(trader, «wpn_sig_m2», «in»)
dialogs.relocate_item_section(trader, «wpn_rg6_m1», «in»)
dialogs.relocate_item_section(trader, «wpn_walther_m1», «in»)
Вот тебе все добро при спауне у тебя в инвентаре. все уникальное, плюс три комбеза (зеленый ученый, экзоскелет и Скат, вроде бы ).
Сталкер как редактировать артефакты
Привет, Гость!
Файлы > Модификации > Зов Припяти > Мануал по правке некоторых конфигов
Небольшая шпаргалка, которая поможет изменить баланс игры больше, чем это позволяют её настройки.
Конфигурационные файлы открываются обычным «Блокнотом». Необходимый для изменения параметр можно найти по его названию, когда файл, в котором они находятся, открыт «Блокнотом», (Правка/Найти далее).
Как изменить живучесть героя.
Параметры, отвечающие за потерю НР:
satiety_critical = 0.0;критическое значения сытости (в процентах от 0..1) когда здоровье начианает уменьшаться
radiation_health_v = 0.004;уменьшение здоровья при воздействии радиации
health_hit_part = 1.0;процент хита, уходящий на отнимание здоровья
power_hit_part = 0.1;процент хита, уходящий на отнимание силы
bleeding_v = 0.002; 0.0005;потеря крови при номинальной ране в секунду
Сделайте их равными 0.0 и вы бессмертны
———————————————————————————
Увеличьте эти параметры и гг станет менее уязвим:
wound_incarnation_v = 0.0001; 0.003;скорость заживления раны
min_wound_size = 0.0256;минимальный размер раны, после которого она считается зажившей
psy_health_v = 0.001;скорость восстановления psy-здоровья
———————————————————————————
satiety_v = 0.00015;скорость уменьшения сытости со временем
radiation_v = 0.00001;скорость уменьшения радиации
satiety_power_v = 0.00055;увеличение силы при уменьшении сытости
satiety_health_v = 0.00001;увеличение здоровья при уменьшении сытости
satiety_critical = 0.00000;критическое значения сытости
(в процентах от 0..1) когда здоровье начианает уменьшаться
Смена длительности дня и ночи:
За это отвечает строка
#time_factor = 10; 1; ;396.0;
Время и дата старта игры:
Период автосохранения:
Радиус загрузки локации
Рассмотрим некоторые параметры.
Гранаты:
Примечание: изменения вступят в силу после начала новой игры.
*Файлы xml так же открываются «Блокнотом».
Статья по материалам от: Empro,Хемуль,BAC9-FLCL и других неустановленных авторов. Если вы узнали свой материал, сообщите авторство.
подскажите у кого спросить: как поправить мини карту, поменять цвета точек друзей, врагов, нейтралов и трупов? настроить под дальтоника
Создание модели артефакта
Материал из Mod Wiki.
В этой статье я расскажу как добавить новую модель артефакта в игру, о создании конфигов рассказано в этой статье
Для работы нам понадобятся:
Содержание
Подготовка к моделированию
Прежде чем приступить к моделированию подумаем об особенностях артефакта и нарисуем скетч(эскиз) чтобы не получить черти-что.
Общая концепция
Название: Плазменный Кактус
Описание: Этот артефакт порождается аномалией «Карусель», представляет из себя наполовину сваренный состав из неизвестных редких растений, одним из которых предположительно является мутировавший вид крапивы, на вид похож на кактус, отчего и получил свое название. Также можно заметить слабую светящуюся оболочку, предположительно плазменной структуры. Артефакт достаточно редкий и дорогой.
Рисуем скетч
Рисовать можно хоть в Фотошопе хоть на газете или школьной тетрадке, значения не имеет.
Рисую я плохо, поэтому получилось вот что:
Прошу особо не пинать)))
Моделирование и текстурирование
Идея готова, осталось лишь воплотить ее в жизнь.
Основное моделирование
Итак, запускаем Макс и делаем модельку максимально схожую со скетчем
Для достижение этого результата я использовал модификатор MeshSmooth и Nois, а для корректировки формы FreeForm Deformer
Теперь делаем «иголки» нашего артефакта
Текстурирование
Проецируем текстуру и если надо создаем развертку, у меня получилось так:
Окончательно моделирование
Отмасштабируем все элементы и правильно присоединим «иголки» к основному мешу, для этого я рекомендую использовать скрип Scatter С его помощью можно как-бы «рисовать» одними мешами на другом.
Так же создаем сферу, которая будет являться «плазменной оболочкой»
Назначение шейдеров
Для моего артефакта я использовал следующие параметры:
Подготовка к экспорту в Actor Editor
Масштабируем модель до «сталкеровских» размеров, потом применяем модификатор Physique и присоединяем кость. Далее всё просто: переходим в Utilites (на нём нарисован молоточек), more/S.T.A.L.K.E.R. Export и нажимаем Export Skin.
Работа в SDK
Устали? А ведь в переди еще не мало работы, возможно это даже самый сложный этап.
Настройки в Actor Editor
После правильного импорта текстур и геометрии должно получиться примерно так:
Невзрачно, да? А ведь после окончания всего процесса будет красиво. надеюсь красиво.
Ладно, вернемся к теме, первым делом проверяем шейдеры, если что-то напортачили в 3ds max то сейчас еще не поздно исправить, далее убираем галку напротив пункта Make Progressive(для чего нужен этот параметр мне не известно), переходим во вкладку Bones и щелкаем на названии кости. Теперь ставим следующие параметры:
Создание парктикла артефакта
Запускаем Parcticle Editor, (заранее предупреждаю что делать наш парктикл мы будет на основе уже имеющегося, т.к. в этому уроке не будут рассматриваться азы работы в этой программе SDK, про это уже подробно написано тут )
создаем свою директорию и копируем туда уже имеющиеся парктикл_группы(PG) и принадлежащие к нему парктикл_эффекты, не забываем править пути.
После редактирования всех параметров у меня получилось так:
Чтобы новый парктикл заработал копируем файл parcticles.xr из директории SDK в директорию игры, и прописываем соответствующие параметры в конфиги артефакта.
Заключение
После упорных трудов мы создали с нуля модель артефакта, а добавление его в игру это дело техники.
ДОБАВЛЕНИЕ НОВОГО АРТЕФАКТА
» Платформа: Call of Pripyat
» Автор урока: vanStal, доделал Аномальный
» Версия игры: v1.6.02
[icq]Аська: [/icq][not-icq]Аська: не указана![/not-icq]
Вставляем вот это (пример был взят с артефакта Медуза):
Выставили нужные значения, сохранили
inv_grid_x = 9 ;координаты иконки нашего арта по x
inv_grid_y = 4 ;координаты иконки нашего арта по y
inv_grid_width = 1 ;ширина иконки
inv_grid_height = 1 ;высота иконки
particles = artefact\af_gravi_idle ;дефолтный партиклы
det_show_particles = artefact\af_gravi_show ;партикл появления артефакта
det_hide_particles = artefact\af_gravi_hide ;партикл исчезновения артефакта
af_rank = 1 ; ранг артефакта (0-3, 0-дефолт, 3-максимальный)
trail_light_color = 0.4,0.4,0 ; оттенок подсветки
trail_light_range = 2.0 ; яркость света
hit_absorbation_sect = af_test_absorbation ; подключение секции иммунитетов
additional_inventory_weight = 0 ; изменение веса с которым можно бегать
additional_inventory_weight2 = 0 ; изменение максимально подымаемого веса
artefact_activation_seq = af_activation_bold ; имя секции для активации артефакта, в оригинальной игре не активна
[af_test_absorbation] ; имя секции иммунитетов
burn_immunity = 0 ; к огню
strike_immunity = 0 ; к ударам и падениям
shock_immunity = 0 ; к электричеству
wound_immunity = 0 ; к рваным ранам
radiation_immunity = 0 ; к радиации
telepatic_immunity = 0 ; к ментальному воздействию
chemical_burn_immunity = 0 ; к химическим ожогам
explosion_immunity = 0 ; к осколочным ранениям
fire_wound_immunity = 0 ; к огнестрельным ранениям
Идем далее, открываем файл по пути:
gamedata/configs/misc/devices.ltx
Ищем строку:
Чуть ниже будут такие строки:
После них вставляем:
РАЗЪЕСНЕНИЕ:
Это нужно для того чтобы нужный детектор мог «засветить» артефакт. Стоит также отметить что этот артефакт можно будет обнаружить только с помощью детектора «Сварог».
af_class_28 = af_my_art ; Название Вашей секции (af_название_арта)
Прописываем его в детектор
gamedata\configs\ui\ui_detector_artefact.xml
Вставляем:
— Где af_my_art название Вашей секции (af_название_арта)
Теперь прописываем его в аномалию. Для этого открываем папку:
gamedata/configs/scripts/нужная_лока/anomaly/
В нем открываем нужную аномалию и ищем там что-то вроде этого:
Сталкер как редактировать артефакты
Имя: Георгий | | Сообщений: 1860 | | Уважений: 0 | | Был в зоне: 26 декабря 2021, 00:13 | | Город: Россия | | ||
| ||||||
|