-
Notifications
You must be signed in to change notification settings - Fork 89
Изменения в оружейной части
- Теперь полностью поддерживается ЗП-система худа рук ( #322, #335 ). ТЧ-худ тоже будет работать, как и раньше.
- Добавлена поддержка 90+% анимаций для оружия из Gunslinger Mod
- Реализовано Anomaly-style разделение расчетов худа для предметов в левой и правой руках + новая система коллизии худа для OGSR GA.
- Добавлена поддержка скриптовых анимаций из Anomaly
- Добавлена поддержка
hud_movement_layers
из Anomaly
[hud_movement_layers]
;types: 0 = aim_walk, 1 = aim_crouch, 2 = crouch, 3 = walk, 4 = run, 5 = sprint
;type path speed power
movement_layer_0 = movement\aim_walk.anm, 1, 0.85
movement_layer_1 = movement\aim_walk.anm, 0.75, 0.5
movement_layer_2 = movement\newwalk.anm, 1, 0.1
movement_layer_3 = movement\newwalk.anm, 1, 0.1
movement_layer_4 = movement\newwalk.anm, 1.25, 0.125
movement_layer_5 = movement\newrunreload.anm, 1, 0.15
- Переписан настройщик худа, теперь в нём можно настраивать позиции лазера и фонаря (OGSR GA)
- Автоподбор fov при прицеливании под текущее разрешение экрана включается в секции
[features]
параметромogse_wpn_zoom_system
. При включении требуется перенастройка конфигов, как в ОГСЕ. - Поправлен сброс зума когда кончились патроны, заодно отключена автоперезарядка (включить обратно можно опцией
autoreload_wpn
). - Для любого оружия добавлена поддержка
scope_dynamic_zoom
. Дополнительно, добавлено использование этого параметра из секции оптического прицела. Т.е. оружие со свойствами бинокля может быть не только с приваренным прицелом, но и со съемным тоже. Для совместимости со старыми конфигами, сделана опция, разрешающая стрельбу на классе бинокля. Включается в секции[features]
параметромbinoc_firing
. - Выключить использование анимаций рассматривания болта, подкидывания гранат и кручения ножа, т.е.
anim_playing
можно в секции[features]
параметромstop_anim_playing
- Добавлена поддержка раскачки худа оружия при движении. Включается в секции
[features]
параметромwpn_bobbing
. Для работы требуется секция с названием[wpn_bobbing_effector]
и примерно таким содержимым:
[wpn_bobbing_effector]
limp_amplitude = 0.011
limp_speed = 4.6
run_amplitude = 0.0075
run_speed = 6.74
walk_amplitude = 0.005
walk_speed = 6.26
crouch_k = 0.75 ; позволяет переопределить движковую константу CROUCH_FACTOR
;zoom_k = 0.1 ; применяется только к амплитуде в режиме прицеливания и позволяет уменьшить раскачку худа при движении с прицеливанием. Используется при движении с прицеливанием без оптики.
scope_zoom_k = 0.1 ; Это коэффициент амплитуды, который будет применять при движении с прицеливанием через оптику. По умолчанию принимает значение zoom_k, который по умолчанию равен 1.
controller_amplitude = 0.003 ; Интенсивность тряски рук при воздействии пси-ауры мутантов
- Новый параметр
allow_bobbing
худ секции оружия. Позволяет включать/выключать движковый bobbing-эффект отдельно для каждого оружия. Работает, естественно, только с включенной раскачкой оружия в секции[features]
. Значение по умолчанию = включено. - Если у оружия включена раскачка, анимации idle_moving* играться не будут.
- Новые параметры настроек инерции для худовых секций оружия:
allow_zoom_inertion = true ;Разрешает применять инерцию худ модели оружия в режиме прицеливания.
; inertion_origin_offset = -0.05 ;отклонение модели от "курса" из за инерции во время движения
; inertion_tendto_speed = 5 ;скорость возврата худ модели в нужное положение
inertion_zoom_origin_offset = -0.03 ;отклонение модели от "курса" из за инерции во время движения с прицеливанием
inertion_zoom_tendto_speed = 10 ;скорость возврата худ модели в нужное положение во время прицеливания
allow_scope_zoom_inertion = true ;позволяет выключить инерцию при прицеливании через сквозную оптику и оставить её только при прицеливании без оптики. По умолчанию принимает значение `allow_zoom_inertion`.
- Добавлена поддержка
explode_particles
для патронов и не пулевого хита у оружия - Добавил возможность задавать звук переключения режимов огня. Если в секции оружия есть
snd_fire_modes
, то при переключении режимов стрельбы будет использоваться этот звук. - Добавил возможность задавать звук при изменении зума в бинокле или прицеле с регулируемым зумом. Если в секции оружия есть
snd_zoom_change
, то при изменении зума будет использоваться этот звук. -
Добавил поддержку 3D-прицелов из SWM.
Для этого мешу линзы на худовой модели оружия должен быть назначен специальный шейдер
models_lense_scope
и в конфиге оружия/прицела (приоритет у секции оружия) должен быть прописанscope_lense_fov_factor
(по аналогии сscope_zoom_factor
). Обращаю внимание, что меш линзы, на который будет выводиться увеличенное изображение, обязательно должен быть полностью непрозрачным, иначе могут возникать проблемы с рендерингом изображения, при грозе, например, и ещё во многих ситуациях. Т.к. 3D - прицелы сильно жрут производительность, добавлена консольная командаg_3d_scopes
для возможности их отключения. - FPS в 3D прицелах можно настроить консольной командой
g_3d_scopes_fps_factor
. - Добавлена поддержка параметра
scope_inertion_factor
в конфигах оружия/прицелов (приоритет у секции оружия). Позволяет управлять чувствительностью мыши во время прицеливания. Так же этот параметр будет учитывать текущее значение зума для оружия сscope_dynamic_zoom
. - Переделана логика работы
scope_dynamic_zoom
для прицелов сscope_lense_fov_factor
- теперь динамический зум будет именно в 3D-прицеле. - Добавил поддержку текстурных прицелов для оружие с
scope_status = 2
когда снят прицел. Для включения нужно добавитьforce_scope_texture = true
в секцию оружия. - Добавлены новые параметры к настройкам
zoom offset
/zoom rotate
для оружия сscope_status = 2
что бы отдельно настраивать прицеливание с прицелом и без него. Параметры для худовой секции оружия:
; Прицел установлен
scope_zoom_offset
scope_zoom_rotate_x
scope_zoom_rotate_y
; Прицел установлен вместе с ПГ
scope_grenade_normal_zoom_offset
scope_grenade_normal_zoom_rotate_x
scope_grenade_normal_zoom_rotate_y
; Прицел установлен в режиме ПГ
scope_grenade_zoom_offset
scope_grenade_zoom_rotate_x
scope_grenade_zoom_rotate_y
; Есть и другие, юзайте настройку через hud_adjust_mode
Для активации №1 и №2 в не худовую секцию оружия нужно добавить параметр use_scope_zoom = true
.
Для активации №3 в не худовую секцию оружия нужно добавить параметр use_scope_grenade_zoom = true
- Добавлены параметры в секции оружия и прицелов (приоритет у секции оружия):
scope_zoom_hud_fov
- худ фов во время обычного прицеливанияscope_lense_hud_fov
- худ фов во время работы 3D-прицела. Позволяют довольно гибко настроить приближение оружия во время прицеливания "к экрану". - Расширены возможности
scope_dynamic_zoom
: Форматscope_dynamic_zoom = true, <steps>, <min_zoom_k
<steps>
- число "шагов" для регулировки зума. По умолчанию4
<min_zoom_k>
- коэффициент для вычисления минимального зума. По умолчанию0,3
- Добавил
fire_zoomout_time
в секцию оружия для принудительного отключения зума после выстрела. Указывается кол-во миллисекунд, через которое нужно отключить зум после выстрела. Имеет смысл использовать со сквозными прицелами у оружия, где после каждого выстрела вручную досылается патрон, типа каркуши. Что бы рука в экран не лезла. - С включенной опцией
wpn_cost_include_addons
цена оружия будет включать в себя стоимость установленных аддонов. - Добавлен дефайн
DUPLET_STATE_SWITCH
, изменяющий принцип работы дуплета для оружия на классеCWeaponShotgun
Вместо дуплета по кнопке прицеливания, дуплет можно включить\выключить скриптом:
wpn:get_weapon_sg():switch_duplet() --Включить\выключить
wpn:get_weapon_sg().is_duplet_enabled --Проверить статус
Сделано для того, что бы сохранить возможность прицеливания.
- Добавил усложненный режим перезарядки, включающийся опцией
hard_ammo_reload
Патроны из оружия возвращаются в инвентарь и оружие заряжается из другой пачки с макс. кол-вом патронов. Если часто перезаряжаться, то через некоторое время в инвентаре будут только неполные пачки и оружие будет заряжаться не полностью. В пару с этим режимом желательно использовать ручной перепаковщик патронов, вместо автоматического. -
Добавлен автоматический перепаковщик патронов, скрипты для этого не нужны. Включается опцией
engine_ammo_repacker
, не совместим с включеннымhard_ammo_reload
- Добавлена возможность изменения скорости худовой анимации через конфиг. Вот пример, увеличивающий скорость доставания/убирания оружия в 1.5 раза:
anim_draw_speed_k = 1.5
anim_holster_speed_k = 1.5
Т.е. к параметру, содержащиму соотв. анимацию прибавляется _speed_k
и их получившегося параметра берется множитель для скорости: anim_draw
+ _speed_k
= anim_draw_speed_k
. Эти параметры нужно указывать там же, где и анимации, т.е. в худовой секции.
- Добавил возможность установки скорости звука в оружии. Пример:
snd_reload = weapons\toz66\bm16_reload, 1, 0, 1.25 ;1.25 - это коэффициент частоты звука. В данном случае, она будет увеличена в 1.25 раз и скорость звука тоже увеличиться. Это можно использовать вместе с ускорением анимации, что бы не было рассинхронизации звука и анимации.
- Добавлен дефайн
APPLY_ARMOR_PIERCING_TO_NPC
- Включает учет параметраk_ap
у патрона при расчета урона для НПС. Формула такая же как при расчете урона для ГГ. Может потребовать перенастройку конфигов патронов. - Добавлена поддержка переключения режимов стрельбы для оружия на классе
CWeaponCustomPistol
и всех его наследников. - Добавлен предохранитель для подствольных гранат. Параметр
safe_dist_to_explode
в секции фейковых подствольных гранат указывает, ближе какого расстояния от актора, выпущенная им граната не должна взорваться. В этом случае, вместо взрыва, граната упадет на этом месте и ее можно будет подобрать и использовать снова. - Отключить показ полосок с хар-ками в описании оружия можно добавив в его секцию:
show_wpn_properties = false
- Добавлен режим повышенной скорострельности первых двух выстрелов. Для абакана, например. Чтобы заработал, надо добавить в конфиг ствола:
rpm_mode_2 = 1800
cycle_down = true
В rpm_mode_2
задается скорострельность, которая будет действовать в режиме отсечки по 2 выстрела или для первых двух выстрелов в любом автоматическом режиме, если cycle_down = true
.
- Параметр
scope_texture
теперь не обязательный для оружия с прицелом. Если он не указан - не будет текстурного прицела. Сделано что бы упростить создание коллиматоров или других прицелов где не нужна текстура. - Добавил распознание прицелом враждебных монстров.
- Добавлена опция
lock_reload_in_sprint
для блокировки перезарядки по время бега. - Поправлен баг с биноклем, когда он показывал рамочки мобов, которые находятся, например, за спиной актора. Заодно добавлены доп. параметры для бинокля:
min_visible_time = 2000 ; кол-во миллисекунд, в течении которого объект должен быть видим в бинокль, прежде, чем будут нарисованы рамочки. По умолчанию 0, т.е. не используется.
transparency_threshold = 1.0 ; если объект находится за полупрозрачной преградой, кустами к примеру, этим параметром задается, насколько преграда должна быть прозрачна, что бы объект считался видимым. Например значение 1 означает, что бинокль увидит объект только если он ничем не закрыт, никакими кустами или ветками. По умолчанию 0, т.е. не используется.
- Добавлена примитивная поддержка многоприцельности для оружия. На оружие можно устанавливать прицелы, которые указаны в
scope_name
и вscope_names
. В последнем можно указывать список через запятую. При установке прицела ищется параметрscope_respawn_СЕКЦИЯ_ПРИЦЕЛА
и если найдена, и в качестве значения указана секция отличная от текущей, то оружие переспаунивается с использованием этой секции. Если прицел снимается, то проверяется значение параметраscope_respawn
. Пример:
[wpn_abakan]
scope_name = kakoy-to_scope ;в данном случае тут можно прописать любой прицел, в этой секции он не используется.
scope_names = wpn_addon_scope_pso, wpn_addon_scope_pso2, wpn_addon_scope_detector, wpn_addon_scope_night, wpn_addon_scope_kobra, wpn_addon_scope_pka, wpn_addon_scope_kashtan
; "scope_respawn_секция прицела" = "секция оружия с этим прицелом"
scope_respawn_wpn_addon_scope_pso = wpn_abakan_pso
scope_respawn_wpn_addon_scope_pso2 = wpn_abakan_pso2
scope_respawn_wpn_addon_scope_detector = wpn_abakan_detector
scope_respawn_wpn_addon_scope_night = wpn_abakan_night
scope_respawn_wpn_addon_scope_kobra = wpn_abakan_cobra
scope_respawn_wpn_addon_scope_pka = wpn_abakan_pka
scope_respawn_wpn_addon_scope_kashtan = wpn_abakan_kashtan
[wpn_abakan_pso]:wpn_abakan
scope_name = wpn_addon_scope_pso ;Секция прицела, который установили
scope_respawn = wpn_abakan ;Если прицел снимем, переспавнится оружие с этой секцией
- Перенес из SWM наклоны оружия при стрейфах + сделали эффекты при выглядывании из укрытия. Добавились опции для конфигов оружия (по умолчанию в движке на данный момент такие же):
;;;;;;;;;;;;;;[Стрейфы];;;;;;;;;;;;;;;
; Настройки для обычного режима (стрельба от бедра)
strafe_enabled = true ;Включить эффект?
strafe_transition_time = 0.25 ;Скорость эффекта
strafe_hud_offset_pos = 0.015,0.0,0.0 ;Смещение худа при стрейфах
strafe_hud_offset_rot = 0.0,0.0,4.5 ;Поворот худа при стрейфах
; Настройки для режима прицеливания
strafe_aim_enabled = true
strafe_aim_transition_time = 0.15
strafe_aim_hud_offset_pos = 0.0,0.0,0.0
strafe_aim_hud_offset_rot = 0.0,0.0,2.5
;;;;;;;;;;;;;;[Выглядывания];;;;;;;;;;;;;;;
lookout_enabled = true
lookout_transition_time = 0.25
lookout_hud_offset_pos = 0.045, 0.0, 0.0
lookout_hud_offset_rot = 0.0, 0.0, 10.0
lookout_aim_enabled = true
lookout_aim_transition_time = 0.15
lookout_aim_hud_offset_pos = 0.0, 0.0, 0.0
lookout_aim_hud_offset_rot = 0.0, 0.0, 15.0
- В секции оружия можно указать
condition_shot_dec_on_hit
. На значение этого параметра ухудшается состояние оружия при попадании. Можно использовать для износа ножей, например. - Новый параметр
scope_show_indicators
(по умолчанию true) указывает, что при отсутствии текстурного прицела нужно или не нужно показывать индикаторы. Сделано для того, что бы выключать показ индикаторов при прицеливании через сквозные прицелы и не выключать их (по умолчанию) при прицеливании через коллиматоры, которые сделаны, как оптические прицелы. - Новый параметр
ignore_scope_texture
указывает, что не нужно показывать текстуру прицельной сетки, даже если она определена. Используется для устанавливаемых сквозных прицелов. Значение по умолчанию - false, что бы не менялось текущее поведение. - Новые глобальные опции в секции
[features]
:
;------------------------Глобальные настройки оружейных фич---------------------------
; Глобальные настройки сделаны для возможности простого включения оружейных фич
; при установке движка в какие либо моды, чтобы не править там 100500 конфигов оружия.
; У настроек из конфигов оружия приоритет выше.
; Инерция при прицеливании. По умолчанию эффект не сильный, не навязчивый.
default_allow_zoom_inertion = true
; Изменение HUD FOV когда игрок стоит вплотную к стене.
default_nearwall_on = true
;-------------------------------------------------------------------------------------
- При использовании скриптового метода
actor:hide_weapon()
оружие теперь скрывается плавно, т.е. с проигрыванием анимации убирания (#150). - Если указать в секции оружия
show_brief_info = false
то при активации этого предмета на худе не будет отображаться информация об оружии.
- Добавил настраиваемый формат отображения кол-ва патронов на худе:
[features]
; Формат отображения кол-ва потронов на худе:
; {AE} - кол-во патронов в текущем оружии.
; {AC} - кол-во патронов для этого оружия в инвентаре.
; По умолчанию: {AE}/{AC}
;wpn_magazined_str_count_tmpl = {AE} ;В таком виде будет отображаться только кол-во патронов в оружии.
- Добавлена возможность указания анимации для не полной перезарядки оружия. Это когда жмакается перезарядка, а оружие не пустое, там еще есть патроны. В худовой секции оружия за это отвечают следующие параметры:
anim_reload_partly ;для оружия без подствольного гранатомета
anim_reload_gl_partly ;для оружия с присоединенным подствольным гранатометом
;При их отсутствии используется значение anim_reload и anim_reload_gl.
- Добавлена возможность регулировки времени анимации оружия. Чтобы для неполной перезарядки например, использовать обычную анимацию перезарядки, обрезав её по времени, типа такого:
anim_reload = reload
anim_reload_partly = reload
anim_reload_partly_stop_k = 0.55 ;Для не полной перезарядки будет использовано 55% обычной анимации перезарядки. Это конечно костыли, зато не надо анимации править.
- Так же добавлена поддержка
_start_k
для анимаций. Значение от0,001
до1
. - Звук перезарядки будет остановлен после окончания соотв. анимации, не зависимо от длины звука.
- Для неполной перезарядки можно указать отдельный звук:
snd_reload_partly
. - Рикошеты можно выключить, прописав в секции
[bullet_manager]
и/или секции патроновallow_ricochet = false
. По умолчанию рикошеты включены. - Добавлена консольная команда
wpn_aim_toggle
из ЗП - Добавлена поддержка эффекторов для оружия. В отличие от ЗП, эффектор для анимации прописывается в худовой секции ствола:
anim_reload_effector = pkm_reload ;эффектор должен лежать по пути: anims\camera_effects\weapon\pkm_reload.anm
anim_shoot_effector = pkm_shoot ;эффектор должен лежать по пути: anims\camera_effects\weapon\pkm_shoot.anm
...и тд...
- В конфиге оружия можно указывать износ при надетом глушителе параметром
condition_shot_dec_silencer
. - Новые опции для конфигов оружия:
scope_bone
,silencer_bone
,launcher_bone
: для переопределения имен костей при установленных аддонах. Вscope_bone
можно указывать несколько костей через запятую. - Добавлена поддержка скрываемых костей для моделей оружия. Чтобы скрыть нужные кости, надо добавить в секцию ствола что-то вроде:
hidden_bones = d2, d1, s1, s2, s3, s4, s5, m1, m2, m3, muzzle
Имена костей можно указывать разные для мировой и худовой секции оружия. Если в худовой секции не указаны, будут использоваться имена костей из мировой.
Добавлено изменение HUD FOV когда игрок стоит вплотную к стене (from Shoker). Новые параметры в секции оружия:
nearwall_on ; включение
nearwall_target_hud_fov ; HUD FOV когда ГГ полностью уперся в стену
nearwall_dist_min ; мин. расстояние когда уже дошли до nearwall_target_hud_fov
nearwall_dist_max ; макс. расстояние с которого текущий HUD FOV начинает меняться к целевому nearwall_target_hud_fov
nearwall_speed_mod ; скорость изменения HUD FOV
Добавлена консольная командаhud_crosshair_hard
, настройка в меню геймплея. Включает режим, в котором при стрельбе от бедра пули будут вылетать не из центра камеры, а в правильном направлении из оружия. Худовый курсор тоже будет учитывать это направление. Для настройки точки вылета пуль введен параметрshoot_point
. Можно было бы просто использоватьfire_point
, но проблема в том, что эта точка партиклов сильно смещена вперёд, и если её использовать для вылета пуль, можно будет стрелять сквозь стены, предметы и тп.shoot_point
- это тот же самыйfire_point
, но у которого z - координата должна быть смещена назад. По умолчанию в движке сделано смещение-0.5
, но для некоторых стволов этого недостаточно, именно поэтому это можно настроить для каждого оружия индивидуально:
fire_point = 0.0, 0.133, 0.200
shoot_point = 0.0, 0.133, -0.6
Работать -- Актуально, думаю, только для OGSR GA, теперь это всё - часть единой системы коллизии худа, и вряд ли это кому то понадобится кроме нас в GA.shoot_point
будет только на ЗП-стволах, либо на ТЧ-стволах, у которых fire_point
перенастроен с включенным use_cop_fire_point = true
. Для обычных стволов которые делались под ТЧ это адекватно настроить не представляется возможным, потому что там fire_point
не привязан к оружию, это отдельный элемент в пространстве, в этом можно убедиться, значительно поменяв hud_fov - на тч стволах все партиклы уедут. В этих условиях shoot_point
тем более нормально настроить невозможно.
- Добавлен настройщик положения оружия от третьего лица. Можно настроить положение оружия как у актора от 3 лица, так и у НПС. Настройка для состояния за спиной у НПС тоже работает.
Для включения режима настройки наводим курсор на НПС и набираем в консоли
dbg_adjust_attachable_item имя_секции_оружия
или (что более удобно)dbg_adjust_attachable_item_in_slot номер_слота
.LSHIFT
+Z
/X
/C
+PageUP
/PageDown
- настройка position (x,y,z)LALT
+Z
/X
/C
+PageUP
/PageDown
- настройка rotation (x,y,z)LSHIFT
+ENTER
- сохранение результатов в папкуlogs/_world/
Шаги для настройки регулируются консольными командамиadjust_delta_pos
,adjust_delta_rot
- Добавлен функционал работы с мешами из скриптов. Вкл/выкл их видимости, а так же анализ модели (дамп всех костей и мешей). Главная фича управления мешами (в отличие от костей) в том, что можно менять внешний вид модели ничего не делая с скелетом.
local item = db.actor:active_item()
if item then
item:dump_visual_to_log() --Распечатать в лог информацию о мешах и костях модели - мировой и худовой, если худовая доступна.
log3("--Mesh count of [%s]: [%s]", item:name(), item:get_mesh_count_hud()) --вывести кол-во мешей в худовой модели.
item:set_show_model_mesh_hud(0, false) --Установить видимость меша для худовой модели, в данном случае скрыть нулевой.
local shown = item:get_show_model_mesh_hud(0) --узнать показан ли меш
--Тоже самое для мировых моделей, подойдет для любых объектов наверно, не только для оружия.
item:set_show_model_mesh(4, true)
item:get_show_model_mesh(4)
item:get_mesh_count()
end
- Добавлено чтение
hud_fov
из конфига худового предмета. Нужно например для 3Д ПДА. - Добавлены звуки
snd_aim_start
,snd_aim_end
,snd_close_weapon_empty
- Поведение клина при выстреле уточнено - теперь клинит не после выстрела, а так, чтобы поведение соответствовало Gunslinger Mod.
- Для оружия с трёхстадиевой перезарядкой при расклине будет проигрываться первая и третья стадия перезарядки.
- Добавлен для дробовиков звук
snd_add_cartridge_empty
и анимацииanm_reload_jammed
,anm_reload_jammed_last
- Добавлены новые параметры для создания контактных гранат:
explosion_on_kick = true ;делает гранату контактной
safe_dist_to_explode = 10 ;минимальная дистанция для контактного взрыва
explode_by_timer_on_safe_dist = true ;по сути влияние safe_dist_to_explode на взрыв по таймеру. Если true - грена будет взрываться даже в пределах safe_dist_to_explode по таймеру.
- Добавлена поддержка управления костями пулемётной ленты
bullet_bones = bullet_1, bullet_2, bullet_3, bullet_4, bullet_5, bullet_6, bullet_7, bullet_8, bullet_9, bullet_10, bullet_11, bullet_12
- Добавлена опция в конфиг оружий
dont_interrupt_shot_anm
(по умолчанию выкл.) - давать ли доиграть анимацию выстрела после выстрела. Не на всех оружиях это хорошо выглядит, только для стволов из Gunslinger подходит отлично. - Таким образом, при добавлении оружий из Gunslinger, чтобы двиг понимал как с ними работать, в каждой секции такого оружия (или в общей для них базовой секции) должны присутствовать эти параметры:
dont_interrupt_shot_anm = true ;Не прерывать анимацию выстрела чтобы гильза успела вылететь, т.к. в гансе гильзы являются частью анимации выстрела
is_gunslinger_weapon = true ;Специальный флаг чтобы двиг понимал что это ствол из Gunslinger Mod и к нему надо применить фикс создания физ. оболочки для избежания ошибок с этим связанных.
- Добавлена поддержка смены текстур пуль для оружий. Пример настроек для Gunslinger-style дробовиков:
;Имена текстур пуль прописанных в модели, которые будут заменяться
bullet_textures_in_model = wpn\ammo_12x70_blue, wpn\ammo_12x70
;Пары "название секции патронов, текстура для пуль из этой секции"
bullet_textures_for_ammos = ammo_12x76_zhekan, wpn\ammo_12x70_blue, ammo_12x70_buck, wpn\ammo_12x70_red, ammo_12x76_dart, wpn\ammo_12x70_green
- Поправлен знаменитый оружейный баг, когда на стволах криво/не полностью отображались аддоны, состоящие из нескольких мешей/костей.
- Исправлено неотключение звука перезарядки, при убирании оружия.
- Добавлено сохранение режима огня для магазинного оружия при сейв-лоаде.
- Запретил зарядку дробовиков смешанными патронами. Серверный класс на такое не расчитан и после загрузки сейва начинаются чудеса, вроде бесконечных патронов. А так, нет смешанных патронов - нет проблемы.
- Поправлен рассчёт веса оружия
- Поправил путаницу с
grenade_normal_
. Насколько я понимаю,grenade_normal_
должен использовать только в том случае, если у оружия ПРИСОЕДИНЯЕМЫЙ подствольник и он в данный момент ПРИСОЕДИНЕН. А было, если у оружия вообще может быть подствольник, присоединяемый или постоянный, не важно. - Фикс зависающих анимаций после перехода оружия в стейт
eMagEmpty
- Исправлена проблема с мигающей ракетой во время перезарядки РПГ7.
- Поправлены анимации оружия на классе WP_BM16.
- Исправлена стрельба разряженным RG6 сразу после разрядки
- Исправлена проблема когда оружие на класса СВД или Дробовика стреляло второй раз, если нажать eFire во время анимации выстрела
- Исправлен баг, когда при разрядке оружия с ПГ не разряжался скрытый тип патронов
- Будем сбрасывать спринт в обработке kWPN_FIRE только если в руках ГГ есть активный предмет и это не болт
- Будем сбрасывать спринт в момент самого броска гранаты, не важно с замахом или без
- Запрещено переключать тип гранат во время замаха или броска - иначе упадет и взорвётся под ногами
- Исправление атаки ножа - теперь урон будет верный, независимо от того, как вызвать eFire или eFire2. Раньше можно было быстро нажать левую кнопку и сразу правую и будет нанесен хит длинного удара, но с анимацией короткого
- Теперь длинный удар ножа будет тоже сбрасывать спринт ГГ
- Фикс переключение ПГ - если переключение уже идет - не нужно сбрасывать состояние в eIdle. Иначе анимации будет прерывать и переключение будет мгновенное
- Исправлен звук перезарядки BM16 если оружие уже пустое, но в инвентаре только один заряд остался
- При перезарядке дробовиков режим прицеливания выключается
- Изменен способ прерывания перезарядки дробовика: теперь при вызове kWPN_FIRE выставляется флаг и после окончания зарядки текущего патрона, оружие переходит eSubstateReloadEnd и зарядка прекращается. В таком случае всегда есть все анимации и так же не появляется лишний патрон в магазине.
- Добавлен запрет выстрела во время анимации перезарядки для класса пистолетов.
- Движковый фикс переключения гранат.
- Запрещено переключение на ПГ в режиме прицеливания.
- Сделано сохранение второго типа заряда для
CWeaponMagazinedWGrenade
- Звуки выстрелов теперь будут проигрываться до конца, не будем останавливать проигрывание текущего звука, при появлении нового.
- Изменения/исправления прятания оружия и его восстановления обратно. Если достать ПДА и тут же быстро убрать, то активное оружие теперь восстановится обратно, а не залипнет в спрятанном состоянии. Если схватить SHIFT-F что-то, при активном оружии, то оно будет скрыто немедленно, без анимации убирания. Это странно смотрелось, т.к. анимация обычно занимает определенное время и, например, ящик уже в руках, а оружие только начало прятаться.
- Гранату теперь можно спрятать обратно в инвентарь, даже после замаха. Раньше она кидалась в этом случае.
- Пофикшены глюки с рамочками у стволов на классе бинокля при исп. 3д-прицелов. Теперь они не рисуются ни снаружи, ни в прицеле (т.к. в 3д-прицел идёт кадр до начала рендера UI).
- Когда выключена опция
ogse_wpn_zoom_system
, для стволов с 3д прицелами для приближения вне прицела будет использоваться значениеironsight_zoom_factor
. Сделал это для того, что бы можно было 3д прицелы выключать по командеg_3d_scopes off
, и при этом текстурные работали как раньше, не ломались перенастройкойscope_zoom_factor
для них ( в данной ситуации обойтись без перенастройкиscope_zoom_factor
ранее было нельзя, в этом вся разница ). - Поправлен криво работающий динамический зум в 3д прицелах если выключена опция
ogse_wpn_zoom_system
. - Эффекторы не будут применяться в кадре для 3д прицелов.
- Анимации actor_move не будут применяться когда активен 3д прицел.
- Худ оружия подсвечивается от фонаря актора, как в ЗП.
- Исправлено позиционирование звуков оружия, воспроизводимых от первого лица
- Звукам перезарядки дробовиков зачем-то назначался тип звука выстрелов. Поправлено.
- Исправлены неработающие анимации у оружия
anim_holster_g
иanim_shoot_g
- теперь работают ( #308 ). - Добавлена поддержка OpenXRay-стайл анимаций и звуков неполной перезарядки (
anm_reload_empty
,snd_reload_empty
и тп.), и анимаций движения в присяде (anm_idle_moving_crouch
и тп.) для стволов из популярных паков типа STCoP Weapon Pack. - Параметр
grenade_bone
у худовой секции РПГ7 и оружия с ПГ больше не обязателен. По умолчанию будет использоваться костьgrenade
. - В ЗП партиклы учитывают худовый fov, поэтому теперь им выставляется режим отображения в зависимости от типа худа. На всякий случай добавлен параметр
forced_particle_hud_mode
для ручного управления режимом отображения. - Фикс тряски худа ( #193 )
- Исправлено не отыгрывание анимации доставания оружия при смене оружия с той же худовой секцией (ванильный баг ЗП худа)
- Убран ассерт
omfs.size() < MAX_ANIM_SLOT
. Совершенно ненужное ограничение. - Во время стрельбы бег сбрасывается.
- Фикс ситуации когда вместо оружия в руках нпс мог оказаться артефакт
- Убрано перекрестье при перезарядке и беге