Dennis_Chikin 3 658 Опубликовано 7 Марта 2015 Скриптоконфиговые вопросы, касающиеся оружия. Подствольные дробовики, всяческие огнеметы, "гравипушки", плазмаганы и прочее. Посмотрим, что получится. Преимущественно для ГОТОВЫХ решений. Справочные материалы - здесь. ------------------------------------------------------------------------------------------------------------ 100 = 1x 93.3 ~ 1,2x 74.7 ~ 1,5x 70.3 ~ 1,6x 56 ~ 2x 44.8 ~ 2,5x 41.5 ~ 2,7x 40 ~ 2,8x 37.3 ~ 3x 34.5 ~ 3,25x 33 ~ 3,4x 32.4 ~ 3,46x 32 ~ 3,5x 28 ~ 4x 25 ~ 4,5x 22.4 ~ 5x 20.4 ~ 5,5x 18.7 ~ 6x 16 ~ 7x 14 ~ 8x 12.5 ~ 9x 11.2 ~ 10x 10.2 ~ 11x 9.3 ~ 12x 8.6 ~ 13x 8 ~ 14x 7.5 ~ 15x 7 ~ 16x 6.6 ~ 17x 6.2 ~ 18x 5.9 ~ 19x 5.6 ~ 20x 5.3 ~ 21x 5.1 ~ 22x Скрипт bind_superweapon.script 1.01 release Для ТЧ 1.0006 X-Ray extensions rev225 Регулируемая скорострельность. Добавлена стрельба из подствольного гранатомёта картечью. Параметры подствольного гранатомёта задаются в секции этого аддона, скрипт использует четыре параметра: fire_dispersion_base2 = 0.85 bullet_speed2 = 280 hit_power2 = 0.9 hit_impulse2 = 100 Граната с ударным запалом, РГН, РГО, вылет пофиксен новой правкой X-Ray extensions rev?. Для структурности перекомпоновал конфиги, аддоны отдельно, боеприпасы к гранатомётам отдельно, гранаты отдельно. (с) НаноБот 27.02.2015 г. https://yadi.sk/d/MuXQaSjWfMJXN Для работы требуются следующие конфиги: [wpn_addon_grenade_launcher]:identity_immunities, default_weapon_params GroupControlSection = spawn_group discovery_dependency = $spawn = "weapons\addons\grenade_launcher" ; option for Level Editor class = WP_GLAUN cform = skeleton visual = dynamics\weapons\wpn_upgrade\wpn_grenade_launcher.ogf description = st_grenade_launcher_descr $prefetch = 32 cost = 2000 inv_name = st_grenade_launcher inv_name_short = st_grenade_launcher inv_weight = 1.3 inv_grid_width = 2 inv_grid_height = 1 inv_grid_x = 18 inv_grid_y = 0 grenade_vel = 76 ; Для подствольного дробового выстрела (с) НаноБот fire_dispersion_base = 0.9 bullet_speed = 280 hit_power = 0.8 hit_impulse = 100 fire_distance = 200 use_aim_bullet = false [ammo_vog_buck]:ammo_base GroupControlSection = spawn_group discovery_dependency = $spawn = "weapons\ammo\ammo_vog-25" ; option for Level Editor class = S_VOG25 cform = skeleton visual = dynamics\weapons\wpn_ammo\ammo_vog_25.ogf description = ammo-vog_buck_descr $prefetch = 64 cost = 300 box_size = 1 inv_name = ammo-vog_buck inv_name_short = ammo-vog_buck_s inv_weight = .08 inv_grid_width = 1 inv_grid_height = 1 inv_grid_x = 19 inv_grid_y = 9 kill_msg_x = 38 kill_msg_y = 233 kill_msg_width = 21 kill_msg_height = 22 k_dist = 1 k_disp = 5 k_hit = 0.2 k_impulse = 1 k_pierce = 0.25 k_ap = 0.25 impair = 1 buck_shot = 40 tracer = on wm_size = 0.05 fake_grenade_name = https://yadi.sk/d/fSEEvzpgjzMxf Так же не забываем добавить этот патрон в конфиги оружия с ГП. (grenade_class = ammo_vog-25, ammo_vog_buck) Картечь трассирующия, сделано для наглядности, в реальном моде это лучше убрать. Это мод предназначен для мульти-плейера ЗП + XRay Extensions rev232. Добавлены три гранаты: РГН, РГО - гранаты с ударным запалом и Заря-3 - светошумовая ослепляющая граната. Так же, указаные гранаты работают и в сингл-плейере (СГ). Необходимые файлы и папки: Папки mp и prefetch это для работы мультиплейра (МП) В папке weapons, файлы: w_flashgrn_zara3.ltx w_rgn.ltx w_rgo.ltx в файле w_rgd5.ltx находится инклюды для гранат. В папке text описание гранат. Скрипт: bind_grn_flash_mp.script необходим для ослепляющих гранат в МП bind_grn_flash.script это для ослепляющих гранат в СГ bind_grenade.script универсальный скрипт для гранат с ударным запалом. flesh_effector.script эффекты ослепления для актора в СГ В папках meshes, sounds, textures находятся ресурсы самих гранат и иконок. (с) НаноБот AMK-forum 6.11.2015 г. ------------------------------------------------------------ Заменил модель гранаты Заря-3 на нормальную, автор гранаты 2clip (с) НаноБот AMK-forum 16.01.2016 г. https://yadi.sk/d/qIIjmJTpkHS3H Турель с лимитным боекомплектом для OGSE 0963. ver 1.011 Текущия версия делалась для STALKER OGSE 0693 Patch 1.12 Теперь читерства не будет. В турели есть магазин заданного размера, задаётся в конфиге турели параметром ammo_mag_size. Патроны турели должны быть реальными. Турель можно заряжать кнопкой перезарядка (по умолчанию кнопка R), при разборе турели патроны разряжаются в инвентарь. Спавн турели скриптом задаётся так: bind_statpkm.create_stat_pkm(lavel_name, position, ammo_elapsed, undismounting) lavel_name – техническое имя уровня. position – координата спавна. ammo_elapsed – текущие количество патронов, лишние ограничиваются. undismounting – неразборная турель, true - турель невозможно разобрать. Так же в скрипте можно задать не показ текущего количества патронов, show_ammo = false. Дополнительно: Эта версия скрипта использует следующие зависимости, это необходимо для адаптации к разным версиям OGSE 0963. В soundtrack.script после строки 435: function pkm_empty() s_play([[weapons\pkm\pkm_empty]]) end -- NanoBot В config\text\rus\string_table_ui.xml после строки 84: <string id="tip_pkm_use_undis"> <text>Использовать турель ($$ACTION_USE$$)</text> </string> <string id="pkm_reload"> <text>Перезарядка турели...</text> </string> В config\weapons\w_mounted.ltx надо задать параметр в секции turret_usable: ammo_mag_size = 200 (с) НаноБот 5.03.2016 г. 19:50 В. 1.01 Добавил! Не разборную турель можно разряжать. (с) НаноБот 7.03.2016 г. 20:37 В. 1.011 Исправил: забыл обновить нетпакет после разрядки! (с) НаноБот 21.03.2016 г. 0:25 https://yadi.sk/d/f7YTWpU6qLoZd Осветительная ракетница. Предназначена для ТЧ, должна работать на любом патче, так же можно адаптировать для ЧН, ЗП, ЛА. https://yadi.sk/d/eeBUtOzE3EjLse В моде есть дробовик КС-23 из которого можно стрелять разными боеприпасами 4-калибра, в том числе осветительными. Update https://yadi.sk/d/RT0YJcBi3EpBtC Добавлены патроны красного огня 12 калибра. Ревизии от НаноБота, пусть пока тут полежат. Изменил нумерацию ревизий, 230 это оригинальная ревизия, после точки номер моей ревизии. (с) НаноБот 23.03.2017 0:23 https://yadi.sk/d/fASnPpVij2tTq ЧН Колбек на выстрел. ЧН Для турелей на основе БТР сделал экспериментальную правку для без проблемного открывания дверей. ЧН ЗП Вывод начального адреса xrGame.dll для вычисления реального адреса вылета при вылетах типа XXXX:YYYYYYYY xrGame.dll Реальный адрес вычисляется так: YYYYYYYY - StartAdress + 10000000h, полученное значение вводят в IDA в поля вызываемой кнопкой G и получают функцию где произошло исключение. ЧН ЗП Пофиксел вылет "смерть актора в машине". (с) НаноБот https://yadi.sk/d/fSEEvzpgjzMxf ЗП Колбек на выстрел (передаёт вектор направления) ЗП Возможность использовать скрипты в мультиплеере (включение биндеров) ЗП Добавлено пространство имён game_object_fix Реализованы функции: Проверка типа объекта (аналогичны функциям из ТЧ) "is_game_object" "cast_game_object" "cast_car" "is_car" "is_helicopter" "is_holder" "is_entity_alive" "is_inventory_item" "cast_inventory_item" "is_inventory_owner" "is_actor" "is_custom_monster" "is_weapon" "cast_weapon" "is_weapon_gl" "is_inventory_box" "cast_inventory_box" "is_medkit" "is_eatable_item" "is_antirad" "is_outfit" "is_scope" "is_silencer" "is_grenade_launcher" "is_weapon_magazined" "is_space_restrictor" "is_stalker" "is_anomaly" "is_monster" "is_explosive" "is_script_zone" "is_projector" "is_trader" "is_hud_item" "cast_hud_item" "is_food_item" "is_artefact" "is_ammo" "is_missile" "is_physics_shell_holder" "is_grenade" "is_bottle_item" "is_hanging_lamp" "is_knife" "is_binoculars" "is_weapon_pistol" "is_weapon_shotgun" "is_weapon_autoshotgun" "is_exploded" ; взрывной объект взорван? "object_luminocity" ; уровень освещенности объекта ; методы для оценки состояния актора "is_actor_normal" "is_actor_crouch" "is_actor_creep" "is_actor_climb" "is_actor_walking" "is_actor_running" "is_actor_sprinting" "is_actor_crouching" "is_actor_creeping" "is_actor_climbing" ; Для класса CWeaponMagazined "get_fire_mode" ; получить режим огня "get_default_ammo_type" ; получить дефолтовый тип патрона (имя секции) "get_ammo_type" ; получить реальный тип патрона "get_rpm" ; получить скорострельность "set_rpm" ; установить скорострельность "is_grenade_mode" ; режим гранатомёта? ЗП В пространстве имён level добавлено: Функции для трассировки геометрии. "raypick_set_flags_dir_dist" ; установить - флаги, направление, дистанцию. "raypick_set_ignoreobjid_pos" ; установить - ID игнорируемого объекта, позицию. "raypick_query" ; выполнить трассировку. "raypick_get_object" ; получить объект. "raypick_get_distance" ; получить дистанцию. "raypick_get_element" ; получить элемент геометрии или номер кости объекта. "raypick_get_name_bone" ; получить имя кости объекта. "raypick_get_normal" ; получить вектор нормали геометрии или объекта. "raypick_get_end_point" ; получить позицию, куда упёрлась точка трассировки. "raypick_get_shoot_factor" ; получить ShootFactor геометрии или объекта. "raypick_get_flags" ; получить флаги геометрии или объекта. Для мульти-плейра. "current_actor" ; получить объект текущего актора "on_server" ; проверка, это сервер? ЗП В классе CUIStatic добавлено: "SetColor" ; установить цвет текстуры (через Frect). ЗП Метод explode изменён, теперь надо задавать объект инициатора, это обязательно. (bomb:explode(npc)) Класс CWeaponMagazinedWGrenade существенно доработан: Есть возможность стрелять дробью. При смене типа боеприпаса меняется также ракета. Ранее подствольный гранатомёт стрелять прежней гранатой при смене боеприпаса. https://yadi.sk/d/S6lXK3hcko35b Только для ЗП! Проверка типа объекта "is_weapon_rpg7" "is_weapon_rg6" "is_rocket_launcher" "is_crow" "blocked_rocket_rpg" ; блокировка выстрела гранаты для класса CWeaponRPG7 Функции для трассировки геометрии. "raypick_get_transparency_factor" ; фактор прозрачности геометрии и объектов ; Возможность стрелять картечью из подствольного гранатомёта. ; Смена типа ракет при перезарядке ; Удаляем ракеты при разрядке CWeaponRG6, CWeaponRPG7, CWeaponMagazinedWGrenade. ; колбек на удар(выстрел) ножа, вызывается в объекте ножа ; блокировка автоперезарядки (перезарядка только кнопкой R), включается auto_reload = false в секции оружия ; Гранаты с ударным запалом!!! Полностью движковые! ; Кумулятивный эффект. Задаётся cumulative_sect = секция_кумулятивной_пули ; стабилизированная ракета (ракета разворачивается по курсу) (с) НаноБот 27.11.2015 г. https://yadi.sk/d/ClW1QMrukoxLg Добавил для ЗП: Колбек на обновления кости граната для класса CWeaponRPG7 Передаёт: номер типа текущего боеприпаса (от 1)(m_ammoType++), номер_состояние_худа(GetState) Это необходимо для скриптового отключения и/или включения костей гранат для многозарядных и много-типово-зарядных гранатомётов. Для класса CWeaponMagazinedWGrenade теперь объём магазина гранат не ограничен. Мелкие правки. Обнуления m_bBlockRocket. Закоментировал лог-функции. (с) НаноБот 28.11.2015 г. https://yadi.sk/d/-9KMCi3HktAnL Добавил для ЗП: Новый режим работы для класса CEliteDetector, скриптовый класс DET_ELIT, детектор "велес" Этот режим называется скриптовый, включается параметром script_mode И позволяет в биндере (скриптах) отображать различные объекты. В точности надо для биодетектора. Для этого используются методы: detector_clear -- стерает список detector_draw_object -- добавляет в список объект для отображения на панели детектора. Пример: detector:detector_clear() -- надо для зачистки экрана детектора, и вызывается в начале detector:detector_draw_object(cobj, _type, vector(), 0) cobj - объект для отображения, _type - тип палитры, берётся в файле ui_detector_artefact.xml в теге script_detector Сама пилитра должна быть типа такой. <palette id="stalker" width="0.0022" height="0.0022" stretch="1" alignment="c"> <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture> </palette> id="stalker" -- это имя палитры, vector() -- вектор читается, но не используется, должен быть обязательно. float -- читается, но не используется. Эти методы работают только с указаным классом и при включеном режиме (script_mode = true). Если при работе в логе выскакивает: ! RegisterItemToDraw. static not found for [%s] Значит нету указаной палитры, просмотрите точно названия. (с) НаноБот 1.12.2015 г. Демо-версия скриптового биорадара на новом режиме. https://yadi.sk/d/s9XdqOGNktDfP https://yadi.sk/d/Q9Uzdz-fmWAwR Только для ЗП. Проведён масштабный рефакторинг. Более полное использование макросов. Исправлены различные ошибки в работе оружия. Существенная переделка по сравнению с прежними ревизиями. Добавлены методы: set_air_resistance -- задать сопротивление воздуха. get_air_res_linear -- получить линейное сопротивление. get_air_res_angular -- получить сопротивление вращению. Добавлены колбеки на нажатие и отпускание клавиш. Для объекта CWeaponRPG7, CWeaponRG6 добавлена возможность вести автоогонь. Для CWeaponRPG7 можно задавать размер магазина более 1. Исправил блокировку перезарядки, ранее работала только для класса CWeaponMagazinedWGrenade, теперь работает для всех классов CWeaponMagazined и наследников. При отсоединении подствольного гранатомёта, граната разряжается и в основном режиме (в оригинале не разряжалась). Добавлена возможность использования осветительных ракет, при not_explosive = true ракета не взрывается от контакта с геометрией и так же не взрывается от самоликвидатора, просто удаляется. Для класса CWeaponRG6, CWeaponMagazinedWGrenade работает прицеливание в объекты. Фикс вылета если не указали для класса CWeaponMagazined параметр fire_modes. Фикс изменение размера магазина у CWeaponMagazinedWGrenade после апгрейда. (с) НаноБот 22.12.2015 г. https://yadi.sk/d/1J_sgaN-maLaR Только для ЗП. класс CWeaponBM16 стреляет очередями: В конфиге двустволки добавить: fire_modes = 1, 2 ; режим 2 стрельба дуплетом base_dispersioned_bullets_count = 2 ; от выст. нет отдачи Фикс глюка, если fire_modes нет в конфиге, то некоторое оружие стреляет очередями. Фикс не правильной работы CWeaponRG6, если одновременно заряжены картечные и ракетные боеприпасы. (с) НаноБот 29.12.2015 г. https://yadi.sk/d/YjjIPWQ6ohABe * Расширенный хит-колбек для наследников объекта CEntity (Сталкеры, Актор, Монстры, машины, вертолёты). Передаётся в упакованной форме тип хита и номер кости. * При переходе в онлайн condition объекта не устанавливается принудительно в 1.0. (с) НаноБот 12.02.2016 2 5 2 3 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 26 Марта 2015 Ньюбский совершенно вопрос, внезапно, но тема все равно не шибко загружена: Есть автомат. Ставим в стрельбу одиночными, стреляем - дырка от пули там, куда целились. Жмем правую мышу (зум) - дырка от пули заметно выше прицела. Стреляем - дырка там, где и предыдущая. Целимся в зуме, стреляем - пуля улетела выше. Зум выключаем - прицел стоит на дырке от пули. Вот не помню, как такое лечится, и найти не могу. Конфигами ? Как именно ? Или это модель кривая ? 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 27 Октября 2015 Сейчас внимательно перечитал скрытые посты в теме про геймплэй, ну и заодно еще про rx_wmgr. А также по следам одной свежей горячей дискуссии в скайпе. В оружейных конфигах имеются следующие параметры: ef_main_weapon_type = ef_weapon_type = holder_range_modifier = holder_fov_modifier = min_radius = max_radius = Это все параметры для неписей. Судя по некоторым описаниям ряда прохождений ОРИГИНАЛА ТЧ, в ряде случаев они работают. Если заданы правильно, и если не вступают в конфликт с чем-то еще. А вот исследований того, КАК они работают - ни одного не видел. Хотя, в общем-то, и не особо искал. Все как-то резво с самого начала бросились писать странные менеджеры, которые хуже движковых возможностей хотя бы тем, что, во-первых, жрут, во-вторых - не учитывают, например, наличие тех же укрытий (хотя вот движковая перезарядка, например, укрытия активно использует, в отличии от...), ну и, наконец, адекватно ими пользоваться - тоже ни кто не умеет. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 20 Ноября 2015 Ну и напомню хрестоматийный случай с АКСУ и АК длинным в тайнике Стрелка. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 21 Ноября 2015 (изменено) Гм, попробую тогда расшифровать. Правда, не уверен, что еще больше запутаю.у мну иногда проблемы с изложением бывают.По вопросу n1: как минимум часть настроек "отдачи" и иже с ними - оверрайдится моделями. То есть, как анимация запустилась - так и отыгрывает. Другое дело, что, например, при отстреле одиночными, когда настраивал кривые точки прицеливания - ваще не заметил "увода".То есть, если очередью - унесет нафиг. Если один выстрел - возвращается.pdm же - по ходу, неписевые параметры. По крайней мере, на это - они реагируют, а вот дырка от пули и возврат ствола при отстреле - нет. Однако, говорят, что нет. Значит это я просто сильно хотел увидеть - вот и увидел. И, да, нифига не понял, кто отвечает за гуляние ствола в зуме. Просто не интересно было.То есть, да: из 3-х (как минимум) разных историй. И требует бобровольца, который проведет отстрел, меняя что попало как попало, а потом составит отчет. Или просто опубликует уже готовое здесь, а не где-то в теме на тыщу постов.По второму: имеет место смесь пысорудиментов и реально имеющих значение явлений. Пысорудимент - несомненно, различение стволов по clsid, а не по секциям. Ну, как это было с брониками, но выпилено. Со стволами - не выпилено.Одновременно с этим, модель, конечно, не при чем, но при чем - поддержка очередей, подствольников, типа перезарядки/боеприпасов и черт знает чего еще. То есть, на уровне нетпакета как минимум различия. И будешь менять кондишн - а получишь - гранаты в подствольнике. И наоборот.Не удивлюсь также другим эффектам.При этом, да, есть еще и ограничения модели. Но, если ты прописал подствольник модели, у у которой его нет - получишь проблемы в онлайне, однако в офф ни что не мешает твоему творению спокойно существовать.Поменяешь класс стволу, который прописан в олспавне - огребешь "укороченный автомат Стрелка" с кондишн в нуле, или еще чего хуже. А скриптово потом исправлять это переспавном - вот даже не пытайся. Изменено 21 Ноября 2015 пользователем Dennis_Chikin 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 21 Ноября 2015 (изменено) Тогда вопрос такой будет: как экспериментально увидеть, на что действует это самое pdm ? 2 shahvkit: он имеет в виду config\creatures\* disp_walk_stand = и т.д. Но было ощущение, что с параметрами из конфигов стволов оно таки перемножается/суммируется. Гм, так для актора - что можно написать, и на что смотреть, чтобы было сразу НАГЛЯДНО ? Ну поймите вы, что вот так каждому сидеть перебирать все параметры, когда кто-то это уже делал - занятие слегка малоосмысленное. Изменено 21 Ноября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 21 Ноября 2015 (изменено) Британские учОные изобрели компьютер, который, наконец, прошел тест Тьюринга: на любой вопрос он отвечает: "Нет !" и загадочно улыбается. Похоже, в этой теме, как и у мапперов, тоже пора вводить дополнительное правило про дыбу и испанский сапог. Изменено 21 Ноября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 21 Ноября 2015 Исходники - большие. Продемонстрировать - изменили строку такую, получили такой вот эффект - давно бы уже. Кстати, что там за миф с глушителями, и что с ним не так ? Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 7 Февраля 2017 Очередной идиотский вопрос: как можно узнать время перезарядки оружия ? 1. Изнутри игры. 2. Вообще, в принципе, с применением внешнего инструментария. Какого именно ? Ну и коль на то пошло, какие существуют методы относительно безболезненного его изменения ? Чтоб 3 раза не вставать, заодно уже спрошу и про убирание оружия. Вот например, есть бинокль. Очень хороший бинокль. Не знаю, где первоначально взят, и кто автор, но расползлось широко. Одна маленькая проблемка - стоим мы себе с биноклем, такие красивые, и тут, вдруг, набегают враги. Все, переигрываем с сэйва, когда у нас бинокля в рука не было, ибо пока уберется - в реале успеют не только убить, но провести похороны, да потом еще и поминки. Вот где это лечится (опять же, наименее болезненно для людей, не знающх, чем отличается фотошоп от 3ds, но умеющих пользоваться hex editor) ? Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 2 Марта 2018 https://www.dropbox.com/s/n1szevhzjtlunzs/ss_dc_03-02-18_17-19-52_(l04u_labx18).jpg?dl=0 Вот это можно как-то поправить для конкретного оружия или конкретного патрона ? Там кроме дыма еще и куча щебенки - просто плохо захватилась. Желательно, для ВСЕХ материалов убрать эффект. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 3 Марта 2018 Ну, во-первых, не дробовиком, во-вторых, бывают и другие стволы. Вопрос именно в этих эффектах отбойного молотка. Все эти дымы, щебенка и прочие дырки... На какую кнопку нажимать ? (С) Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 4 Марта 2018 (изменено) Не, все равно порнуха какая-то. И вообще, друзья мои, я опечален. 100500 бессмысленных совершенно конфигов, которые находятся поиском, и среди всего этого - ничего, где смысл "вбейте вот эти цифры" был бы объяснен человеческими словами. Я понимаю, что, к примеру, fire_point - это - точка выстрела, и для того, чтобы прочитать подобный "перевод" - ну вот совершенно не надо сталкер-вики и всех остальных 100500 конфигов. ЧТО НАДО СДЕЛАТЬ чтобы партикля при выстреле рисовалась от ствола и летела в сторону цели ? Ась ? И как, все-таки, отключить чертов отбойный молоток ? Ни хит, ни скорость, ни "количество дробин", не влияют вообще никак. И, да, заинтересовавшись "рикошетом", обнаружил, что даже выставив скорость пули в 1, "рикошет" все равно будет, и будет отрисован черт знает где. На закуску, обнаружилось, что пресловутая "разрывная пуля" рисует партикл не там, куда попала, а куда после этого УПАЛА. Совсем зашибись... Вот как вот все это называется ? Изменено 4 Марта 2018 пользователем Dennis_Chikin 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 12 Марта 2018 Вообще, есть "гравипушка". Принцип - абсолютно тот же, вообще без всяких снарядов. Просто партиклы и демедж. Но, это ж делать надо... А вот то, что касается обычной стрельбы - при внимательном рассмотрении, там не только с огнеметом ахтунг: очередь по трупу, из чего угодно, или просто в землю/стену/дерево прямо перед собой - все, что описано выше. И еще эти дырки/кровищща - они и fps нехило жрут. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 14 Марта 2018 Примерно так: //возвращает текуший разброс стрельбы (в радианах)с учетом движения float CActor::GetWeaponAccuracy() const { CWeapon* W = smart_cast<CWeapon*>(inventory().ActiveItem()); if(m_bZoomAimingMode&&W&&!GetWeaponParam(W, IsRotatingToZoom(), false)) return m_fDispAim; float dispersion = m_fDispBase*GetWeaponParam(W, Get_PDM_Base(), 1.0f); CEntity::SEntityState state; if (g_State(state)) { // angular factor dispersion *= (1.f + (state.fAVelocity/VEL_A_MAX)*m_fDispVelFactor*GetWeaponParam(W, Get_PDM_Vel_F(), 1.0f)); // Msg("--- base=[%f] angular disp=[%f]",m_fDispBase, dispersion); // linear movement factor bool bAccelerated = isActorAccelerated(mstate_real, IsZoomAimingMode()); if( bAccelerated ) dispersion *= (1.f + (state.fVelocity/VEL_MAX)*m_fDispVelFactor*GetWeaponParam(W, Get_PDM_Vel_F(), 1.0f)*(1.f + m_fDispAccelFactor*GetWeaponParam(W, Get_PDM_Accel_F(), 1.0f))); else dispersion *= (1.f + (state.fVelocity/VEL_MAX)*m_fDispVelFactor*GetWeaponParam(W, Get_PDM_Vel_F(), 1.0f)); if (state.bCrouch){ dispersion *= (1.f + m_fDispCrouchFactor*GetWeaponParam(W, Get_PDM_Crouch(), 1.0f)); if(!bAccelerated ) dispersion *= (1.f + m_fDispCrouchNoAccelFactor*GetWeaponParam(W, Get_PDM_Crouch_NA(), 1.0f)); } } return dispersion; } Касательно огнемета: function generic_object_binder:hit_callback( victim, amount, dir, who, bone_idx ) ... local wpn = who:active_item() if wpn and wpn:section() == "wpn_flame" then if self.burn_hit == -1 then self.burn_hit, self.burn_id = false, false else self.burn_hit = ( self.burn_hit or 0 ) + 1 self.burn_id = who:id() end function generic_object_binder:update( delta ) ... if self.burn_hit then -- отложенный вред от огнемета -- дохлые play_particle( mob, { ["obj"] = mob, ["particle"] = "amk\\flame" } ) self.burn_hit = false end ... if self.burn_hit and self.burn_hit ~= -1 then -- отложенный вред от огнемета -- живые local h = hit() h.draftsman = ( self.burn_id and level.object_by_id( self.burn_id ) ) or mob h.type = hit.burn h.direction = vector():set( 0, 1, 0 ) if self.c_zomb and mob.health < 0.21 then h.power = 100 else h.power = self.burn_hit * 0.5 end h.impulse = 0 self.burn_hit = -1 -- log( "info", "(%s):update, burn (%s:%s)", self.mob_name, h.draftsman:name(), h.power ) mob:hit( h ) play_particle( mob, { ["obj"] = mob, ["particle"] = "amk\\flame" } ) end Это если на скорую руку в целях борьбы с тормозами. Но дело не в этом, а в кровище/осколках/рикошетах от пуль, любых. То есть, не трогая движок, надо просто проверять: в фокусе/не в фокусе и расстояние, и тогда взводить "хит от огнемета", а собственно пулю - резать сразу при выстреле. 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 1 Апреля 2018 А вообще - в чем выражается это самое выше ? Ствол задирают высоко по ходу стрельбы, вспышка не там, сам ствол вообще не там, что-то еще ? Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 1 Апреля 2018 Ну вот это как бы не сам партикл крутить пришлось, в редакторе. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 19 Июня 2018 https://www.dropbox.com/s/rirmc1ir4kay4oo/ss_dc_06-19-18_08-39-45_(puzir).jpg?dl=0 https://www.dropbox.com/s/t3lldstffvtiqqc/ss_dc_06-19-18_08-39-49_(puzir).jpg?dl=0 Что здесь надо подкрутить, и в какую сторону ? Вроде все почти так, но что-то не так: мушка какая-то "кривая". zoom_rotate_x, zoom_rotate_y или в zoom_offset первую-вторую цифры в третьем-четвертом знаке ? И еще вопрос: партиклы вспышки как-то кривовато либо в зуме, либо в нормальной позиции: в зуме, соотвественно, левее, чем надо, в обычной - правее. Что с этим можно сделать ? Приблизить (третья цифра в fire_point) ? Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 19 Июня 2018 То-есть, я правильно понял, что зад у него левее, чем надо, при том что собственно точка вылета пули - почти правильно ? "при прицеливании эта вспышка сместится немного влево. " - да, я про этот эффект. По z ни кто не пробовал крутить ? Вроде, как раз тогда в нормальном положении, без зума, она должна субьективно смещаться по диагонали, оставаясь на месте в режиме зума (в нем только крупнее/мельче, если не смещена), нет ? Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 658 Опубликовано 21 Июня 2018 Попробовал таки подвигать "вперед-назад". С партиклами выстрела - получилось. То есть, несоответствие позиции "зум"-"обычная" - лечится. С прицелом получилось странное - правый внутренний край прорези - "дрожит". Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение