Overf1rst 1 496 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Тень Чернобыля. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 6 4 1 3 1 3 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
defau1t 20 Опубликовано 4 марта, 2023 как прописать логику чтобы враждебный нпс не атаковал никого, кроме актора? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gnomi123 158 Опубликовано 4 марта, 2023 band1tov можете скинуть нынешнюю логику вашего нпс? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Pepel 80 Опубликовано 4 марта, 2023 В 24.02.2023 в 19:53, N42 сказал: Pepel в смысле, удар руками вместо ножа? Поищи Кулак мод натыкался на него. плохо реализовано. в закоулках правды намного лучше Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
defau1t 20 Опубликовано 4 марта, 2023 20 минут назад, Gnomi123 сказал: band1tov можете скинуть нынешнюю логику вашего нпс? Спойлер [logic] active = camper@esc_atp_prisoner combat_ignore = combat_ignore [camper@esc_atp_prisoner] path_walk = prisoner_walk path_look = prisoner_look combat_ignore_cond = always def_state_campering = prisoner on_info = {=esc_bandits_die} remark@esc_lesha_help on_info2 = {+lesha_save_done} sleeper4@esc_lager meet = no_meet danger = danger_condition@lesha [remark@esc_lesha_help] snd = esc_shustryi_help anim = prisoner meet = no_meet target = esc_lager_prisoner_look, 0 on_actor_dist_le = 5| remark@esc_trap_prisoner combat_ignore_cond = always danger = danger_condition@lesha on_signal = sound_end| remark@esc_lesha_wait on_info = {+lesha_save_done} sleeper4@esc_lager [remark@esc_lesha_wait] anim = prisoner meet = no_meet target = esc_lager_prisoner_look, 0 on_actor_dist_le = 5| remark@esc_trap_prisoner combat_ignore_cond = always danger = danger_condition@lesha on_timer = 10000| remark@esc_lesha_help on_info = {+lesha_save_done} sleeper4@esc_lager [remark@esc_atp_prisoner] anim = wait anim_reset = false target = esc_lager_prisoner_look, 0 snd = esc_shustryi_thanks on_info = {+lesha_save_done} sleeper4@esc_lager on_signal = sound_end| remark@wait_player_at_lager combat_ignore_cond = always meet = meet@no_meet danger = danger_condition@lesha [remark@wait_player_at_lager] anim = wait anim_reset = false target = actor meet = meet@friend danger = danger_condition@lesha on_info = {+lesha_save_done} sleeper4@esc_lager [sleeper4@esc_lager] path_main = sleep4 meet = meet@friend danger = danger_condition@lesha [danger_condition@lesha] ignore_distance = 0 ещё должна быть логика бандитов на атп которая должна охранять заложника. но мне надо узнать как сделать чтобы нпсы на заложника не агрились, и заложник на нпсов. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gnomi123 158 Опубликовано 4 марта, 2023 band1tov Бандитам прописать в combat_ignore_cond = {=check_fighting(story_id)} story_id поставить какое у заложника. Заложнику наверное можно оставить combat_ignore_cond = always Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Senya 2 Опубликовано 4 марта, 2023 Прошу подскажите пожалуйста. Я добавляю из групп костер на локацию, но компилятор спавна вылетает с такой ошибкой Expression : !m_border.empty() Function : CSpaceRestrictorWrapper::build_border File : .\space_restrictor_wrapper.cpp Line : 215 Description : space restrictor has no border Arguments : zone_flame_small_0001 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 110 Опубликовано 4 марта, 2023 Senya -no_separator_check ключ Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 4 марта, 2023 (изменено) проблема решена Изменено 4 марта, 2023 пользователем ian98 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1nkvis 5 Опубликовано 4 марта, 2023 (изменено) ... Изменено 4 марта, 2023 пользователем 1nkvis Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
bastor 6 Опубликовано 4 марта, 2023 30 минут назад, ian98 сказал: Можно как-то ограничить выполнение функции не более одной в секунду, Может вызывать её раз в секунду Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 4 марта, 2023 bastor она вызывается с калбека смерти нпс. В одну секунду может умереть и два, и три, и четыре нпс. Соответственно будет 4 вызова функции. Можно ли запретить функции начинаться параллельно такой же функции как-то? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
bastor 6 Опубликовано 4 марта, 2023 ian98 Что функция то делает? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Senya 2 Опубликовано 4 марта, 2023 2 часа назад, imcrazyhoudini сказал: Senya -no_separator_check ключ imcrazyhoudini Он у меня стоит Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 110 Опубликовано 4 марта, 2023 Senya убери тогда в рестрикторе check_separator или чёт такое, галочку с него то бишь Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Senya 2 Опубликовано 4 марта, 2023 imcrazyhoudini Спасибо, но я щас случайно нашел на гемеру ответ как это пофиксить - У всех у кого такая же проблема, оставляю для вас скрин. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
defau1t 20 Опубликовано 5 марта, 2023 хочу сделать посетителей в своем баре. но не знаю как сделать чтобы нпс к столу подходил и юзал анимацию рук на столе Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 110 Опубликовано 5 марта, 2023 band1tov нужно написать логику walker для нпс и вписать в неё: def_state_standing = bar_right/bar_sleep/bar_head/bar_left/bar_fas (что-то одно)почитать о логике (кликабельно) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Etil 8 Опубликовано 5 марта, 2023 (изменено) ian98 Так выдавайте инфопоршень при запуске функции, а в условиях запуска пропишите его (инфопоршня) отсутствие. В самой функции также либо забирайте инфопоршень в конце (по выполнению), либо повесьте забирание на таймер. Изменено 5 марта, 2023 пользователем Etil Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 5 марта, 2023 Etil не, там такое решение не канает. Функция все равно параллельно себе же запускалась. Помог вариант с флагом. Хотя по сути это тоже самое. Не знаю почему при использовании поршня у меня не получалось это же повторить. хз. может и упустил чего. там скриптяра на 1000 строк. так что... работает на сейчас и слава богу. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
defau1t 20 Опубликовано 6 марта, 2023 (изменено) у торговца все пушки из ассортимента падают, лишь расходники остаются. чё мне делоть? Изменено 6 марта, 2023 пользователем band1tov Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 110 Опубликовано 6 марта, 2023 band1tov создать его как m_stalker_trader или что-то такое, плюс прописать ему сколько он может веса носить Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
VladGhost197 4 Опубликовано 6 марта, 2023 У кого нибудь есть версия файлов тч, но в папках? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
WolfHeart 918 Опубликовано 6 марта, 2023 1 час назад, VladGhost197 сказал: файлов тч, но в папках? но в папках = Не в архивах = Распакованные Держи: Ресурсы из оригинальной трилогии AMD FX-8370 (8 X 4.35GHz); RAM 16Gb; MSI GTX 1070 (8Gb). Windows -10 PRO (х64) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
defau1t 20 Опубликовано 7 марта, 2023 как сделать так чтобы к примеру после убийства всех бандитов в смартеррейне, мне выдавался определенный инфопоршень Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Etil 8 Опубликовано 7 марта, 2023 band1tov Спойлер function gulag_empty(gulag) if xr_gulag.getGulagPopulation("название_смарта") == 0 then db.actor:give_info_portion("название_инфопоршня") end end Вообще, в xr_conditions есть полезные функции (gulag_empty, gulag_population_le, gulag_population_ge и прочие). Можно использовать xr_conditions.gulag_empty(название_смарта). Стоит при этом учесть, что если есть респавны и население гулага может респавниться, то их может учитывать, даже если они ещё очень далеко от смарт террейна. Потому, возможно, в таком случае стоит использовать функции по типу xr_conditions.gulag_population_comed_le(название_смарта, количество). 2 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты