Как установить текстуры в сталкере
Эта тема создана не случайно, так как многие начинающие игроки в Сталкер сталкиваются с такой проблемой как установка мода. В связи с большим количеством вопросов связанных с установкой различных модов, аддонов, патчей, адаптаций и фиксов разберем основные способы установки.
Моды следует сразу разделить на две категории.
1. Моды устанавливаемые через инсталятор.
2. Моды выполненные в виде папки "gamedata" как правило помещенные в архив.
В установке модов заключенных в инсталлятор одним из важных моментов состоит правильность установки пути инсталляции. Другими словами тот путь который предлагает выбрать инсталлятор не всегда совпадает с местом установки вашей игры на жестком диске.
ВАЖНО. Перед тем как устанавливать какой либо мод необходимо убедиться в отсутствии уже имеющейся папки gamedata в корневой папке с игрой. Это бывает в том случае если у вас уже устанавливались ранее моды. Всё это из-за того что некоторые моды друг с другом несовместимы.
Первый вариант установки мода:
Другими словами Вам необходимо:
1. Запустить инсталятор.
2. Указать путь к установленной игре Сталкер (нас интересует корневая папка игры).
В итоге в папке с игрой должна появиться папка gamedata.
Следующий шаг самый приятный, а именно запустить ярлык на рабочем столе и играть.
Второй вариант установки мода:
Второй вариант установки в принципе похож, только делать придется все в ручную.
1. Разархивируем скачанный архив как правило это RAR, Zip, 7zip.
2. Полученную папку gamedata копируем в папку с игрой.
Далее запускаем и играем!
Установка Фиксов:
Фиксы к модам ставятся аналогично второму варианту установки модов. Фиксы также выполнены в виде архива с папкой gamedata. Единственный нюанс это при копировании папки gamedata с фиксом в папку с игрой система укажет что такая папка уже существует останется согласится на копирование с заменой.
Установка адаптаций:
Шаг 1. Устанавливается игра, если она ещё не установлена.
Шаг 2. Устанавливаем мод
Шаг 3. Устанавливаем фикс патч к нему Если необходимо.
Шаг 4. Устанавливаем мод который необходимо адаптировать с первым.
Шаг 5. Устанавливаем адаптацию (она как и фиксы выполняется в виде папки gamedata и устанавливается аналогично)
Шаг 6. Наслаждатся игрой.
После релиза OGSR MOD, многие игроки столкнулись с проблемой по установке модификации. В представленной инструкции будет описан, весь процесс установки и первичных настроек Сталкер OGSR MOD. В отличие от предыдущей версии, движок игры получил кардинальные изменения, что наложило свои особенности установки и системных требованиях для ПК.
Перед установкой OGSR MOD убедитесь:
- Ваша операционная система Windows, имеет x64-битную разрядность.
- Мод OGSR работает только на Win 7 x64-bit и выше. (Win XP не поддерживается)
- Оригинальная версия игры Сталкер, не требуется. Она уже включена.
Как установить мод OGSR MOD
1. После того как вы скачали папку с игрой, в ней будет находиться 11 архивов, которые необходимо распаковать.
2. Переходим в папку со скачанным модом и кликаем правой кнопкой мыши по архиву с названием OGSRmod.7z.001. В выпадающем меню наводим мышку на пункт 7-Zip, далее выбираем пункт распаковать в OGSR MOD
3. Ждем когда все архивы распакуются.
4. В нашей папке появиться папка OGSRmod и pdf файл "Запуск мода", советуем с ним ознакомиться.
5. Заходим в папку OGSRmod и запускаем игру с помощью файла OGSE_Configurator.exe
6. Далее откроется окно конфигуратора, где вы сможете сделать необходимые настройки или отключить ненужные опции. Когда все настройки сделаны нажимаем, на кнопку "Запустить (x64)"
Меняем блок под той шапкой, на каком уровне сложности играем. Например, уровень сложности у нас "Сталкер". Редактируем следующий блок:
Редактируем следующим образом: после знака равно каждого параметра ставим 0.0 - и наш ГГ бессмертен. ВНИМАНИЕ: СПОЙЛЕР!
Мне кажется многие задавались вопросом "Как же создать худ маски"? Немного пораздумав, я создал функцию, которая крепит текстуру к определенному костюму.
Первым делом в директории gamedata\scripts создайте файл с названием xr_mask.script
Открываем его пишем:
function hud_gas()
local slot_stalker = db.actor:item_in_slot(6)
local object_1 = db.actor:object("stalker_outfit")
local slot_killer = db.actor:item_in_slot(6)
local object_2 = db.actor:object("killer_outfit")
if slot_stalker and slot_stalker:section() == "stalker_outfit" and object_1
= nil or
slot_killer and slot_killer:section() == "killer_outfit" and object_2
= nil then
local hud = get_hud()
local custom_static = hud:GetCustomStatic("hud_gas")
if custom_static == nil then
hud:AddCustomStatic("hud_gas", true)
end
else
local hud = get_hud()
local custom_static = hud:GetCustomStatic("hud_gas")
if custom_static
= nil then
hud:RemoveCustomStatic("hud_gas", false)
end
end
end
function hud_gas() -- функция
local slot_stalker = db.actor:item_in_slot(6) -- переменная костюма
local object_1 = db.actor:object("stalker_outfit") -- переменная объекта
local slot_killer = db.actor:item_in_slot(6) -- переменная костюма
local object_2 = db.actor:object("killer_outfit") -- переменная объекта
if slot_stalker and slot_stalker:section() == "stalker_outfit" and object_1
= nil or
slot_killer and slot_killer:section() == "killer_outfit" and object_2
= nil then -- проверяем надет ли костюм сталкера\наемника
local hud = get_hud() -- худ
local custom_static = hud:GetCustomStatic("hud_gas")
if custom_static == nil then -- если худа нет, выдаем, если одет костюм
hud:AddCustomStatic("hud_gas", true)
end
else
local hud = get_hud()
local custom_static = hud:GetCustomStatic("hud_gas")
if custom_static
= nil then -- если худ есть, убираем при смене костюма
hud:RemoveCustomStatic("hud_gas", false)
end
end
end
Теперь зайдем в bind_stalker.script, который находится в gamedata\scripts, найдем функцию: function actor_binder:update(delta) и после пишем: xr_mask.hud_gas() в итоге:
function actor_binder:update(delta)
xr_mask.hud_gas()
object_binder.update(self, delta)
local time = time_global()
game_stats.update (delta, self.object)
Итак, заходим в директорию gamedata\config\ui, находим файл с названием ui_custom_msgs, открываем его и в самом конце перед строкой: </header> пишем:
<hud_gas x="0" y="0" width="1024" height="768" stretch="1">
<texture>hud\hud_gas</texture> -- текстура маски. Посмотрите внимательно в скрипте мы указывали '''hud_gas'''
</hud_gas>
Теперь заходим в gamedata\textures\ui, находим файл с названием ui_mainmenu.dds. Копируем его, заходим в gamedata\textures\hud вставляем его и переминуем в hud_gas.dds Открываем программой Adobe Photoshop и рисуем подходящую для вас маску.
ВНИМАНИЕ: СПОЙЛЕР!Конфиги, отвечающие за эту особенность, в файле gamedata\configs\misc\effectors.ltx:
[zoom_inertion_effector]
camera_move_epsilon = 0.03 ;разница между двумя векторами направления камера, когда считается что камера двинулась
disp_min = 0.01
speed_min = 0.00001
zoom_aim_disp_k = 1.0 ;коэффициенты соотношения полной дисперсии стрельбы
zoom_aim_speed_k = 0.0025 ;и покачивания прицела
delta_time = 3000 ;время через которое эффектор меняет направление движения (в милисекундах)
у меня лично стоит так:
[zoom_inertion_effector]
camera_move_epsilon = 0.03 ;разница между двумя векторами направления камера, когда считается что камера двинулась
disp_min = 0.02
speed_min = 0.0001
zoom_aim_disp_k = 1.18 ;коэффициенты соотношения полной дисперсии стрельбы
zoom_aim_speed_k = 0.0015 ;и покачивания прицела
delta_time = 1350 ;время через которое эффектор меняет направление движения (в милисекундах)
все настройки, связанные с ассортиментом торговцев в игре, находятся в файлах gamedata\configs\misc\trade_***.ltx
для всех остальных сталкеров - gamedata\configs\misc\trade_generic.ltx
Структура файла
Секция [trader_generic_buy]
Эта секция описывает какие товары торговец будет покупать.
Название предмета = минимальная цена покупки, максимальная цена покупки
Например:
wpn_vintorez = 0.5, 0.7Это значит что торговец купит оружие от 50% полной его стоимости до 70%, т.е. если Винторез стоит 1000, то торговец купит его в диапазоне от 500 до
700 рублей. Диапазон зависит от отношения торговца к Меченому - чем лучше, тем дороже купит
Секция [supplies_start]
Эта секция описывает какие товары у торговца будут вначале.
Название предмета = количество, вероятность появления
Например:
bandage = 5, 1Это значит что у торговеца всегда будут 5 бинтов, с 100 процентной вероятностью появления в магазине.
bandage = 5, 0.6 А тут уже вероятность появления 60%. Т.е. бинты не всегда будут.
Секция [supplies_after_***]
Тоже самое, что в секции [supplies_start], но после выполнения квестов торговца.
Секция [trader_start_sell]
Эта секция описывает за какую цену торговец будет продавать.
Название предмета = минимальная цена продажи, максимальная цена продажиНапример:
wpn_vintorez = 1, 2Это значит что торговец продаст оружие от 100% полной его стоимости до 200%, т.е. если Винторез стоит 1000, то торговец продаст его в диапазоне от
1000 до 2000 рублей. Диапазон зависит от отношения торговца к Меченому - чем лучше, тем дешевле продаст
Секция [trader_after_***_sell]
Тоже самое, что в секции [trader_start_sell], но после выполнения квестов торговца.
деньги торговцев правятся в character_desc_название локации.xml, например, в character_desc_escape.xml такая строка:
<money min="100000" max="100000" infinitive="1"/> (если infinitive="1" - бесконечные деньги)
Часть 1
Сложность: Легко
Как сделать простой диалог.
1. Открываем, например файл dialogs_escape.xml (gamedata/config/gameplay) и пишем в конец:
Это скелет диалога. В нём будут написаны все инфопоршни и actions.
<dialog - это название диалога, которое нужно будет написать НПС.
<phrase - номер фразы.
<text>test_dialog_0</text> - это текст фразы.
<next>?</next> - переход к фразе.
2. Теперь нужно написать тексты диалога. Заходим в файл "stable_dialogs_bar.xml" (gamedata/config/text/rus) и пишем в конце:
<string - это то, на что ссылается скелет диалога.
<text>Это тэстовый диалог</text> - собственно текст.
. ВНИМАНИЕ.
Все диалоги начинаются со слов Меченого.
3. Теперь нужно прописать этот диалог НПС. Например Бармену.
Открываем файл "character_desc_bar.xml" и находим секцию Бармена. Она идёт самой первой.
После всех
<actor_dialog>. </actor_dialog>
Прописываем свой:
<actor_dialog>test_dialog</actor_dialog>
Часть 2
Сложность:Средне
1. Открываем, например файл dialogs_escape.xml (gamedata/config/gameplay) и пишем в конец:
<next>2</next>
и
<next>3</next> это возможные ответы Меченого.
2. Теперь нужно написать тексты диалога. Заходим в файл "stable_dialogs_bar.xml" (gamedata/config/text/rus) и пишем в конце:
3.Чтобы этот диалог не появлялся, пишем инфопоршень. Например в файле info_l01escape.xml
4.Дописываем инфопоршень в скелет диалога:
<dont_has_info>test_pogovoril</dont_has_info> - если ГГ получил инфопоршень, диалог не показывать.
<give_info>test_pogovoril</give_info> - дать ГГ инфопоршень.
Получается, что когда ГГ скажет любую из 2 фраз, диалог больше не появится.
Часть 3
Сложность:Сложно
-Как сделать разные action в диалогах.
1.Создаём обычный диалог:
C такими текстами:
2.Создаём свой скрипт в папке gamedata/script например test.script и пишем в него 3 функции:
Код
function dat_dengi(first_speaker, second_speaker)
dialogs.relocate_money(second_speaker, 3000, "in")
end
Это функция отдачи денег ГГ. На месте 3000 любое число.
На месте dat_dengi любое название.
------------------------------------------------------------
Код
function dat_item(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "wpn_pm", "in")
end
Это функция отдачи предмета ГГ. На месте wpn_pm любой предмет.
На месте dat_item любое название.
------------------------------------------------------------
Код
function spawn_item_or_monster_or_stalker()
alife():create("wpn_pm",vector():set(pos),lvid,gvid)
end
Это функция спавна чего либо. На месте wpn_pm любой предмет,монстр или сталкер.
На месте (pos),lvid,gvid) любые координаты.
На месте spawn_item_or_monster_or_stalker любое название.
------------------------------------------------------------
Так же функция может быть одна, но с несколькими действиями.
Например:
Код
function all(first_speaker, second_speaker)
dialogs.relocate_money(second_speaker, 3000, "in")
dialogs.relocate_item_section(second_speaker, "wpn_pm", "in")
alife():create("wpn_pm",vector():set(pos),lvid,gvid)
end
Значит что одновременно ГГ дадут 3000 рублей, ПМ и по заданным координатам заспавнится ПМ.
------------------------------------------------------------
3.Впишем функции в диалог:
Это значит что после после фразы
<text>test_dialog_2</text>
ГГ дадут 3000руб.
Это значит что после после фразы
<text>test_dialog_3</text>
ГГ дадут ПМ.
Это значит что после после фразы
<text>test_dialog_3</text>
Заспавнится ПМ.
Часть 4
Сложность: Очень сложно
-Как сделать разные precondition в диалогах.
Прекондишоны - это проверки на появление диалога
1.Создаём обычный диалог:
C такими текстами:
Код
<string
<text>Тест прекондишонов.</text>
</string>
<string
<text>Какой?</text>
</string>
<string
<text>Эта фраза появляется если у ГГ есть . рублей.</text>
</string>
<string
<text>Эта фраза появляется если у ГГ есть . предмет.</text>
</string>
2.Создаём свой скрипт в папке gamedata/script например test.script и пишем в него 3
Код
function has_money_. ()
local money = math.floor(200 *
xr_statistic_freeplay.get_freeplay_statistic():get_found_pda_discount())
return db.actor:money()>=money
end
Это функция проверки количества денег ГГ. На месте 200 любое число.
На месте has_money_. любое название.
------------------------------------------------------------
Код
function has_item(task, objective)
if db.actor
= nil then
return db.actor:object("wpn_pm")
= nil
end
return false
end
Это функция проверки наличия какого либо предмета у ГГ. На месте wpn_pm любой предмет.
На месте has_item любое название.
------------------------------------------------------------
3.Впишем функции в диалог:
Это значит что фраза <text>test_dialog_2</text> появится если у ГГ есть 200рублей
Это значит что фраза <text>test_dialog_3</text> появится если у ГГ есть ПМ.
[af_medusa]:af_base ---Название артефакта
GroupControlSection = spawn_group ---хз
$spawn = "artifacts\moscito medusa" ---спаун
$prefetch = 64 -=-
cform = skeleton =-=Эти три строки не трогать.
class = ARTEFACT -=-
visual = physics\anomaly\artefact_blackdrip.ogf ----визуал артефакта
description = enc_zone_artifact_af-medusa ---описание
inv_name = af-medusa ---имя
inv_name_short = ---имя но короткое,в игре для артов не испоьлзуется
inv_weight = 0.5 ---вес
inv_grid_x = 9 -=-Координаты по оси Х
inv_grid_y = 4 -=-Координаты по оси У
jump_height = .5 ---высота прыжка
;подсветка арта
lights_enabled = true
trail_light_color = 2.5, 2.4, 0
trail_light_range = 1.0
;скорости увеличения (уменьшения) --- думаю обьяснять не нужно
health_restore_speed = 0.0
radiation_restore_speed = 0.0007
satiety_restore_speed = 0.0
power_restore_speed = 0.0
bleeding_restore_speed = 0.0
hit_absorbation_sect = af_medusa_absorbation
[af_medusa_absorbation] - а вот здесь загвоздочка.Допустим вы поставили burn_immunity = 2.0. а в игре заметили что она уменьшает на 100 защиту от ожогов.Ставить нужно наоборот,то есть.хочешь чтобы медуза давала 30 пулестойкости из 100-30=70.Ставишь на fire_wound_immunity = 0.70
burn_immunity = 1.0
strike_immunity = 0.97
shock_immunity = 1.0
wound_immunity = 1.0
radiation_immunity = 1.0
telepatic_immunity = 1.0
chemical_burn_immunity = 1.0
explosion_immunity = 1.0
fire_wound_immunity = 1.0
Рассмотрим костюм долга
;---------------------------------------------------------------------------------------------
; ОБЫЧНЫЙ КОСТЮМ ДОЛГА
;---------------------------------------------------------------------------------------------
[dolg_outfit]:outfit_base ---Название костюма в документах(в скриптах и ltx файлах)
GroupControlSection = spawn_group ---Этого я не знаю,и лучше не трогать,обычно вылет
discovery_dependency = ---Тоже какая то функция
$spawn = "outfit\dolg_outfit" ---Спаун,то есть,костюм лежащий на земле
;$prefetch = 32 ---ХЗ
class = E_STLK ---класс
cform = skeleton ---НЕ ТРОГАТЬ!
visual = equipments\dolg_suit ---Визуал костюма лежащий на земле
actor_visual = actors\hero\stalker_dolg.ogf ---Визуал НПС,В нашем случае ГГ
ef_equipment_type = 3 ---Опять же ХЗ
inv_name = dolg_outfit_name ---Название костюма
inv_name_short = dolg_outfit_name ---Название костюма(короткое)
description = dolg_outfit_description ---Описание(можно и не прописывать их в string_table,можно писать через кавычки.Ставьте "" и пишите описание костюма.Например: "Костюм долга,хорошая защита." Без кавычек пробелы не буду засчитыватся)
inv_weight = 7.0 ---ВЕС
inv_grid_width = 2 -=Эти четыре строки отвечают за иконку в инвентаре,не одетого костюма
inv_grid_height = 3 -=
inv_grid_x = 12 -=
inv_grid_y = 16 -=
full_icon_name = npc_icon_dolg_outfit ---Название иконки
cost = 15000 ---Цена
slot = 6 ---Слот для костюма.НЕ ТРОГАТЬ!
full_scale_icon = 8,11 ---иконка сталкера в костюме в полный рост
nightvision_sect = effector_nightvision_good ---Прибор ночного видения
immunities_sect = sect_dolg_outfit_immunities ---Название иммунитета,для нового костюма введите свой вместо dolg_outfit
ЭТО ЗАЩИТА КОТОРУЮ ДАЕТ КОСТЮМ
burn_protection = 0.1 = Ожог
strike_protection = 0.1 = Удар
shock_protection = 0.1 = Электрошок
wound_protection = 0.1 = Разрыв
radiation_protection = 0.1 = Радиация
telepatic_protection = 0.1 = Телепатия
chemical_burn_protection = 0.1 = Хим.ожог
explosion_protection = 0.1 = Взрыв
fire_wound_protection = 0.1 = Пулестойкость
additional_inventory_weight = 13 ---Дополнительный переносимый вес
additional_inventory_weight2 = 13 ---Дополнительный переносимый вес второй,но ставьте как на первом
bones_koeff_protection = kombez_antigas_damage ---ХЗ,но если делать костюм со средней защитой ставьте такой.Научу ниже
[sect_dolg_outfit_immunities]
burn_immunity = 0.03 ---коэффициенты иммунитета самого костюма(чем меньше значение,тем медленнее костюм портиться.Если на все поставить 0.0 костюм не будет портиться никогда)
strike_immunity = 0.01
shock_immunity = 0.03
wound_immunity = 0.015
radiation_immunity = 0.00
telepatic_immunity = 0.00
chemical_burn_immunity = 0.03
explosion_immunity = 0.03
fire_wound_immunity = 0.01
Обещал рассказать что такое Бонес коэфф протекшн
bones_koeff_protection = kombez_antigas_damage
Оно отвечает за то,как сильно будет защищать костюм.Если например поставить вместо: kombez_antigas_damage ,вот это: kurtka_mask_damage,то сколько бы ты не ставил защиту,она будет слабой.А если поставить exo_helmet_damage то будет высокая защита.Поставите очень много защиты,вы будете бессмертны,и костюм будет защищать вас очень хорошо(то есть,бывает например,оденешь экзоскелет,и иногда пули попадают и наносят совсем крохотный урон.Вот,если поставить экзо хелмет то такие маленьки уроны будут чаще,а если поставить куртка маск то такие случаи будут редкими.)
Все,можете приступать к созданию ваших костюмов,при это зная,в каком документе лежат новые костюмы.
Как установить моды на сталкер? Этот вопрос задают себе фанаты игры Сталкер уже много лет. Конечно, модификации не всегда бывают качественные, большинство откровенно говоря вообще не вызывают интереса у игроков. Мы на нашем сайте старались отбирать для вас только лучшие моды сталкер, которые практически не имеют вылетов, имеют оригинальный сюжет, и их не хочется выключить через 5 минут после установки. В этой статье мы расскажем о том как же установить моды на оригинальный сталкер.
Есть два варианта установки модификаций:
1. Первый вариант достаточно простой, он подходит для глобальных серьёзных модификаций: например Call of Chernobyl или Народная Солянка. В эти моды уже добавлен движок, предустановка оригинальных частей Сталкера не требуется. Для установки нужно просто скачать сборку репак мода, распаковываете файлы любым архиватором (можно WinRar или другие), кликаете левой кнопкой мыши по setup.exe или install.exe. Далее следуете подсказкам установщика. Укажите папку в которую хотите установить игру, дождитесь завершения установки. Далее остаётся только запустить игру через пуск или найти ярлык на рабочем столе.
2. Второй вариант немного сложнее. Перед скачиванием прочитайте внимательно описание мода, узнаёте для какой игры он подходит. Если мод например создавался на платформе Тень Чернобыля, то у вас на компьютере должная стоять чистая версия игры(без других модов) пропатченная до последней версии. Для Тень Чернобыля это версия 1.0006. Распакуйте файлы из архива с модом любым архиватором. Там скорее всего будет две папки это bin и gamedata. Их и нужно переместить в папку с игрой. Согласитесь с заменой всех файлов. Обязательно запускайте новую игру, старые сохранения работать не будут! На этом всё! Фиксы, правки, устанавливаются уже после установки самого мода.
На нашем сайте можно скачать оригинальные игры серии Сталкер(пропатченные), подходящих для установки сталкер модов.
Если статья оказалась полезна, поделитесь ей в соц.сетях если не затруднит;)
Читайте также: