Структура файлів і папок, чорний сталкер

Розглянемо, що-ж міститься в папці gamedata:

Папка ai - в ній містяться файли типу * .efd, через які очевидно управляється штучний інтелект тих же npc наприклад.

Папка anims - тут і так все зрозуміло, ігрова анімація, а також ефекти камери.

Папка config містить в собі багато ігрові параметри, до неї ми ще повернемося.

Папка levels - це ігрові рівні, ака локації, на які поділена гра (як карти в CS)

Папка meshes - ігрові моделі, в форматі .ogf

Папка scripts - скрипти

Папка shaders - шейдери, для двох рендерів (DX8 і 9)

Папка sounds - звуки і музика, кіт. використовуються в грі. Формат .ogg *

Папка spawns - відповідає за найжахливішу річ в грі - респаун супротивників і ін. Людей, тварин.

Папка textures - в ній містяться текстури будинків, зброї, монстрів і ін. Формат - .dds (DirectDraw Surface Image)

game.graph, gamemtl.xr, lanims.xr, particles.xr, resource.h, senvironment.xr, shaders.xr, shaders_xrlc.xr, stalkergame.inf.

У звуках, до речі, можна знайти багато цікавого, наприклад: в папці sounds \ car містяться звуки машин (яких в грі немає), а sounds \ music \ harmonica_1.ogg - файл губної гармошки. Ах так, мало не забув, найголовніший лол, це файл sounds \ car \ trabantnoise.ogg

Введення в моддінг:

Саме з папкою config доведеться працювати для редагування багатьох параметрів гри.

Але почнемо спочатку:

Перед тим, як почати редагування файлів гри, потрібно в каталог Сталкера помістити ту саму папку gamedata, в яку були вилучені ігрові файли.

* Всі файли нам не знадобляться, тому можна залишити тільки папки config, scripts (а конкретно файл se_respawn ***** ipt), textures, sounds, а все інше видалити (а можна і не видаляти)

Також хочу зауважити, що якщо розпакувати всі архіви .dbN в папку з грою, то це може дати кілька додаткових FPS.

se_respawn ***** ipt - файл, який відповідає за респаун. Час респауна можна зменшити, шляхом невеликих змін в цьому файлі. Він відкривається звичайним блокнотом (notepad). Шукаємо в ньому рядок

idle_time: setHMSms (0, 0, 0, math.random (self.idle_spawn_min, self.idle_spawn_max) * 1000)

idle_time: setHMSms (math.random (X, Y), 0, 0, math.random (self.idle_spawn_min, self.idle_spawn_max) * 1000)

де X і Y - числа, задають діапазон випадкової змінної в годиннику відповідає за респаун.

Будь-який файл в папці sounds можна замінити на інший, але при цьому потрібно зберегти всі параметри звукового файлу, який був використаний в грі. Наприклад, щоб замінити музику в приймачі у Сидоровича, потрібно файл sounds \ scripts \ magnitofon \ magnitofon_2.ogg, замінити на будь-який інший. (У оригінального файлу вінамп мені видав властивості:

Average bitrate. 60 kbps

Nominal bitrate. 80 kbps

Sampling rate: 44100 Hz.

Параметри зброї ви можете знайти в папці config \ weapons, файли типу w_ak74.ltx відкриваються теж блокнотом. Розберемо вміст файлу наприклад w_groza.ltx

По-перше варто звернути увагу на значення пременной (буду їх так називати) cost, це ціна зброї, тобто скільки гроза буде коштувати у продавця.

Мінлива weapon_class означає, до якого класу належить зброя, в даному випадку - assault_rifle.

ammo_limit - ліміт боєприпасів (в грі по-моєму не використовується)

ammo_mag_size - розмір магазину. Можна поставити наприклад 900, тоді про перезарядку можна зовсім не згадувати.

ammo_class - клас патронів, використовуваних зброєю. Тут [/ b] ammo_9x39_pab9 [/ b], ammo_9x39_sp5, ammo_9x39_ap.

hit_power - сила зброї. Чим більше тим краще

silencer_hit_power - сила зброї, коли на нього одягнений глушник.

misfire_probability - ймовірність осічки при максимальному зносі.

condition_shot_dec - збільшення зносу при кожному пострілі.

visual - модель зброї.

zoom_enabled - чи підтримується оптика.

actor.ltx - параметри головного героя. У цій же папці знаходяться файли з параметрами npc, монстрів і ін.

Розглянемо деякі змінні на прикладі actor.ltx

visual - модель персонажа.

max_walk_weight - максимальна вага, при досягненні якого гравець перестає рухатися.

pickup_info_radius - радіус від ГГ, в котрому над предметами виводяться їх назви.

camera_height_factor - висота ГГ. За замовчуванням варто 0.85, але можна збільшити зростання ГГ до 0.95 наприклад.

disp_base - розкид. Якщо зменшувати, то і розліт зменшується відповідно.

wound_incarnation_v - швидкість загоєння рани.

cant_sprint_power_begin - поріг сили менше якого актор не може бігти в спринті.

Ці рядки відповідають за вірогідність попадання по вам, при різних рівнях складності. Хочете щоб вороги стріляли не надто влучно, зменшуйте значення.

start_blood_size - розмір рани щоб почала капати кров.

stop_blood_size - розмір рани щоб кров зупинилася.

max_weight - вага, з яким ГГ може бігти.

На додаток до конфігам зброї:

cвойства патронів знаходяться в файлі weapons.ltx, а бронежилетів - в outfit.ltx.

Властивості артефактів знаходяться в файлі artefacts.ltx і файлах zone_ART.ltx, предметів - items. ltx,

де ART - назва артефакту (наприклад zone_gravi.ltx).

health_restore_speed - швидкість відновлення здоров'я (0.0001 = + 100%)

radiation_restore_speed - швидкість накопичення радіації (0.0004 = 4). Якщо поставити негативне число, то артефакт буде прискорювати виведення радіації.

idle_particles - якщо закоментіть її символами «-« -, то аномалія зникне. Щоб відключити звукове сповіщення, то знаходимо рядок visible_by_detector і міняємо on на off.

chemical_burn_immunity - хімічний опік.

У цьому файлі в квадратних дужках написаний той предмет, чиї параметри йдуть нижче, за квадр. дужками. Наприклад: [kolbasa]: identity_immunities.

Параметри на прикладі ковбаси:

class - до якого класу належить предмет.

eat_health - скільки відновлює здоров'я. (якщо буде 0, то ковбаса лікувати не буде.)

eat_power - скільки відновлює сили.

eat_radiation - скільки виводить / або додає радіації. (Щодо цього не впевнений, треба тестувати.)

inv_weight - вага предмета.

actor_visual - модель костюма.

inv_weight - вага костюма.

cost - ціна костюма.

коефіцієнти імунітету самого костюма:

burn_immunity см. ко.

burn_protection - коефіцієнт захисту від вогню

strike_protection - коефіцієнт захисту від куль

shock_protection - коефіцієнт захисту від блискавок

wound_protection - коефіцієнт захисту від кровотеч (?)

radiation_protection - коефіцієнт захисту від радіації

telepatic_protection - коефіцієнт захисту від телепатії

chemical_burn_protection - коефіцієнт захисту від хім. опіків.

explosion_protection - коефіцієнт захисту від вибуху

fire_wound_protection - коефіцієнт захисту від кровотеч (від вогню)