В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга.
Не флудить
Предварительно просматривайте раздел. Ответ на ваш вопрос может быть там.
В своем вопросе указывайте платформу моддинга - Тень Чернобыля, Чистое небо или Зов Припяти.
1. Какая стоит игра, с каким патчем? 2. Какой мод, версия мода? 3. Что правили своими ручками? 4. Конфиг компа. 5. Лог вылета и последние 25 строк (помещать под спойлер).
Структура папок и файлов в корневом каталоге игры:
...\S.T.A.L.K.E.R\gamedata\anims – папка содержит исполнительные файлы эффектов (например от ПНВ).
...\S.T.A.L.K.E.R\gamedata\config – папка содержит основные конфигурационные файлы (т. е. большинство настроек игры)
...\S.T.A.L.K.E.R\gamedata\meshes – содержит модели игровых предметов и персонажей...
...\S.T.A.L.K.E.R\gamedata\scripts – папка со скриптами (рабочими файлами содержащими в себе наборы функций) – основная папка, отвечающая за ответные действия игры и действия производимых игроком в игре.
...\S.T.A.L.K.E.R\gamedata\shaders – папка содержит в себе конфигурационные файлы шейдеров.
...\S.T.A.L.K.E.R\gamedata\sounds – здесь находятся все звуки игры (разложены по своим каталогам и папкам)
...\S.T.A.L.K.E.R\gamedata\spawns – содержит файл спавна – очень важный файл – не трогать без нужды!!!
...\S.T.A.L.K.E.R\gamedata\textures – содержит разложенные по каталогам и папкам текстуры используемые в игре.
Теперь разберем папки в каталоге «config»
...\S.T.A.L.K.E.R\gamedata\config\creatures - содержит массу конфигурационных файлов, в основном отвечающих за взаимодействие Главного героя игры (в дальнейшем ГГ) и прочего окружения в игре и ТТХ самого ГГ.
...\S.T.A.L.K.E.R\gamedata\config\gameplay – содержит конфиг. файлы персонажей игры (НПС) отвечающие за внешний вид, статус, снаряжение. Файлы: character_desc_ххх (где ххх – название локации) и character_desc_general (отвечает за зомбированного персонажа). Также содержит файлы диалогов и профилей НПС.
…\S.T.A.L.K.E.R\gamedata\config\misc – конфиг.файлы торговцев (папки с именами торговцев), артефактов, брони, квестовых предметов, уникальных предметов, файл отвечающий за награды за автозадания, файл эффектов (алкоголизма, ранения, ПНВ и прочих)...
…\S.T.A.L.K.E.R\gamedata\config\mp – среди прочих содержит важный файл mp_ranks – отвечающий за выпадение оружия и патронов из рук ГГ и НПС – без прописывания добавляемого в игру оружия в этот файл при выпадении нового оружия из рук ГГ\НПС будут следовать вылеты.
…\S.T.A.L.K.E.R\gamedata\config\text\rus – содержит файлы описаний всего и вся находящегося в игре (брони, артефактов, оружия, предметов и прочего).
…\S.T.A.L.K.E.R\gamedata\config\weapons – содержит конфиг.файлы оружия и боеприпасов используемых в игре.
…\S.T.A.L.K.E.R\gamedata\config\weathers – содержит конфиг.файлы настройки погоды на локациях.
Теперь немного подробнее о файлах.
...\S.T.A.L.K.E.R\gamedata\config\misc:
Папка shop_ххх (ххх – имя торговца) – содержит конфиг.файлы ассортимента торговца.
outfits – содержит секции конфигов костюмов.
artefacts - содержит секции конфигов артефактов.
items - содержит секции конфигов предметов.
monster_items - содержит секции конфигов частей монстров
postprocess - содержит секции конфигов пост. процессов (например: ПНВ).
quest_items - содержит секции конфигов квестовых предметов.
task_manager - содержит секции наград за автоквесты.
unique_items - содержит секции конфигов уникального оружия и костюмов.
У кого есть желание, создать FAQ по основным вопросам моддинга - обращаемся в ЛС.
У меня вопрос касается логики кнопок ,лампочек и прочей техники. Как при нажатии на кнопку в рюкзаке ГГ появлялся какой-нибудь предмет и ещё чтоб можно было зажечь лампу.
ОТИС, вроде за это отвечает внесение ствола в mp_ranks.ltx , ну то есть надо его приписать новичку по аналогии с другими, чтобы он его не выбрасывал. Не гарантирую, Что это правильное решение, но попробуй.
не помогло. Да и вряд ли в этом дело. Попробовал на оригинале: ставишь что-нибудь торговцам, у них все предметы появляются и стволы не выпадают. Если прописать фаил торговли любому другому нпс-у, то он выберет себе 2 ствола, остальные скинет и часть предметов у него не будет. Поковырялся в фаилах логики торговцев, но там тоже ничего не нашёл. Может у кого есть ещё идеи на этот счёт?
можете мне пожалуйста ответить по пунктам ? допустим я взял абакан в зп 1- как мне изменить параметры точности , удобности , темпа стрельбы , отдачи ? 2- как создать новые патроны 3- как сделать выпадание костюмов у нпс с шансом примерно 40% ?
Asafgan, отвечаю на вопрос в ЛС. Да, как и все другие, диалог нужно прописывать НПС. Фразу ГГ проигрываем через рестриктор или скрипт. В конфиге script_sound_...ltx у звука должен быть выставлен тип [olor=yellow]actor[/color]. В логике НПС в секции meet есть параметр use. Задай там определенное условие (к примеру, инфопорция), и поставь с этим условием значение self (по условию НПС сам юзнет ГГ). Остальные значения с условиями уже будешь под ситуацию подстраивать. Как-то так:
Код
use = {+был_первый_диалог -не_был_второй_диалог} self, true.
(Я поставил в конце true - в любых других случаях ГГ сможет сам юзать НПС).
Добавлено (10.03.2014, 12:14) --------------------------------------------- Asafgan, нужно либо биндер для костюмов создавать, либо (увы!) вешать на апдейт в bind_stalker.script. Хотя, если покопаться, может и другой способ найдется.
Сообщение отредактировал FantomICW - Понедельник, 10.03.2014, 12:00
local hud = get_hud() local custom_static = hud:GetCustomStatic("health") function health_test() db.actor.health = -0.0001 if custom_static == nil then hud:AddCustomStatic("health", true) end end
local hud = get_hud() local custom_static_s = hud:GetCustomStatic("health") function health_testing() db.actor.health = 0 if custom_static_s ~= nil then hud:RemoveCustomStatic("health") end end
В первой функции отнимается здоровье и выдается статик. А во второй: статик должен исчезнуть, но он не исчезает. Пробовал также hud:RemoveCustomStatic("health", true) и hud:RemoveCustomStatic("health", false), но все равно не срабатывает. Не подскажете, как правильно записать во второй функции отключение статика?
FantomICW, Помоги тогда с этим: Создал скрипт на воспроизведение звука, когда в инвентаре лежит предмет, произошел вылет:
Код
Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ...call of pripyat\gamedata\scripts\actors_sound.script:6: attempt to call field 'get_safe_sound_object' (a nil value)
Вот что вписал в скрипт:
Код
function play_sound() local snd if db.actor:object("stalker_outfit") then snd = [[inventar\\inventar_music]] end if snd then local snd_obj = xr_sound.get_safe_sound_object(snd) snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0) end end
Добавление в строку fragment_speed значения 76 не помогает, да и с другими значениями такой же вылет. Файлы, по сути, идентичны, поэтому привожу один из примеров:
;---------------------------------------- ; Ferrari California ;----------------------------------------
;------------------------------------------------------------------------------- ;------ Factory parameters of Engine ------------------------------------------- fuel_tank = 220 ; L fuel_consumption = 1 ; L / (100k R); liters per 100 000 rotations engine_power = 200 ; horse_power (kW=hp*0.808) max power max_power_rpm = 4500 ; (nominal rpm ) on this rpm value engine power reaches maximum max_torque_rpm = 2000 ; on this rpm engine torque reaches maximum
; additional engine parameters max_engine_rpm = 4600 ; rpm (5000) rpm will never be more idling_engine_rpm = 750 ; rpm (750) min rpm - starts from this rpm value
;------------------------------------------------------------------------------- ;------ Adjustment a wheel ----------------------------------------------------- reference_radius = 0.60 ; Радиус колеса, используемый при просчёте двигателя axle_friction = 0.0002 ; Ослабление скорости в неетральной позиции. (N*m) steering_speed = 0.8 ; Скорость поворота рулевого колеса, в максимум. rps (1) steering_torque = 900000 ; Сила гидроусилителя руля. (N*m) break_torque = 0.06 ; Сила тормозных колодок. (N*m) break_time = 1.0 ; время нарастания силы торможения до максимума, при подтормаживании (стрелка назад) hand_break_torque = 0.032 ; сила торможения пробелом (по умолчанию = break_torque)
;------------------------------------------------------------------------------- ;------ Gearbox ---------------------------------------------------------------- main_gear_ratio = 2.6 ; Передаточное отношение auto_transmission = off ; Автоматическая коробка (on/off)
[back_right_wheel] break_torque = 0.05 ; Сила тормозных колодок. (N*m hand_break_torque = 0.05 ; сила торможения пробелом (по умолчанию = break_torque) damping_factor = 2 spring_factor = 3 friction_factor = 1.9
[collide] not_collide_parts = 1
;------------------------------------------------------------------------------- ;------ destroyed part ---------------------------------------------------------
;------------------------------------------------------------------------------- ;--- part impulse_transition --------------------------------------------------- [impulse_transition_to_parts] random_min = 10.0 ; величина случайно направленного импульса пропорционально массе нового объекта random_hit_imp = 5.0 ; величина случайно направленного импульса пропорционально разрушающему хиту ;ref_bone = ; кость из по которой определяется скорость для частей у который связь не задана, по умолчанию рут imp_transition_factor = 1.0 ; фактор с которым прикладывается хит по исходному объекту ко всем частям lv_transition_factor = 1.5 ; коэффициент передачи линейной скорости av_transition_factor = 1.5 ; коэффициент передачи угловой скорости
;------------------------------------------------------------------------------- ;------ End params -------------------------------------------------------------
Добавлено (10.03.2014, 17:45) --------------------------------------------- Что-то мне тут видимо не понравилось ,вот только что? И тут кстати тоже ,не знаю