→ Модостроение → Модостроение
_715_Murad185 29 авг 2014
Создание модификаций для начинающих
Как вы наверно заметили, в папке с игрой содержатся несколько файлов типа gamedata.dbN , где N – это число или буква. Это игровые архивы, в которые запакованы все файлы конфигураций, видеоролики, музыка, звуки, скрипты и прочее. Можно их править HEX-editor’ом, но лучше скачать специальную утилитку и распаковать в отдельную папку(с именем gamedata, позже поймёте почему) их содержимое. Вот после этого можно начать разгребать весь тот мусор, который вы извлекли.
Все конфиги редактировать можно с помощью Блокнота или Нотепада.
• Структура файлов и папок
• Введение в моддинг
• Как изменить переносимый вес
• Как сделать бессмертие
• Изменяем высоту прыжка ГГ
• config/creatures
• config/system.ltx
• Изменяем время голодания
• Длина "палочки" прицела
• Параметры бега
• Параметры сложности
• Редактирование тайников
• Как поменять плату за проход под мостом на Кордоне
• Как включить функцию "лечение едой"
• Как вернуть свечение артефактов как в оригинальной игре?
• Броня
• Где находятся конфиги уникального оружия?
• Файлы тайников
• Ячейки под артефакты
• Респаун
• Звуки и музыка
• config/weapons
• config/misc.ltx
• items.ltx
• оutfit.ltx
• Где находятся имена НПС для генерации?
• Как сделать возможность, чтоб к примеру ногу кабана можно было съесть?
• Реализуем стрельбу трассерами
• Как присобачить к оружию оптику, глушитель, подствольник?
• Как сделать так, чтоб не убиралось из рук оружие в некоторых локациях?
• Объекты, которые можно перемещать
• Создание рандомного выбора муз. заставки главного меню
Все конфиги редактировать можно с помощью Блокнота или Нотепада.
• Структура файлов и папок
Рассмотрим, что-же содержится в папке 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.
Папка 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.
• Введение в моддинг
Именно с папкой config придётся работать для редактирования
многих параметров игры.
многих параметров игры.
• Как изменить переносимый вес
Начнем. Для того чтобы изменить переносимый вес нам необходимо 2 файла это:
gamedata\config\creatures\actor.ltx
gamedata\config\system.ltx
Займемся файлом actor.ltx открываем файл блокнотом, ну или как вам удобно. Ищем строку max_walk_weight
Изменяем max_walk_weight = 500
С этим файлом все.
Открываем system.ltx также ищем строку max_weight = 50 и меняем на max_weight = 500
gamedata\config\creatures\actor.ltx
gamedata\config\system.ltx
Займемся файлом actor.ltx открываем файл блокнотом, ну или как вам удобно. Ищем строку max_walk_weight
Изменяем max_walk_weight = 500
С этим файлом все.
Открываем system.ltx также ищем строку max_weight = 50 и меняем на max_weight = 500
• Как сделать бессмертие
Нужен лишь один файл gamedata\config\creatures\actor.ltx
В нем находишь вот это: actor_immunities_gd_xxxxx (xxxxx - это уровень сложности на каком ты играешь, например master) и меняешь цифры на 0 - ГГ будет бессмертным.
Пример:
[actor_immunities_gd_xxxxx]
burn_immunity = 0.0 ;коэффициенты иммунитета
strike_immunity = 0.0
shock_immunity = 0.0
wound_immunity = 0.0
radiation_immunity = 0.0
telepatic_immunity = 0.0
chemical_burn_immunity = 0.0
explosion_immunity = 0.0
fire_wound_immunity = 0.0
В нем находишь вот это: actor_immunities_gd_xxxxx (xxxxx - это уровень сложности на каком ты играешь, например master) и меняешь цифры на 0 - ГГ будет бессмертным.
Пример:
[actor_immunities_gd_xxxxx]
burn_immunity = 0.0 ;коэффициенты иммунитета
strike_immunity = 0.0
shock_immunity = 0.0
wound_immunity = 0.0
radiation_immunity = 0.0
telepatic_immunity = 0.0
chemical_burn_immunity = 0.0
explosion_immunity = 0.0
fire_wound_immunity = 0.0
• Изменяем высоту прыжка ГГ
В файле actor.ltx в папке gamedata\config\creatures, найди параметр jump_speed и задай ему нужную тебе величину, чем больше тем выше ГГ будет прыгать.
• config/creatures
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 - порог силы меньше которого актер не может бежать в спринте.
hit_probability_gd_novice
hit_probability_gd_stalker
hit_probability_gd_veteran
hit_probability_gd_master
Эти строчки отвечают за вероятность попадания по вам, при разных уровнях сложности. Хотите чтобы враги стреляли не очень метко, уменьшайте значения.
Также в файле присутствуют комментарии на русском языке, так что разобраться в остальных переменных не составит труда.
Рассмотрим некоторые переменные на примере 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 - порог силы меньше которого актер не может бежать в спринте.
hit_probability_gd_novice
hit_probability_gd_stalker
hit_probability_gd_veteran
hit_probability_gd_master
Эти строчки отвечают за вероятность попадания по вам, при разных уровнях сложности. Хотите чтобы враги стреляли не очень метко, уменьшайте значения.
Также в файле присутствуют комментарии на русском языке, так что разобраться в остальных переменных не составит труда.
• config/system.ltx
start_blood_size - размер раны чтоб начала капать кровь.
stop_blood_size - размер раны чтоб кровь остановилась.
max_weight – вес, с которым ГГ может бежать.
stop_blood_size - размер раны чтоб кровь остановилась.
max_weight – вес, с которым ГГ может бежать.
• Изменяем время голодания
В actor.ltx поменял:
satiety_v = 0.000005 на 0.000025
теперь есть нужно почаще, раз в 4-6 часов, соответственно батоны не лишний вес в рюкзаке, порой и за кусок хлеба драться придется
satiety_health_v = 0.0001 на 0.00001
satiety_v = 0.000005 на 0.000025
теперь есть нужно почаще, раз в 4-6 часов, соответственно батоны не лишний вес в рюкзаке, порой и за кусок хлеба драться придется
satiety_health_v = 0.0001 на 0.00001
• Длина "палочки" прицела
в файле system.ltx есть строка
cross_length = 0.005 ;длина "палочки" прицела (0.6 - 0.015)
файл находится gamedata\config
cross_length = 0.005 ;длина "палочки" прицела (0.6 - 0.015)
файл находится gamedata\config
• Параметры бега
max_item_mass = ; необходимо изменить также параметр max_weight в system.ltx
jump_speed = ;высота прыжка
crouch_coef = ;скорость передвижения главного героя на корточках
climb_coef = ;скорость перемещения гг по лестницам
run_coef = ;скорость обычного бега
sprint_koef = ;коеффициент, умножая на который, получаем скорость бега в спринте
run_back_coef = ;коеффициент, умножая на который, получаем скорость бега спиной вперед
walk_back_coef = ;коеффициент, умножая на который, получаем скорость движения спиной вперед
air_control_param = ;
walk_accel = ;
jump_speed = ;высота прыжка
crouch_coef = ;скорость передвижения главного героя на корточках
climb_coef = ;скорость перемещения гг по лестницам
run_coef = ;скорость обычного бега
sprint_koef = ;коеффициент, умножая на который, получаем скорость бега в спринте
run_back_coef = ;коеффициент, умножая на который, получаем скорость бега спиной вперед
walk_back_coef = ;коеффициент, умножая на который, получаем скорость движения спиной вперед
air_control_param = ;
walk_accel = ;
• Параметры сложности
hit_probability_gd_novice = 0.20 Пули, попадающие в цель и выпущенные NPC. Уровень игры "Новичок" - меткость NPC 20%
hit_probability_gd_stalker = 0.30 - меткость NPC 30%
hit_probability_gd_veteran = 0.40 - меткость NPC 40%
hit_probability_gd_master = 0.50 - 50% пуль, выпущенные НПС, попадают в цель
В частности, если прописать эти 4-ре параметра "hit_probability_gd_*" в каждый файл с оружием "wpn_*.ltx", то в результате npc из разного оружия будут стрелять с разной точностью, с той, которую вы укажете для разного уровня сложности игры.
hit_probability_gd_stalker = 0.30 - меткость NPC 30%
hit_probability_gd_veteran = 0.40 - меткость NPC 40%
hit_probability_gd_master = 0.50 - 50% пуль, выпущенные НПС, попадают в цель
В частности, если прописать эти 4-ре параметра "hit_probability_gd_*" в каждый файл с оружием "wpn_*.ltx", то в результате npc из разного оружия будут стрелять с разной точностью, с той, которую вы укажете для разного уровня сложности игры.
• Редактирование тайников
Частота выпадения:
treasure_manager.sсript - редактируешь его получаешь частоту выпадание тайников - 65 меняй на что-нить допустим на 10...
Редактирование содержимого:
treasure_manager.ltx в «миске» и во 4 строчке прописываешь, что ты хочешь, получится должно получится примерно так :
[esc_secret_bridge_vagon]
target = 5000
name = esc_secret_0000_name
desсription = esc_secret_0000_descr
items = ammo_5.45x39_ap,190,medkit_army,6, wpn_addon_scope,wpn_ak74u_m1,stalker_m1,outfit_specnaz_m1, wpn_groza_m1,wpn_spas12_m1,wpn_lr300_m1,wpn_svd_m1,wpn_sig_m1,wpn_colt_m1,wpn_val_m1,wpn_rg6_m1,outf it_dolg_m1
treasure_manager.sсript - редактируешь его получаешь частоту выпадание тайников - 65 меняй на что-нить допустим на 10...
Редактирование содержимого:
treasure_manager.ltx в «миске» и во 4 строчке прописываешь, что ты хочешь, получится должно получится примерно так :
[esc_secret_bridge_vagon]
target = 5000
name = esc_secret_0000_name
desсription = esc_secret_0000_descr
items = ammo_5.45x39_ap,190,medkit_army,6, wpn_addon_scope,wpn_ak74u_m1,stalker_m1,outfit_specnaz_m1, wpn_groza_m1,wpn_spas12_m1,wpn_lr300_m1,wpn_svd_m1,wpn_sig_m1,wpn_colt_m1,wpn_val_m1,wpn_rg6_m1,outf it_dolg_m1
• Как поменять плату за проход под мостом на Кордоне
В файле gamedata\sсripts\escape_dialog.sсript
Почти в самом конце функции has_soldiers_bribe и give_soldiers_bribe, увеличил 500 до 5000.
Почти в самом конце функции has_soldiers_bribe и give_soldiers_bribe, увеличил 500 до 5000.
• Как включить функцию "лечение едой"
В папке gamedata\config\misc находишь файл items.ltx в нем находиш секции [bread], [kolbasa], [conserva] и для каждой из них там есть параметр eat_health который нужно увеличить до нужных тебе значений. По дефолту для bread, eat_health = 0.05, для kolbasa 0.1 и для conserva 0.15
• Как вернуть свечение артефактов как в оригинальной игре?
В файле artefacts.ltx во всех строках, начинающихся с ;particles убрать ;
• Броня
В файле outfits.ltx находишь нужную броню и вписываешь эту строку.
sprint_allowed = false
sprint_allowed = true - чтобы нельзя было бегать
sprint_allowed = false
sprint_allowed = true - чтобы нельзя было бегать
• Где находятся конфиги уникального оружия?
файл unique.ltx - там прописаны отличия от оригиналов. Там и правь.
Например береш Грозу 5.45
ammo_mag_size = хх
теперь меняеш параметр как надо и копируеш его под параметры которые стоят для модификата Грозы все выглядит так:
Например береш Грозу 5.45
[wpn_groza_m1]:wpn_groza ;Гроза генерала Воронина
$spawn = "weaponsuniqwpn_groza_m1"
desсription = enc_weapons1_wpn-groza_m1
inv_name = wpn-groza_m1
inv_name_short = wpn-groza_m1
ammo_class = ammo_5.45x39_fmj, ammo_5.45x39_ap
condition_shot_dec = 0.00005
inv_grid_x = 5
inv_grid_y = 29
тебе надо изменить например емкость магазина тепер идешь в оригинал файл Грозы (не модификации) и копируешь оттуда параметр:$spawn = "weaponsuniqwpn_groza_m1"
desсription = enc_weapons1_wpn-groza_m1
inv_name = wpn-groza_m1
inv_name_short = wpn-groza_m1
ammo_class = ammo_5.45x39_fmj, ammo_5.45x39_ap
condition_shot_dec = 0.00005
inv_grid_x = 5
inv_grid_y = 29
ammo_mag_size = хх
теперь меняеш параметр как надо и копируеш его под параметры которые стоят для модификата Грозы все выглядит так:
[wpn_groza_m1]:wpn_groza ;Гроза генерала Воронина
$spawn = "weaponsuniqwpn_groza_m1"
desсription = enc_weapons1_wpn-groza_m1
inv_name = wpn-groza_m1
inv_name_short = wpn-groza_m1
ammo_class = ammo_5.45x39_fmj, ammo_5.45x39_ap
condition_shot_dec = 0.00005
inv_grid_x = 5
inv_grid_y = 29
ammo_mag_size = хх
$spawn = "weaponsuniqwpn_groza_m1"
desсription = enc_weapons1_wpn-groza_m1
inv_name = wpn-groza_m1
inv_name_short = wpn-groza_m1
ammo_class = ammo_5.45x39_fmj, ammo_5.45x39_ap
condition_shot_dec = 0.00005
inv_grid_x = 5
inv_grid_y = 29
ammo_mag_size = хх
• Файлы тайников
Файл отвечающий за тайники называется treasure_manager.ltx
Второй называется treasure_manager.sсript - отвечает за выдачу.
Второй называется treasure_manager.sсript - отвечает за выдачу.
• Ячейки под артефакты
Делается просто - два файла менять всего надо, файл system.ltx, секция inventory, в АМК моде она вообще в отдельный файл вынесена - inventory_sect.ltx называется. Там всего пять строчек:
cell_width = "52" cell_height="52" rows_num="2" cols_num="3"/>
Это так в моде АМК. Красным выделил ряды и колонки. То есть у нас есть два ряда по три колонки. Делаем маленько по-другому:
cell_width = "52" cell_height="52" rows_num="2" cols_num="8"/>
Теперь рисоваться будет 16 ячеек, и в каждую можно артефакт засунуть.
[inventory]
take_dist = 2
max_weight = 80
max_ruck = 56
max_belt = 6 //16
slots = 11
Надо на вот что изменить: (заметьте, за двойным слешем стоит 16 - это количество слотов под атрефакты хотели сделать сами разработчики игры, потом переделали на 5, а команда АМК - на шесть):take_dist = 2
max_weight = 80
max_ruck = 56
max_belt = 6 //16
slots = 11
[inventory]
take_dist = 2
max_weight = 80
max_ruck = 56
max_belt = 16
slots = 11
Дальше надо изменить рисунок ячеек в инвентаре, чтобы ячеек рисовалось не 6, а 16, по восемь в два ряда, типа как в АМК рисуется по три в два ряда. Делаем так: Берём файл inventory_new.xml, из папки gamedata\config\ui, открываем его, находим секцию:take_dist = 2
max_weight = 80
max_ruck = 56
max_belt = 16
slots = 11
cell_width = "52" cell_height="52" rows_num="2" cols_num="3"/>
Это так в моде АМК. Красным выделил ряды и колонки. То есть у нас есть два ряда по три колонки. Делаем маленько по-другому:
cell_width = "52" cell_height="52" rows_num="2" cols_num="8"/>
Теперь рисоваться будет 16 ячеек, и в каждую можно артефакт засунуть.
• Респаун
se_respawn.script – файл, отвечающий за респаун. Время респауна можно уменьшить, путём небольших изменений в этом файле. Он открывается обычным блокнотом(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 - числа, задают диапазон случайной переменной в часах отвечающей за респаун.
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\sсripts\magnitofon\magnitofon_2.ogg, заменить на любой другой.(У оригинального файла винамп мне выдал свойства:
Average bitrate : 60 kbps
Nominal bitrate : 80 kbps
Channels : 1
Sampling rate: 44100 Hz
Nominal bitrate : 80 kbps
Channels : 1
Sampling rate: 44100 Hz
• config/weapons
Параметры оружия вы можете найти в папке config\weapons, файлы типа w_ak74.ltx открываются тоже блокнотом. Разберём содержимое файла например w_groza.ltx
Во первых стоит обратить внимание на значение пременной(буду их так называть) cost, это цена оружия, т.е. сколько гроза будет стоить у продавца.
Переменная weapon_class означает, к какому классу относится оружие, в данном случае - assault_rifle.
ammo_limit – лимит боеприпасов(в игре по-моему не используется)
ammo_mag_size – размер магазина. Можно поставить например 900, тогда о перезарядке можно совсем не вспоминать.
ammo_class – класс патронов, используемых оружием. Здесь ammo_9x39_pab9, ammo_9x39_sp5, ammo_9x39_ap.
hit_power – сила оружия. Чем больше, тем лучше
silencer_hit_power - сила оружия, когда на него одет глушитель.
misfire_probability - вероятность осечки при максимальном износе.
condition_shot_dec - увеличение износа при каждом выстреле.
visual – модель оружия.
zoom_enabled - поддерживается ли оптика.
В дополнение к конфигам оружия:
свойство патронов находятся в файле weapons.ltx, а бронежилетов – в outfit.ltx.
Во первых стоит обратить внимание на значение пременной(буду их так называть) cost, это цена оружия, т.е. сколько гроза будет стоить у продавца.
Переменная weapon_class означает, к какому классу относится оружие, в данном случае - assault_rifle.
ammo_limit – лимит боеприпасов(в игре по-моему не используется)
ammo_mag_size – размер магазина. Можно поставить например 900, тогда о перезарядке можно совсем не вспоминать.
ammo_class – класс патронов, используемых оружием. Здесь ammo_9x39_pab9, ammo_9x39_sp5, ammo_9x39_ap.
hit_power – сила оружия. Чем больше, тем лучше
silencer_hit_power - сила оружия, когда на него одет глушитель.
misfire_probability - вероятность осечки при максимальном износе.
condition_shot_dec - увеличение износа при каждом выстреле.
visual – модель оружия.
zoom_enabled - поддерживается ли оптика.
В дополнение к конфигам оружия:
свойство патронов находятся в файле weapons.ltx, а бронежилетов – в outfit.ltx.
• config/misc.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.
Иммунитеты:
strike_immunity - удар.
shock_immunity - электрошок.
chemical_burn_immunity - химический ожог.
telepatic_immunity - телепатия.
radiation_immunity - радиация.
wound_immunity - разрыв.
explosion_immunity - взрыв.
fire_wound_immunity - огнестрел.
где ART – название артефакта(например zone_gravi.ltx).
Параметры артефактов:
health_restore_speed - скорость восстановления здоровья (0.0001 = +100%)
radiation_restore_speed - скорость накопления радиации (0.0004 = 4). Если поставить отрицательное число, то артефакт будет ускорять выведение радиации.
idle_particles – если закоментить её символами «--« -, то аномалия исчезнет. Чтобы отключить звуковое оповещение, то находим строку visible_by_detector и меняем on на off.
Иммунитеты:
strike_immunity - удар.
shock_immunity - электрошок.
chemical_burn_immunity - химический ожог.
telepatic_immunity - телепатия.
radiation_immunity - радиация.
wound_immunity - разрыв.
explosion_immunity - взрыв.
fire_wound_immunity - огнестрел.
• items.ltx
Параметры предметов:
В этом файле в квадратных скобках написан тот предмет, чьи параметры идут ниже, за квадр. скобками. Например: [kolbasa]:identity_immunities.
Параметры на примере колбасы:
class – к какому классу принадлежит предмет.
visual – модель.
cost – цена.
eat_health – сколько восстанавливает здоровья.(если будет 0, то колбаса лечить не будет.)
eat_power - сколько восстанавливает силы.
eat_radiation - сколько выводит/или добавляет радиации. (Насчёт этого не уверен, надо тестить.)
inv_weight – вес предмета.
В этом файле в квадратных скобках написан тот предмет, чьи параметры идут ниже, за квадр. скобками. Например: [kolbasa]:identity_immunities.
Параметры на примере колбасы:
class – к какому классу принадлежит предмет.
visual – модель.
cost – цена.
eat_health – сколько восстанавливает здоровья.(если будет 0, то колбаса лечить не будет.)
eat_power - сколько восстанавливает силы.
eat_radiation - сколько выводит/или добавляет радиации. (Насчёт этого не уверен, надо тестить.)
inv_weight – вес предмета.
• оutfit.ltx
Параметры костюмов:
actor_visual – модель костюма.
inv_weight – вес костюма.
cost – цена костюма.
Коэффициенты иммунитета самого костюма:
actor_visual – модель костюма.
inv_weight – вес костюма.
cost – цена костюма.
Коэффициенты иммунитета самого костюма:
; NO RESISTANCE
burn_protection - коэффициент защиты от огня
strike_protection - коэффициент защиты от пуль
shock_protection - коэффициент защиты от молний
wound_protection - коэффициент защиты от кровотечений (?)
radiation_protection - коэффициент защиты от радиации
telepatic_protection - коэффициент защиты от телепатии
chemical_burn_protection - коэффициент защиты от хим. ожогов.
explosion_protection - коэффициент защиты от взрыва
fire_wound_protection - коэффициент защиты от кровотечений(от огня)
nightvision_sect – тип ночного видения(плохой/хороший). Если ПНВ нету, то строку добавить, если его нужно убрать, строку закомментируйте(--).
burn_protection - коэффициент защиты от огня
strike_protection - коэффициент защиты от пуль
shock_protection - коэффициент защиты от молний
wound_protection - коэффициент защиты от кровотечений (?)
radiation_protection - коэффициент защиты от радиации
telepatic_protection - коэффициент защиты от телепатии
chemical_burn_protection - коэффициент защиты от хим. ожогов.
explosion_protection - коэффициент защиты от взрыва
fire_wound_protection - коэффициент защиты от кровотечений(от огня)
nightvision_sect – тип ночного видения(плохой/хороший). Если ПНВ нету, то строку добавить, если его нужно убрать, строку закомментируйте(--).
• Где находятся имена НПС для генерации?
Для тех кто хочет слегка покопаться ручками.
Секции:
string id="lname_bandit_хх - бандиты
string id="lname_captain_хх - капитаны
string id="lname_lieutenant_хх - лейтенанты
string id="lname_private_хх - рядовые
string id="lname_science_хх - учёные
string id="lname_sergeant_хх - сержанты
string id="lname_stalker_хх - сталкеры
string id="Osoznanie" - О-сознание
Секции:
string id="lname_bandit_хх - бандиты
string id="lname_captain_хх - капитаны
string id="lname_lieutenant_хх - лейтенанты
string id="lname_private_хх - рядовые
string id="lname_science_хх - учёные
string id="lname_sergeant_хх - сержанты
string id="lname_stalker_хх - сталкеры
string id="Osoznanie" - О-сознание
• Как сделать возможность, чтоб к примеру ногу кабана можно было съесть?
Открываем файл gamedata\config\misc\monster_items.ltx
Находим секцию [mutant_boar_leg]
И меняем параметр class = II_ATTCH на class = II_FOOD
Нога съедается на раз, но эффект 0, поэтому добавляем:
Находим секцию [mutant_boar_leg]
И меняем параметр class = II_ATTCH на class = II_FOOD
Нога съедается на раз, но эффект 0, поэтому добавляем:
eat_health = 1.0
eat_satiety = 0
eat_power = 0
eat_radiation = 0.3
wounds_heal_perc = 0
eat_alcohol = 0
eat_portions_num = -1
Теперь нога лечит как аптечка ученых, но из-за нее повышаться радиация eat_satiety = 0
eat_power = 0
eat_radiation = 0.3
wounds_heal_perc = 0
eat_alcohol = 0
eat_portions_num = -1
• Реализуем стрельбу трассерами
В файле weapons ltx найди строку time_step =1; 33 и убери единицу с точкой запятой и будет тебе счастье.
Больше ничего менять не надо.
Больше ничего менять не надо.
• Как присобачить к оружию оптику, глушитель, подствольник?
Находим в файле оружия строку ;addons и пишем после(без комментариев естественно(или перед ними ставьте + значения после знака = можно менять):
;addons
scope_status = 2 0- нет,1 - несъемный, 2 - можно ставить прицел
silencer_status = 0 - 0 - нет,1 - несъемный, 2 - можно ставить глушитель
grenade_launcher_status= 0 - 0 - нет,1 - несъемный, 2 - можно ставить подствольник
zoom_enabled = true Вкл/выкл возможность зума
scope_zoom_factor = 50 значение зума
scope_name = wpn_addon_scope название прицепляемого прицела
scope_x = 47 положение прицела на картинке, x
scope_y = 0 положение прицела на картинке, y
silencer_name = wpn_addon_silencer название глушителя
silencer_x = 218 положение глушителя на картинке, x
silencer_y = 9 положение глушителя на картинке, y
grenade_launcher_name= wpn_addon_grenade_launcher название подствольника
grenade_launcher_x = 126 положение подствольника на картинке, x
grenade_launcher_y = 24 положение подствольника на картинке, y
;addons
scope_status = 2 0- нет,1 - несъемный, 2 - можно ставить прицел
silencer_status = 0 - 0 - нет,1 - несъемный, 2 - можно ставить глушитель
grenade_launcher_status= 0 - 0 - нет,1 - несъемный, 2 - можно ставить подствольник
zoom_enabled = true Вкл/выкл возможность зума
scope_zoom_factor = 50 значение зума
scope_name = wpn_addon_scope название прицепляемого прицела
scope_x = 47 положение прицела на картинке, x
scope_y = 0 положение прицела на картинке, y
silencer_name = wpn_addon_silencer название глушителя
silencer_x = 218 положение глушителя на картинке, x
silencer_y = 9 положение глушителя на картинке, y
grenade_launcher_name= wpn_addon_grenade_launcher название подствольника
grenade_launcher_x = 126 положение подствольника на картинке, x
grenade_launcher_y = 24 положение подствольника на картинке, y
• Как сделать так, чтоб не убиралось из рук оружие в некоторых локациях?
В файле gamedata\sсripts\sr_no_weapon.script найти и закомментировать (поставить перед ними --) строки
bind_stalker.hide_weapon()
bind_stalker.restore_weapon()
и в файле zone_no_weapon.script ищем строки hide_weapon() и заменяем их на restore_weapon()
bind_stalker.hide_weapon()
bind_stalker.restore_weapon()
и в файле zone_no_weapon.script ищем строки hide_weapon() и заменяем их на restore_weapon()
• Объекты, которые можно перемещать
В файле system.ltx в конце есть строка [ph_capture_visuals], после неё идёт список перетаскиваемых вещей. Например чтобы можно было таскать монстров, в конец добавляем:
//Monsters
monsters\mutant_boar\mutant_boar
monsters\krovosos\krovosos
monsters\kontroler\kontroler
monsters\dog\dog
monsters\flesh\flesh
monsters\dog\dog_cmn_1
monsters\flesh\flesh
monsters\poltergeist\poltergeist
monsters\pseudodog\pseudodog
monsters\snork\snork
monsters\burer\burer
monsters\chimera\chimera
monsters\cat\cat
monsters\zombi\zombi_1
monsters\rat\rat_1
monsters\tushkano\tushkano
monsters\mutant_boar\mutant_boar
monsters\krovosos\krovosos
monsters\kontroler\kontroler
monsters\dog\dog
monsters\flesh\flesh
monsters\dog\dog_cmn_1
monsters\flesh\flesh
monsters\poltergeist\poltergeist
monsters\pseudodog\pseudodog
monsters\snork\snork
monsters\burer\burer
monsters\chimera\chimera
monsters\cat\cat
monsters\zombi\zombi_1
monsters\rat\rat_1
monsters\tushkano\tushkano
• Создание рандомного выбора муз. заставки главного меню
При заходе на экран главного меня муз. заставка будет выбираться случайно из добавленных вами.
1. В директорию gamedata\sounds\music\ положить два канальных ogg-файла с нужной музыкой, например: my_music_l.ogg (левый канал) и my_music_r.ogg (правый канал)
2. В текстовом редакторе открыть файл gamedata\config\ui\ui_mm_main.xml, найти в нем строку:
music\wasteland2
и ниже нее выставить следующую строку:
music\my_music
3. Сохранить файл.
4. Если требуется вставить больше муз. заставок, то в параметре random укажите их количество.
!!! Возьмите на заметку !!!
в строке <menu_sound random="0" >
вместо 0 указывайте не количество композиций, а количество композиций - 1, то есть, если вы добавили скажем еще одну мелодию, к той, что была по дефаулту у вас получится примерно так:
1. В директорию gamedata\sounds\music\ положить два канальных ogg-файла с нужной музыкой, например: my_music_l.ogg (левый канал) и my_music_r.ogg (правый канал)
2. В текстовом редакторе открыть файл gamedata\config\ui\ui_mm_main.xml, найти в нем строку:
music\wasteland2
и ниже нее выставить следующую строку:
music\my_music
3. Сохранить файл.
4. Если требуется вставить больше муз. заставок, то в параметре random укажите их количество.
!!! Возьмите на заметку !!!
в строке <menu_sound random="0" >
вместо 0 указывайте не количество композиций, а количество композиций - 1, то есть, если вы добавили скажем еще одну мелодию, к той, что была по дефаулту у вас получится примерно так:
<menu_sound random="1" >
<menu_music>music\wasteland2</menu_music>
<menu_music>music\my_music</menu_music>
<menu_music>music\wasteland2</menu_music>
<menu_music>music\my_music</menu_music>
Тема закрыта _715_Murad185
Комментарии (6)
_715_Murad185
Транспорт
Транспорт в игре есть! Пока способ заспаунить его не известен общественности, но тем не менее в сети появился файл all.spawn, копируйте его в папку gamedata\spawns. Мод предназначен только для пропатченной версии игры(1.0001). После начала новой игры в первой локации рядом с Сидоровичем появятся несколько машин, в т. ч. и Камаз. Чтобы включить двигатель в консоли пишем bind turn_engine kb[\b], закрываем консоль, жмём кнопку [b]b и наслаждаемся….
Рассмотрим параметры машин, конфиги находятся в папке gamedata\config\models\vehicles.
[car_definition] – после строки идут коментарии на русском языке, перейдём сразу к следующему.
--Factory parameters of Engine -- - параметры двигателя(описание не претендует на совершенно точное)
fuel_tank – вместимость бака.
engine_power – мощность двигателя.
hand_break_torque - сила торможения
[damage_items] – повреждения частей машины
back_left_wheel - заднее левое колесо
back_right_wheel -заднее правое колесо
front_left_wheel -переднее левое колесо
front_right_wheel - переднее правое колесо
left_door - левая дверь
right_door - правая дверь
bind cam_1 kF1
bind cam_2 kF2
bind cam_3 kF3
В игре жмём кнопки F1, F2 или F3 для смены вида.
Очень нужно при езде на БТР
Рассмотрим параметры машин, конфиги находятся в папке gamedata\config\models\vehicles.
[car_definition] – после строки идут коментарии на русском языке, перейдём сразу к следующему.
--Factory parameters of Engine -- - параметры двигателя(описание не претендует на совершенно точное)
fuel_tank – вместимость бака.
engine_power – мощность двигателя.
hand_break_torque - сила торможения
[damage_items] – повреждения частей машины
back_left_wheel - заднее левое колесо
back_right_wheel -заднее правое колесо
front_left_wheel -переднее левое колесо
front_right_wheel - переднее правое колесо
left_door - левая дверь
right_door - правая дверь
[immunities]
burn_immunity = 0.5 ;коэффициенты иммунитета
strike_immunity = 0.1
shock_immunity = 0.0
wound_immunity = 0.01
radiation_immunity = 0.0
telepatic_immunity = 0.0
chemical_burn_immunity = 0.0
explosion_immunity = 0.4
fire_wound_immunity = 0.0005
P.S. Чтобы сделать вид от третьего лица, в файле user.ltx(ну если не знаете где он находится, то специально для вас в Microsoft сделали поиск в Windows) пишем после строки unbindall:burn_immunity = 0.5 ;коэффициенты иммунитета
strike_immunity = 0.1
shock_immunity = 0.0
wound_immunity = 0.01
radiation_immunity = 0.0
telepatic_immunity = 0.0
chemical_burn_immunity = 0.0
explosion_immunity = 0.4
fire_wound_immunity = 0.0005
bind cam_1 kF1
bind cam_2 kF2
bind cam_3 kF3
В игре жмём кнопки F1, F2 или F3 для смены вида.
Очень нужно при езде на БТР
_715_Murad185
NPC покупают оружие
Чтобы обычные сталкеры и др. npc могли покупать у ГГ оружие, нужно править файл gamedata\config\misc\trade_generic.ltx. Его структура точно такая же, как и у любого другого торговца.
После строки [generic_buy] находим строку ;Оружие и после неё у каждого вида ставим значения вместо ;NO TRADE свои значения.
Можно например так:
Метод я проверял, вроде как работает.
Чтобы после покупки персонаж не выкидывал купленное оружие(а также чтобы подбирал его с земли), в файле gamedata\config\creatures\m_stalker.ltx строку can_select_items = off меняем на can_select_items = on
и строку use_single_item_rule = on меняем на use_single_item_rule = off
После строки [generic_buy] находим строку ;Оружие и после неё у каждого вида ставим значения вместо ;NO TRADE свои значения.
Можно например так:
;Оружие
wpn_pm = 0.08, 0.12
wpn_pb ;NO TRADE
wpn_fort = 0.08, 0.12
wpn_hpsa = 0.08, 0.12
wpn_beretta = 0.08, 0.12
wpn_walther = 0.08, 0.12
wpn_sig220 ;NO TRADE
А чтобы у npc продавалось оружие, нужно проделать тоже самое, только после строки [generic_sell]wpn_pm = 0.08, 0.12
wpn_pb ;NO TRADE
wpn_fort = 0.08, 0.12
wpn_hpsa = 0.08, 0.12
wpn_beretta = 0.08, 0.12
wpn_walther = 0.08, 0.12
wpn_sig220 ;NO TRADE
Метод я проверял, вроде как работает.
Чтобы после покупки персонаж не выкидывал купленное оружие(а также чтобы подбирал его с земли), в файле gamedata\config\creatures\m_stalker.ltx строку can_select_items = off меняем на can_select_items = on
и строку use_single_item_rule = on меняем на use_single_item_rule = off
_715_Murad185
Торговцы
Вещи, которые продают торговцы можно отредактировать(добавить/убрать) в файлах с именем trade_YYY.ltx, где YYY – это имя торговца(например trade_barman.ltx)
Итак, поехали:
Структура файла на самом деле очень проста, под зачком ; прописаны сами предметы, а после него – комментарий(чтоб понятно было).
Например ;Аммуниция
В квадратные скобки заключены([barman_generic_buy]), как бы сказать, “условия”. Лучше показать на примере:
В самом начале(практически) файла trade_barman.ltx идёт строка содержания [barman_generic_buy], т.е. она означает, что ниже прописанные предметы торговец может купить.
Сами предметы например:
[supplies_start] - начальный ассортимент
[supplies_after_darkvalley] - ассортимент, после выполнения квеста в тёмной долине
[supplies_after_brain] - ассортимент, после “выжигателя мозгов”
[barman_start_sell] - цены по которым торговец(бармен в данн. сл.) продает в начале
[barman_after_darkvalley_sell] - аналогично
[barman_after_brain_sell]
Итак, поехали:
Структура файла на самом деле очень проста, под зачком ; прописаны сами предметы, а после него – комментарий(чтоб понятно было).
Например ;Аммуниция
В квадратные скобки заключены([barman_generic_buy]), как бы сказать, “условия”. Лучше показать на примере:
В самом начале(практически) файла trade_barman.ltx идёт строка содержания [barman_generic_buy], т.е. она означает, что ниже прописанные предметы торговец может купить.
Сами предметы например:
;Артефакты
af_medusa = 1, 0.3
af_cristall_flower = 1, 0.3
af_night_star = 1, 0.3
af_vyvert = 1, 0.3
af_gravi = 1, 0.3
af_gold_fish = 1, 0.3
af_blood = 1, 0.3
af_mincer_meat = 1, 0.3
или
;ADDONS
wpn_addon_scope = 0.7, 0.2
wpn_addon_scope_susat = 0.7, 0.2
Посмотрим какие ещё “условия” содержит этот файл и их значение:af_medusa = 1, 0.3
af_cristall_flower = 1, 0.3
af_night_star = 1, 0.3
af_vyvert = 1, 0.3
af_gravi = 1, 0.3
af_gold_fish = 1, 0.3
af_blood = 1, 0.3
af_mincer_meat = 1, 0.3
или
;ADDONS
wpn_addon_scope = 0.7, 0.2
wpn_addon_scope_susat = 0.7, 0.2
[supplies_start] - начальный ассортимент
[supplies_after_darkvalley] - ассортимент, после выполнения квеста в тёмной долине
[supplies_after_brain] - ассортимент, после “выжигателя мозгов”
[barman_start_sell] - цены по которым торговец(бармен в данн. сл.) продает в начале
[barman_after_darkvalley_sell] - аналогично
[barman_after_brain_sell]
_715_Murad185
Торговцы(продолжение)
Итак: чтобы добавить предмет к торговцу, после строки [supplies_start], находим интересующую нас категорию(а это может быть: ;Аммуниция/;Оружие/;Броники/;Медикаменты/;Еда и др.) и после всех прописанных в данной категории предметов добавляем ещё одну строчку для своего предмета(а именно название модели(т.к. оно совпадает с названием самого предмета) и после знака = параметры(о них чуть ниже)). Ну я так и знал что вы ничего не поймёте, поэтому пример:
Чтобы добавить бармену винтовку Гаусса, находим строки после условия [supplies_start]^
*о значениях после знака = см. ниже.
Все имена оружия, амуниции, снаряжения и т.п. можно найти в папках gamedata\meshes\equipments,
gamedata\meshes\weapons, gamedata\meshes\food.
Заметьте, что wpn_gauss нужно писать без расширения .ogf
Значения:
После знака = у вальтера например стоит цифра 3, а после запятой – 0,6.
Первое, для гаусса у нас стоит N, это количество(в штуках) предметов. Т.е. если поставить значение 999, то у бармена будет 999 гауссов.
А второе:
1. В разделах supplies вторая цифра это вероятность появления данного предмета.
2. В разделе buy - первая цифра максимальная цена покупки, вторая минимальная (зависит от отношения торговца к Меченному - рейтинг, репутация)/
3. Соответственно в разделах sell - первая цифра минимальная цена продажи, вторая - максимальная (точнее множитель на "истинную цену" предмета).
В итоге должно получиться:
Чтобы добавить бармену винтовку Гаусса, находим строки после условия [supplies_start]^
;Оружие
wpn_pb = 3, 0.6
wpn_walther = 3, 0.6
wpn_mp5 = 3, 0.6
wpn_ak74u = 3, 0.5
и внизу прописываем wpn_gauss = N, n.nwpn_pb = 3, 0.6
wpn_walther = 3, 0.6
wpn_mp5 = 3, 0.6
wpn_ak74u = 3, 0.5
*о значениях после знака = см. ниже.
Все имена оружия, амуниции, снаряжения и т.п. можно найти в папках gamedata\meshes\equipments,
gamedata\meshes\weapons, gamedata\meshes\food.
Заметьте, что wpn_gauss нужно писать без расширения .ogf
Значения:
После знака = у вальтера например стоит цифра 3, а после запятой – 0,6.
Первое, для гаусса у нас стоит N, это количество(в штуках) предметов. Т.е. если поставить значение 999, то у бармена будет 999 гауссов.
А второе:
1. В разделах supplies вторая цифра это вероятность появления данного предмета.
2. В разделе buy - первая цифра максимальная цена покупки, вторая минимальная (зависит от отношения торговца к Меченному - рейтинг, репутация)/
3. Соответственно в разделах sell - первая цифра минимальная цена продажи, вторая - максимальная (точнее множитель на "истинную цену" предмета).
В итоге должно получиться:
[supplies_start]
;Оружие
wpn_pb = 3, 0.6
wpn_walther = 3, 0.6
wpn_mp5 = 3, 0.6
wpn_ak74u = 3, 0.5
wpn_gauss = 6, 0.6
И тогда у торговца мы получим ровно 6 винтовок Гаусса. ;Оружие
wpn_pb = 3, 0.6
wpn_walther = 3, 0.6
wpn_mp5 = 3, 0.6
wpn_ak74u = 3, 0.5
wpn_gauss = 6, 0.6
Небольшой опыт связанный со скриптами
Когда добавляете новую функцию с приёмом-отдачей,то всегда пишите функцию отдачи первой. Дело в том, что Меченому-Стрелку никто в Зоне не верит и сначала все требуют нужный кому либо предмет.
Сначала я не понимал, почему у меня не срабатывает функция. Но я вовремя вспомнил, что в солянке сначала ГГ отдаёт что-либо,а потом получает награду. Попробовал функцию отдачи прописать первой и - вауля, скрипт срабатывает.
Автор: Waljok
Сначала я не понимал, почему у меня не срабатывает функция. Но я вовремя вспомнил, что в солянке сначала ГГ отдаёт что-либо,а потом получает награду. Попробовал функцию отдачи прописать первой и - вауля, скрипт срабатывает.
Автор: Waljok
_715_Murad185
Патроны на пояс
Лезем в файл gamedata\configs\weapons\weapons.ltx
под секцией [ammo_base] есть строка:
Поведал - Отшельник12
под секцией [ammo_base] есть строка:
;belt = true;
и меняем на это:belt = true
И можем вешать патроны на пояс.Поведал - Отшельник12
Показать комментарий
Скрыть комментарий
Для добавления комментариев необходимо авторизоваться
Супер гонки
Добро пожаловать в игру «Супер гонки»! Покупай