Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 7 Марта 2015 Это популярное сообщение. Поделиться Опубликовано 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 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
ed_rez 16 109 Опубликовано 25 Февраля 2018 Поделиться Опубликовано 25 Февраля 2018 @aromatizer , АК-74М смотри. Так как нафиг никому не нужно было, что я там делаю, положил "болт" на всю эту муть. За этот АК писал несколько раз в той теме. Ссылка на комментарий
aromatizer 4 423 Опубликовано 25 Февраля 2018 Поделиться Опубликовано 25 Февраля 2018 (изменено) 21 минуту назад, ed_rez сказал: Так как нафиг никому не нужно было, что я там делаю, положил "болт" А ты не делай для кого-то... Делай для себя и просто делись со всеми.) Когда делал скриншоты, немного повоевал... Все таки, до чего здорово в "Равновесии-2" боевка сделана... Изменено 25 Февраля 2018 пользователем aromatizer 1 1 Отношения между людьми- главная ценность в человеческом обществе.Любая полученная информация- это только повод для размышлений, а не побуждение к действию.Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAEНакопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt Ссылка на комментарий
killersan6 184 Опубликовано 25 Февраля 2018 Поделиться Опубликовано 25 Февраля 2018 Опускаете мушку, поднимаете целик - и все! Проблема решена, и можно играть дальше без всяких тряпок. Ссылка на комментарий
Zagolski 74 Опубликовано 28 Февраля 2018 Поделиться Опубликовано 28 Февраля 2018 О чем сыр-бор? VIEWPORT_NEAR не пробовали снижать? Ссылка на комментарий
ed_rez 16 109 Опубликовано 28 Февраля 2018 Поделиться Опубликовано 28 Февраля 2018 2 часа назад, Zagolski сказал: VIEWPORT_NEAR не пробовали снижать? Я так понимаю, что эта "буква" в движке? Ссылка на комментарий
Zagolski 74 Опубликовано 28 Февраля 2018 Поделиться Опубликовано 28 Февраля 2018 (изменено) Да, в движке. Расстояние до камеры, проще говоря. Если снизить до 0.05 к примеру, то хоть вплотную к лицу подноси, модель оружия резаться не будет. А по дефолту она обрезается уже на расстоянии 20 см. Изменено 28 Февраля 2018 пользователем Zagolski 2 Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 2 Марта 2018 Поделиться Опубликовано 2 Марта 2018 https://www.dropbox.com/s/n1szevhzjtlunzs/ss_dc_03-02-18_17-19-52_(l04u_labx18).jpg?dl=0 Вот это можно как-то поправить для конкретного оружия или конкретного патрона ? Там кроме дыма еще и куча щебенки - просто плохо захватилась. Желательно, для ВСЕХ материалов убрать эффект. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
aromatizer 4 423 Опубликовано 2 Марта 2018 Поделиться Опубликовано 2 Марта 2018 Скорее всего, надо отключить рикошет, т.к. огнемет на самом деле является дробовиком. Отношения между людьми- главная ценность в человеческом обществе.Любая полученная информация- это только повод для размышлений, а не побуждение к действию.Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAEНакопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 3 Марта 2018 Поделиться Опубликовано 3 Марта 2018 Ну, во-первых, не дробовиком, во-вторых, бывают и другие стволы. Вопрос именно в этих эффектах отбойного молотка. Все эти дымы, щебенка и прочие дырки... На какую кнопку нажимать ? (С) Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
aromatizer 4 423 Опубликовано 4 Марта 2018 Поделиться Опубликовано 4 Марта 2018 (изменено) По идее, BFG должен знать, где этот рикошет закопан.) Изменено 4 Марта 2018 пользователем aromatizer Отношения между людьми- главная ценность в человеческом обществе.Любая полученная информация- это только повод для размышлений, а не побуждение к действию.Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAEНакопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt Ссылка на комментарий
_Val_ 2 225 Опубликовано 4 Марта 2018 Поделиться Опубликовано 4 Марта 2018 @Dennis_Chikin Если не смотреть на свойства материалов - попробуй боеприпасы поправить. По wm_size. Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 4 Марта 2018 Поделиться Опубликовано 4 Марта 2018 (изменено) Не, все равно порнуха какая-то. И вообще, друзья мои, я опечален. 100500 бессмысленных совершенно конфигов, которые находятся поиском, и среди всего этого - ничего, где смысл "вбейте вот эти цифры" был бы объяснен человеческими словами. Я понимаю, что, к примеру, fire_point - это - точка выстрела, и для того, чтобы прочитать подобный "перевод" - ну вот совершенно не надо сталкер-вики и всех остальных 100500 конфигов. ЧТО НАДО СДЕЛАТЬ чтобы партикля при выстреле рисовалась от ствола и летела в сторону цели ? Ась ? И как, все-таки, отключить чертов отбойный молоток ? Ни хит, ни скорость, ни "количество дробин", не влияют вообще никак. И, да, заинтересовавшись "рикошетом", обнаружил, что даже выставив скорость пули в 1, "рикошет" все равно будет, и будет отрисован черт знает где. На закуску, обнаружилось, что пресловутая "разрывная пуля" рисует партикл не там, куда попала, а куда после этого УПАЛА. Совсем зашибись... Вот как вот все это называется ? Изменено 4 Марта 2018 пользователем Dennis_Chikin 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
НаноБот 735 Опубликовано 11 Марта 2018 Автор Поделиться Опубликовано 11 Марта 2018 (изменено) @Dennis_Chikin Просто огнемёт надо делать скриптовым, при выстреле вылетает снаряд, ударившись о геометрию или твёрдый объект, снаряд взрывается, порождая нужный эффект. Делать надо на классе ПП, то есть WP_LR300, есть смысл сделать взрыв огне-снаряда полностью скриптовым. Да и вообще, почему до сих пор не сделали скриптовый огнемёт. Ах да, кто ещё, кроме меня. На счёт отключения рикошета, есть только в ЧН и ЗП, allow_ricochet, а так же в XRayEx в моих правках, только не помню, в релизных или рабочих. ЗЫ Точно есть в релизных ревизиях. Изменено 11 Марта 2018 пользователем НаноБот 1 1 ...в конце концов, важен лишь, машинный код. СТАЛКЕР только для ПК! Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 12 Марта 2018 Поделиться Опубликовано 12 Марта 2018 Вообще, есть "гравипушка". Принцип - абсолютно тот же, вообще без всяких снарядов. Просто партиклы и демедж. Но, это ж делать надо... А вот то, что касается обычной стрельбы - при внимательном рассмотрении, там не только с огнеметом ахтунг: очередь по трупу, из чего угодно, или просто в землю/стену/дерево прямо перед собой - все, что описано выше. И еще эти дырки/кровищща - они и fps нехило жрут. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
aromatizer 4 423 Опубликовано 12 Марта 2018 Поделиться Опубликовано 12 Марта 2018 Красота требует жертв.) Навряд ли следует делать для огнемета партикл, чтобы прямо с сопла и аж до цели... В Золотом Шаре симпатичная и не прожорливая феерия у огнемета. Также можно посмотреть это дело в Новом Арсенале и OGSE. Отношения между людьми- главная ценность в человеческом обществе.Любая полученная информация- это только повод для размышлений, а не побуждение к действию.Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAEНакопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt Ссылка на комментарий
_Val_ 2 225 Опубликовано 12 Марта 2018 Поделиться Опубликовано 12 Марта 2018 Кстати вдогонку о НА... При попадании пули в препятствие типа дверь, стена и т.д под определенным углом - партикл вылетает только с противоположной стороны препятствия...То есть со стороны - откуда прилетела пуля - партикла нет. Как бы вот это дело все-таки исправить. Ссылка на комментарий
НаноБот 735 Опубликовано 12 Марта 2018 Автор Поделиться Опубликовано 12 Марта 2018 Надо разобраться как работает струйный огнемёт в принципе. Из огнемёта вылетает струя огнесмеси, прилипает к поверхности (геометрия, твёрдые объекты) и нагревает их. В игре так, снаряды вылетают из огнемёта, ударяются о твёрдую поверхность, взрываются, далее смотрим что хитанули, если это НПС, включаем партиклы горения на костях которых хитонули, хитуем их пока огнесмесь не прогорит. Так же у НПС снижается мораль, что заставляет его удирать, можно сделать что бы ещё и кричал. У ГГ так есть мощные пост-эффекты. Как то так, давно так хотел сделать, но всё времени не хватала. 1 1 ...в конце концов, важен лишь, машинный код. СТАЛКЕР только для ПК! Ссылка на комментарий
aromatizer 4 423 Опубликовано 13 Марта 2018 Поделиться Опубликовано 13 Марта 2018 (изменено) Какие валидные пределы значений коэффициентов PDM в конфигах оружия? В частности, будут ли работать значения меньше единицы? Вот тут http://stalkerin.gameru.net/wiki/index.php?title=Редактирование_оружия, написано следующее: PDM_disp_base = 3.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ (Главный Герой) стоит на месте в полный рост; PDM_disp_vel_factor = 1.3 - множитель, на который умножается базовая дисперсия оружия, когда ГГ крутит оружием или бежит; PDM_disp_accel_factor = 1.3 - множитель, на который умножается базовая дисперсия оружия, когда ГГ бежит в спринте; PDM_crouch = 1.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ идет пригнувшись; PDM_crouch_no_acc = 1.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ стоит на месте, пригнувшись; PDM_disp_accel_factor трактован неправильно, потому как стрельбы в спринте нет: спринт выключается при нажатии на спусковой крючок. Поэтому, возможно, что PDM_disp_accel_factor- это когда ГГ бежит, а PDM_disp_vel_factor, соответственно, когда поворачивается в стороны или идет. Или наоборот.) Странно, но в приведенном примере дисперсия в движении меньше, чем когда ГГ стоит на месте, хотя, следуя здравому смыслу, она должна увеличиться многократно. Хотя, если PDM_disp_base множится на ниже перечисленные четыре состояния ГГ, то все верно. Правда, навряд ли это так.. По уму, fire_dispersion_base оружия должен просто умножаться на один из коэффициентов PDM в зависимости от состояния ГГ. Как оно работает на самом деле? Изменено 14 Марта 2018 пользователем aromatizer Отношения между людьми- главная ценность в человеческом обществе.Любая полученная информация- это только повод для размышлений, а не побуждение к действию.Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAEНакопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 14 Марта 2018 Поделиться Опубликовано 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 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
k01jan 816 Опубликовано 27 Марта 2018 Поделиться Опубликовано 27 Марта 2018 Не совсем в тему.. стрельба из подствла определяется анимациями, или умудрился модель криво пересобрать? Стреляет, но.. не стреляет Зарядил, выстрелил, перезарядил - а самого выстрела - вылет гранаты и её последующий взрыв - нету.. Куда копать? Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти