Как исправить прицел оружия в сталкер


Мод сделан для версии игры 1.6.02

  • пожаловаться
  • скопировать ссылку


Не замечал у оружия кривые прицелы.

  • пожаловаться
  • скопировать ссылку


Sidorovich12 в оригинальной зов припяти и чистое небо во всех оружиях прицел сбит, особенно у автомата «вал», пули летят выше правее мушки прицела, я говорю про hud а не про оптические прицелы

  • пожаловаться
  • скопировать ссылку


Valentin400 Ну может описание мода нужно сразу уточнить?

  • пожаловаться
  • скопировать ссылку


Sidorovich12 описание изменить наверно нельзя уже(

  • пожаловаться
  • скопировать ссылку


ferr-um худ по перекрестию прицела

  • пожаловаться
  • скопировать ссылку


я единственный кто HUD прицелы поправил? ни разу не видел таких модов

  • пожаловаться
  • скопировать ссылку


Вот как было с кривым прицелом HUD, в автомате ВАЛ

  • пожаловаться
  • скопировать ссылку


А вот ровный прицел в автомате ВАЛ, во всех оружиях также ровно

  • пожаловаться
  • скопировать ссылку


полезный мод однако спасибо

  • пожаловаться
  • скопировать ссылку


тлько нельзяли его как нибуть совмести его с установкой все апгрейдов?

  • пожаловаться
  • скопировать ссылку


kastiil7771 что за апгрейды? для оружия у техников?

  • пожаловаться
  • скопировать ссылку


Valentin400 ну да

  • пожаловаться
  • скопировать ссылку


http://www.playground.ru/files/s_t_a_l_k_e_r_zov_pripyati_all_upgrades_vse_uluchsheniya_dlya_1_6_02-71257/Valentin400

  • пожаловаться
  • скопировать ссылку


kastiil7771 наверно получится слить эти моды, сейчас я тот мод скачаю и проверю

  • пожаловаться
  • скопировать ссылку


kastiil7771 не получится слить их, там есть файлы оружия w_pm.ltx и тд, но можно вручную прицел выровнять в каждом файле этом по очереди, например в пистолете ПМ, файл w_pm.ltx чтобы сделать ровный прицел для широкоэкранных разрешений нужно координаты изменить на эти aim_hud_offset_pos_16x9 = -0.165000,0.075000,-0.001500 aim_hud_offset_rot_16x9 = 0.029850,0.055800,-0.025000

  • пожаловаться
  • скопировать ссылку


Не знаю для кого нужен это мод но всеравно +5

  • пожаловаться
  • скопировать ссылку


В общем коротко объясню как я исправил худы перекрестия прицелов: Есть значения «aim_hud_offset_pos и aim_hud_offset_rot» — они отвечают за худ прицела для нешироких мониторов. Есть значение «aim_hud_offset_pos_16x9 и aim_hud_offset_rot_16x9» — они отвечают за худ прицела широкоэкранных мониторов. И там и там было криво. Я изменял цифры и смотрел что изменится, так и исправил. Чтобы было проще, я на время включил перекрестие во время прицела (zoom_hide_crosshair = false) — чтобы перекрестия не пропадали при прицеливании правой кнопкой мыши, и понемногу довёл мушку оружия ровно до точки в перекрестии. (Значения «gl_hud_offset» это отдельные худы для прицеливания с подствольного гранатомёта.)

  • пожаловаться
  • скопировать ссылку


Не понимаю почему GSC не исправляют подобные мелочи в игре. Патчи выходили а худы так и не исправили, как вообще можно не заметить это.

  • пожаловаться
  • скопировать ссылку


Скорее всего данная особенность относится к геймплею. Если прицельность точная, то герой бьёт всегда без промаха. А по идее мазать должен, типа элемент реализма.

Сам убедился, когда правил gl_hud_offset_rot_16x9 для подствольника АК74. Там правда схема трёх значений в срочке вроде как x-y-z. После правки подствольника, rpg7 не нужен был. Бил на раз ))

  • пожаловаться
  • скопировать ссылку


На архив хром ругается и отказывается скачивать. Можешь дать ссылку напрямую?

  • пожаловаться
  • скопировать ссылку


для чистого неба есть?

  • пожаловаться
  • скопировать ссылку


Да есть, вбей фикс кривых прицелов чистое небо. C этого же сайта и качай.

  • пожаловаться
  • скопировать ссылку

Содержание

  • 1 Общие положения
  • 2 Разбор структуры конфига
    • 2.1 Первый раздел
    • 2.2 Второй раздел
    • 2.3 Третий раздел
    • 2.4 Четвертый раздел
    • 2.5 Пятый раздел
    • 2.6 Шестой раздел
    • 2.7 Седьмой раздел
  • 3 Изменение описаний
  • 4 Нововведения в ЗП
    • 4.1 HUD
    • 4.2 Апгрейды и изнашиваемость
    • 4.3 Основной конфиг
  • 5 Авторы

Общие положения

Сегодня мы разберем то, каким образом можно редактировать оружие в игре — от характеристик до описания.
Характеристики оружия хранятся здесь:

…S.T.A.L.K.E.Rgamedataconfigweaponsw_[…].ltx

Разбор структуры конфига

Возьмем, для примера, конфиг w_g36.ltx. Он делится на разделы:

Первый раздел

Здесь хранится общая информация о оружии, ссылки на спавн и т.д.
Нас интересуют следующие строки:

  • description = enc1weapons1_wpn_g36 — ссылка на string_id, из которой игра подгружает описание этого оружия.
  • ef_main_weapon_type = 2 — основной тип, к которому принадлежит оружие
  • ef_weapon_type = 6 — подтип, к которому принадлежит оружие
  • default_to_ruck = false — значит, если при пустой ячейке под автомат, подобрать автомат он будет помещён в ячейку; если true автомат в ячейку помещён не не будет.
  • sprint_allowed = true — эта строка означает, что с оружием можно бегать.

Второй раздел

Содержит модификаторы, которые даются к углу зрения/дальности обзора NPC, держащего это оружие в руках:

  • holder_range_modifier = 1.85 — во сколько раз увеличивается eye_range ботов. Он производит умножение дальности обзора ботов с данным оружием в руках.
  • holder_fov_modifier = 0.3 — во сколько раз увеличивается eye_fov ботов. При редактировании этого параметра случаются проблемы с обзором нпс — могут не увидеть монстра в упор.

Следующие значения могут находится в другой части файла, но относятся они к обзору.

  • min_radius = 30 — минимальное расстояние с которого боты начинают использовать данное оружие. Для всего оружия кроме снайперских винтовок, гранат и гранатомётов рекомендуется ставить 0. Используется для того, чтобы боты с гранатомётами и снайперками переключались при приближении врага на второе оружие, а также не бросали гранаты себе под ноги.
  • max_radius = 100 — максимальное расстояние на котором боты используют данное оружие. Рекомендуется делать максимально большим каким возможно, учитывая при этом точность оружия. Вы наверно часто сталкивались с ситуациями, когда отстреливаете ботов с дальней дистанции они целятся в Вас, ходят из стороны в сторону, но не стреляют. Данные баги связаны с недостаточным размером данного параметра. Ограничивать данный параметр стоит для пистолетов, дробовиков и огнемёта.

Третий раздел

Содержит данные о самом оружии, его некоторых характеристиках:

  • cost = 2200000 — базовая цена (торговцы умножают её на некоторый коэффициент)
  • weapon_class = assault_rifle — класс оружия (здесь — штурмовая винтовка)
  • ammo_mag_size = 300 — размер магазина
  • ammo_class = ammo_5.56x45_ss190, ammo_5.56x45_ap — типы используемых патронов
  • grenade_class = ammo_m209 — тип используемых гранат
  • fire_modes = 1, -1 — режимы ведения огня (одиночными и бесконечными очередями соответственно)
  • hand_dependence = 1 — зависимость о рук (?) — возможно, речь идет о качании ствола
  • single_handed = 0 — держится ли только в одной руке
  • slot = 2 — слот в инвентаре
  • animation_slot = 2 — вид анимации (для пистолета/для винтовки)
  • inv_name = wpn-g36 — ссылка на имя, отображаемое в инвентаре, тоже берется из string table, как и описание
  • inv_name_short = wpn-g36 — имя отображаемое при наведении прицела на предмет, к примеру лежащий на земле; в данном случае используется то же самое
  • inv_weight = 3.6 — вес
  • inv_grid_width = 5 — длина иконки (кол-во клеток по х)
  • inv_grid_height = 2 — высота иконки (кол-во клеток по у)
  • inv_grid_x = 0 — координаты первого угла иконки по x
  • inv_grid_y = 10 — координаты первого угла иконки по y

Четвертый раздел

В четвертом разделе хранится информация о износе/отдаче оружия.
Практически все параметры там снабжены комментариями, поэтому приведу лишь самые интересные:

  • cam_relax_speed = 5.7 — скорость возврата в исходное положение
  • cam_dispersion = 0.2 — увеличения угла (в градусах) при первом выстреле
  • fire_dispersion_condition_factor = 5 — увеличение дисперсии в процентах при максимальном износе. Мало кто понимает, но этот параметр указан не в градусах — это множитель. 5 — это 5000% разброса при максимальном износе. Подобный разброс IRL можно получить только рассверлив ПМ перфоратором. Все стволы в оригинальной игре имеют множитель 5, а начиная с CS маразм разработчиков начал крепчать и многие стволы получили значение 15. В CoP эта тенденция усилилась и ещё больше стволов получили значение 15. Каждый нормальный модер уменьшит это значение. Для пистолетов рекомендуется 3 — 4, автоматов 2 — 2.5, снайперок 1 — 1.5
  • misfire_probability = 0.003 — вероятность осечки при максимальном износе
  • misfire_condition_k = 0.05 — коэффициент. Проще не трогать, т.к. настроить два параметра для каждого ствола в оружейном паке гораздо легче чем три. Может понабиться только для оружия с небольшим настрелом типа ВСС.
  • condition_shot_dec = 0.0002 — увеличение износа при каждом выстреле. Если вписать -1, то оружие полностью отремонтируется после первого выстрела.

Пятый раздел

Здесь хранится множество параметров, из которых наиболее интересны эти:(PDM — это параметр качания ствола в руках ГГ при движении в режиме прицеливания. добавил дядяСаша imgal@mail.ru)

  • PDM_disp_base = 3.0 — множитель, на который умножается базовая дисперсия оружия, когда ГГ (Главный Герой) стоит на месте в полный рост;
  • PDDM_disp_vel_factor = 1.3 — множитель, на который умножается базовая дисперсия оружия, когда ГГ крутит оружием или бежит;
  • PDM_disp_accel_factor = 1.3 — множитель, на который умножается базовая дисперсия оружия, когда ГГ бежит в спринте;
  • PDM_crouch = 1.0 — множитель, на который умножается базовая дисперсия оружия, когда ГГ идет пригнувшись;
  • PDM_crouch_no_acc = 1.0 — множитель, на который умножается базовая дисперсия оружия, когда ГГ стоит на месте, пригнувшись;
  • hit_power = 0.50, 0.54, 0.57, 0.60 — сила выстрела, зависит от ранга: новичок, опытный, ветеран и мастер соответственно.
  • hit_impulse = 105 — импульс пули (сила, которую летящая пуля передает жертве, влияет на поведение ragdoll-тела. Чем больше поставишь, тем дальше улетит. Если сделать большое отрицательное значение, то жертвы будут прилетать к ГГ)
  • hit_type = fire_wound — тип причиняемых повреждений, в данном случае — пулевые ранения (параметр в синглплеере ни на что не влияет)
  • fire_distance = 600 — максимальная дистанция полета пули, затем она падает на землю и исчезает. Логично прописать значение эффективного огня(пистолеты-пулеметы 50-200м, пистолеты 50м, дробовики 30м и нож полметра), но не имеет смысла устанавливать значение больше радиуса алайфа: ведь за его пределами никого нет.)
  • bullet_speed = 925 — начальная скорость пули
  • rpm = 600 — скорострельность выстрел/минута
  • hud = wpn_g36_hud — внешний вид оружия от 1-ого лица

Шестой раздел

  • = x, y, z
  • position = -0.026, -0.132, 0.0 — позиция оружия на спине по отношению к НПС при виде от 3-его лица
  • orientation = 0, 0, 0 — вращение оружия на спине НПС при виде от 3-его лица

Примечание
В ЧНЗП будет выглядеть так:

  • position = -0.026, -0.132, 0.0 — позиция оружия в руках НПС
  • orientation = 0, 0, 0 — вращение оружия в руках НПС
  • strap_position = -0.26,-0.11,0.25 — позиция оружия на спине по отношению к НПС при виде от 3-его лица
  • strap_orientation = -15,-9,110 — вращение оружия на спине НПС при виде от 3-его лица

Седьмой раздел

Содержит описания визуальной стороны оружия и некоторые другие параметры:

  • startup_ammo = 90 — как нетрудно догадаться, стартовое количество патронов (в синглплеере ни на что не влияет)
  • visual = weaponsg36wpn_g36.ogf — модель оружия, используемая NPC, а также игроком при виде от третьего лица
  • ph_mass = 4 — физическая масса, используемая при расчетах
  • scope_status = 2 — ситуация со съемным прицелом
  • silencer_status = 1 — ситуация с несъемным глушителем
  • grenade_launcher_status = 0 — ситуация с отсутствующим подствольным гранатометом
  • Параметры:
    • 0 — нет, новый прикрепить нельзя
    • 1 — уже есть, несъемный
    • 2 — нет, но можно установить
  • zoom_enabled = true — есть ли зум (прицеливание)
  • scope_zoom_factor = 33.3 — какой зум дает прицеливание (здесь 60/33.3 = 1.8х)
  • scope_texture = wpnwpn_crosshair_g36 — текстура прицельной сетки
  • shell_point = 0.15, 0.0, -0.05 — точка вылета гильз
  • shell_dir = 0.0, 1.0, 0.0 — точка выброса пороховых газов из ствольной коробки
  • fire_point = -0.000000,0.062000,0.134000 — точка выстрела
  • fire_point2 = 0.30, 0.00, 0.05 — точка выстрела из подствольного гранатомета
  • fire_bone = wpn_body
  • orientation = 0, 0, 0 — ориентация ствола оружия в направлении точки попадания пули(это центр монитора). Некоторые мододелы ориентируют оружие по линии прицеливания- это не правильно, ибо пуля вылетает из ствола, а не из прицела.
  • position = 0, 0, 0 — позиция. Первая координата отвечает за перемещение в стороны (положительная — вправо, отрицательная — влево), вторая — перемещение по высоте (положительная — вверх, отрицательная — вниз), третья — перемещение по горизонтали (положительная — вперед, отрицательная — назад)
  • visual = weaponsg36wpn_g36_hud.ogf — модель, отображаемая у нас в руках
  • grenade_bone = grenade

Далее идут различные анимации при различных действиях ГГ с оружием (стрельба, перезарядка и т.д.). Но они нам особо не нужны.
Но не в этом суть, суть в том, что уже давно, никто не замечал несколько строк, а именно, 3 строчки которые отвечают за позицию оружия при прицеливании:

  • zoom_offset = -0.123900,0.012450,-0.1377700000 — тут всё точно так же как и с позицией (которая идёт после fire_bone)
  • zoom_rotate_x = 0.024750
  • zoom_rotate_y = 0.001300

Их так же нужно править, если меняли позицию самого оружия, иначе прицеливаться ГГ будет не в центр экрана, а ниже/выше и левее/правее. Для настройки этой фичи был сделан hud_adjust_mode, но его, почему-то не оставили…
Частично вам может помочь такая штука, как:

  • zoom_hide_crosshair — скрывать ли перекрестие прицела при прицеливании

Изменение описаний

Описания оружия хранятся в файле:
…S.T.A.L.K.E.Rgamedataconfigtextrusstring_table_enc_weapons.xml

В нем хранятся строки с названиями и описаниями, на которые ссылаются конфиги оружия. Например, тот же G36 ссылается сюда:

[...]
	<string id="enc_weapons1_wpn-g36">
		<text>Штурмовая винтовка немецкого производства, представляющая собой первоклассный образец 
современного оружия - лёгкого, надёжного и эргономичного.n Боеприпасы:n обычный 5,56x45 мм 
SS109,n бронебойный 5,56x45 мм АР.</text>
[...]
	<string id="wpn-g36">
		<text>ГП37</text>
[...]

Меняя их содержимое, мы меняем описания/названия данного оружия.

Нововведения в ЗП

HUD

HUD модель была разделена на 2 части — руки и, собственно, само оружие. Это было сделано для того, чтобы добиться смены визуалов рук при смене комбинизона. Из-за этого (и не только из-за этого) большая часть конфига, находящаяся под «[wpn_xxx_hud]:hud_base» претерпела некоторые изменения — о них я и расскажу.

Добавлены:

  • hands_position = 0.020500,-0.206999,0.261999 — положение рук и оружия
  • hands_orientation = 3.349998,2.599999,-0.050000 — направление (ориентация) рук и оружия
  • hands_position_16x9 = 0.020500, -0.165999,0.209500 — положение рук и оружия для мониторов 16×9
  • hands_orientation_16x9 = 3.649998,1.050001, -0.050000 — направление (ориентация) рук и оружия для мониторов 16×9
  • item_position = 0,0,0 — позиция оружия относительно рук
  • item_orientation = 0,0,0 — ориентация оружия относительно рук
  • aim_hud_offset_pos = -0.129000,0.017000,-0.001500 — смещение рук с оружием при прицеливании
  • aim_hud_offset_rot = -0.012500,0.040000,0.020000 — ориентация рук с оружием при прицеливании
  • aim_hud_offset_pos_16x9 = -0.129000,0.017000,-0.001500 — смещение рук с оружием при прицеливании для мониторов 16×9
  • aim_hud_offset_rot_16x9 = -0.012500,0.040000,0.020000 — ориентация рук с оружием при прицеливании для мониторов 16×9
  • gl_hud_offset_pos = 0,0,0 — смещение рук с оружием при прицеливании из подствольника
  • gl_hud_offset_rot = 0,0,0 — ориентация рук с оружием при прицеливании из подствольника
  • gl_hud_offset_pos_16x9 = 0,0,0 — смещение рук с оружием при прицеливании из подствольника для мониторов 16×9
  • gl_hud_offset_rot_16x9 = 0,0,0 — ориентация рук с оружием при прицеливании из подствольника для мониторов 16×9

Апгрейды и изнашиваемость

Как известно, в ЗП есть возможность апгрейда оружия. За выбор схем при апгрейде отвечают строки:

  • upgrades = up_gr_firstab_ak74, up_gr_seconab_ak74, up_gr_thirdab_ak74, up_gr_fourtab_ak74, up_gr_fifthab_ak74, * up_gr_fifthcd_ak74 — части апгрейд схемы
  • installed_upgrades = — установленные апгрейды
  • upgrade_scheme = upgrade_scheme_ak74 — апгрейд-схема

Так-же в ЗП была создана более продуманная схема изнашиваемости, вот строки которые за это отвечают:

  • misfire_start_condition = 0.6 — изношенность, при которой появляется шанс осечки
  • misfire_end_condition = 0.1 — изношенность при которой шанс осечки становится константным
  • misfire_start_prob = 0.003 — шанс осечки при изношенности больше чем misfireStartCondition
  • misfire_end_prob = 0.043 — шанс осечки при изношенности больше чем misfireEndCondition
  • condition_shot_dec = 0.001 — увеличение изношенности при одиночном выстреле
  • condition_queue_shot_dec = 0.0012 — увеличение изношенности при выстреле очередью

Изношенность нового ствола = 1.0

Основной конфиг

Здесь изменений не так много:

Иконка используемая при апгрейде. Координаты отсчитываются с левого верхнего угла по пикселям. Файл с иконками находится по пути texturesuiui_actor_weapons.dds

  • upgr_icon_x = 304 — координаты по х (горизонтально)
  • upgr_icon_y = 627 — координаты по у (вертикально)
  • upgr_icon_width = 295 — ширина иконки
  • upgr_icon_height = 110 — высота иконки
  • * scopes_sect = scope_ak74, scope_x2.7_ak74, scope_live_detector_ak74, scope_night_ak74 — ссылки на вторичный конфиг прицела
  • [scope_ak74] — собственно сам вторичный конфиг
  • scope_name = wpn_addon_scope — ссылка на конфиг прицела
  • scope_x = 47 — расположение иконки установленного прицела на иконке оружия по x(в пикселях)
  • scope_y = 0 — по у

Авторы

Статья создана:

  • BAC9-FLCL
  • Ya.D

Статья средняя, но не сказано про параметр патронов «explosive». Нет подствольников и ракет, а именно патронов! Даже в оригинальном файле «weapons.ltx» в свойствах патронов 5.45×39 для АК к конце всегда есть строка «explosive = off». Достаточно изменить её на «explosive = on» и при выстреле таким снарядом мы увидим как в месте попадания разгорается и тухнет оранжевое пламя. Но это всего лишь анимация, так что если будете делать такие патроны, не забывайте увеличить их бронебойную способность и останавливающее действие. Кстати, это не только для патронов АК сделать можно, а для любых всего одной строкой. Удачи!

Немного поправил Chriotmao 05.09.2013

Наверное, многих сталкеров, при игре на разрешении 16:9 и т.д. раздражало растягивание прицела снайперских винтовок при прицеливании. В ЧН/ЗП разрабы сделали адаптацию под широкоформат но, оно корректно работает только для определенного разрешения(точно не помню, но кажется ето 1280х768 и ему подобных…). На остальных широкоформатных разрешениях прицел все также выглядит растянуто.

В етом туторе будет описана адаптация прицелов под разрешение 1600х900 (16:9).

Немного теории.

1. Для прицела движок способен использовать картинку с разрешением только 1024х768 не зависимо от разрешения экрана. Потом она просто растягивается под размер самой игры.

2. Описания всех прицелов находятся в папке: gamedataconfigsui

файлы:

scopes.xml – Описание прицелов для станд. моников. (Он нам не понадобится)

scopes_16.xml — Описание прицелов для широкоформатных моников.

Описания текстур прицелов находятся в папке: gamedataconfigsuitextures_descr

файл: ui_ingame.xml

Приступим…

Принцип работы движка: берется стандартная текстура и сжимается по осям Х,У, так чтобы при растягивании картинки размером 1024х768 до 1600х900, прицел имел правильные пропорции. Размеры до которых будет сжиматься картинка записываются в файле scopes_16.xml. Т.к. после сжатия по оси Х по бокам образуются «просветы». Они устраняются с помощью специальных «заплаток» с левой и правой стороны. Эти заплатки должны иметь, такую ширину, которая в сумме с прицелом дает число число 1024.

Вот принцип вычисления размеров:

По оси Y размер ставим height=»768″.

1. Xi=(1024/X)*(1024*(Y/768));

2. Xj=(1024-Xi)/2;

X – Ширина экрана; Y – Высота; Xi – Ширина прицела после сжатия; Xj – ширина заплаток;

X=1600;

Y=900;

(1024/1600)*(1024*(900/768))=768;

(1024-768)/2=128;

Все числа необходимо округлить до целых.

Примечание: Делаем проверку 768+2*128=1024. Если равенство не выполняется увеличиваем ширину заплаток или прицела(не больше 1-2 пикселя).

Смотрим в: scopes_16.xml

Было:

  <wpn_crosshair x="0" y="0" width="1024" height="768">
    <auto_static x="85" y="0" width="854" height="768" stretch="1">
      <texture>wpn_crosshair</texture>
    </auto_static>
    <auto_static x="0" y="0" width="85" height="768" stretch="1"><!--левая заплатка-->
      <texture>wpn_crosshair_add_l</texture>
    </auto_static>
    <auto_static x="939" y="0" width="85" height="768" stretch="1"><!--правая заплатка-->
      <texture>wpn_crosshair_add_r</texture>
    </auto_static>
  </wpn_crosshair>

Стало:

  <wpn_crosshair x="0" y="0" width="1024" height="768">
    <auto_static x="128" y="0" width="768" height="768" stretch="1">
      <texture>wpn_crosshair</texture>
    </auto_static>
    <auto_static x="0" y="0" width="128" height="768" stretch="1">
      <texture>wpn_crosshair_add_l</texture>
    </auto_static>
    <auto_static x="896" y="0" width="128" height="768" stretch="1">
      <texture>wpn_crosshair_add_r</texture>
    </auto_static>
  </wpn_crosshair>

Аналогичные координаты выставляем и для остальных прицелов.

Удачи! :ny_ph34r_1:

Спасибо A_N_Drew за толчок к написанию тутора.

Предложения по доработке тутора писать в личку.

Понравилась статья? Поделить с друзьями:
  • Как найти теплоту в физике через мощность
  • Как найти исайю сэндовала
  • Как составить форму 2 при ликвидации
  • Как составить узор по клеткам
  • Как найти сетевой драйвер на виндовс 10