Overf1rst 1 496 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Зов Припяти. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 18 9 1 1 2 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Сергей Шубин 21 Опубликовано 22 августа, 2020 Ҫвяҭѳӎӹшљ Если воспользуетесь Яндексом, то узнаете, что default_to_ruck = false - значит, если при пустой ячейке под автомат, подобрать автомат он будет помещён в ячейку; если true автомат в ячейку помещён не не будет. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Overf1rst 1 496 Опубликовано 22 августа, 2020 10 часов назад, denis2000 сказал: Gerbys Если чисто логикой, то можно так: [logic] active = sr_idle@wait [sr_idle@wait] on_info = {+info_portion} sr_idle@spawn [sr_idle@spawn] on_info1 = {~10} nil %=create_squad(squad_1:smart_terrain)% on_info2 = {~10} nil %=create_squad(squad_2:smart_terrain)% on_info3 = {~10} nil %=create_squad(squad_3:smart_terrain)% on_info4 = {~10} nil %=create_squad(squad_4:smart_terrain)% @Gerbys, для выбора из большего количества сквадов можно воспользоваться функцией (добавить в xr_effects.script) function create_random_squad(actor, npc, p) create_squad(actor, npc, {p[1] .. "_" .. math.random(tonumber(p[2])), p[3]}) end Из логики вызывать так: %=create_random_squad(squad:4:smart_terrain)% 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ник Нуми 101 Опубликовано 22 августа, 2020 не спавнится эксклюзивный НПС с логикой не понимаю в чем может быть проблема, не вылета, ничего, попросту его нету Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Neptun 884 Опубликовано 23 августа, 2020 3 часа назад, Ник Нуми сказал: не спавнится эксклюзивный НПС с логикой не понимаю в чем может быть проблема, не вылета, ничего, попросту его нету Создание сквада сталкеров (НПС) Создание смарт торрейна (smart_terrain) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
AziatkaVictor 3 912 Опубликовано 23 августа, 2020 Добрый день! У меня есть НПС, которые стоят на вей-поинтах, но они постоянно что-то говорят, как запретить им говорить? При чем, НПС штук 10, не хотелось бы прописывать каждому логику отдельно. Заранее спасибо! Как оформить тему Правила форума Вопросы по сайту Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 945 Опубликовано 23 августа, 2020 AziatkaVictor И вам доброго времени суток! Если у вас НПС которые занимают дефолтные работы на смарте в виде точек пути, то их логика в файле gulag_general.script там ее и подправьте при необходимости. Дополнено 4 минуты спустя Ник Нуми А подробности будут или доставать свой хрустальный шар с антресолей? Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Крим 790 Опубликовано 23 августа, 2020 Как можно прописать логику пулемёту, чтобы он при определённых условий сам по себе стрелял по игроку или куда еще? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 945 Опубликовано 23 августа, 2020 (изменено) Крим В оригинале пулемет построенный на классе автомобиля/бронетранспортера стреляет по ГГ или по точкам: [ph_minigun@shoot_2] ;--стреляет по точкам path_fire = esc_minigun_fire_way_2 [ph_minigun@actor_hidden] ;--стреляет по актору target = actor В моде Связь времен логика турели заметно расширена и стрелять он может по: актору, сталкерам, монстрам или по всем живым целям. Изменено 23 августа, 2020 пользователем denis2000 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ҫвяҭѳӎӹшљ 18 Опубликовано 23 августа, 2020 Сергей Шубин Благодарю вас за ответ, вы мне очень помогли. Но вот совет по использованию Яндекса мне не поможет, ибо я из Украины. Но всё равно, я вам крайне признателен. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Misery 433 Опубликовано 23 августа, 2020 Как сделать "эксклюзивный" сквад? Как сделать квест на "поиск" локации? Поиск типо "Найти путь на Затон", сам ГГ спавнится на Кордоне, если ГГ будет на затоне, то квест выполнится. Дополнено 1 минуту спустя Эксклюзивный сквад, который ведёт себя не как обычные сквады НПС, а со своей логикой, чтобы у главного НПС сквада был диалог. Clear Sky: Gunslinger Addon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ник Нуми 101 Опубликовано 23 августа, 2020 3 часа назад, denis2000 сказал: Дополнено 4 минуты спустя Ник Нуми А подробности будут или доставать свой хрустальный шар с антресолей? Мне нужно заспавнить эсклюзивного НПС-а для сюжета, прописал его в симуляции, вписал работу (через вэйпоинт), прописал в спавн секции, везде где только можно Но зайдя в игру - его нету, он не спавнится попросту. Какие файлы нужны для того чтобы ты там.. проверить мог? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 945 Опубликовано 23 августа, 2020 (изменено) Ник Нуми Начните с ответа на три ключевых вопроса: 1. Работа на чистом ЗП или на отдельном моде? 2. Что за локация: оригинальная или подключенная? 3. Как именно спавните сквад (строки с правками обязательны). Изменено 23 августа, 2020 пользователем denis2000 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ник Нуми 101 Опубликовано 23 августа, 2020 (изменено) 4 минуты назад, denis2000 сказал: Ник Нуми Начните с ответа на три ключевых вопроса: 1. Работа на чистом ЗП или на отдельном моде? 2. Что за локация: оригинальная или подключенная? 3. Как именно спавните сквад. 1. ЗП + граф. моды, ну и оружейка 2. Подключенная (Темная долина "маленькая" она ещё в П/A 4.1 была) 3. Поставил вэй поинт для спавна, и два для работы. Дополнено 2 минуты спустя 4 минуты назад, denis2000 сказал: Ник Нуми Начните с ответа на три ключевых вопроса: 1. Работа на чистом ЗП или на отдельном моде? 2. Что за локация: оригинальная или подключенная? 3. Как именно спавните сквад (строки с правками обязательны). Спойлер Cимуляция: [start_position_black_valley] blck_val_merc_stealth_squad = blck_val_s1 Сквад дескр: [blck_val_merc_stealth_squad]:online_offline_group faction = killer npc - blck_val_merc_stealth target_smart = blck_val_s1 story_id = blck_val_merc_stealth_squad spawn_point = blck_val_s1_merc_stealth_squad_spawn Изменено 23 августа, 2020 пользователем Ник Нуми Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 945 Опубликовано 23 августа, 2020 Ник Нуми КМБ Урок 63: Исправление скрипта отвечающего за спавн сквадов на стартовых позициях в начале новой игры Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ник Нуми 101 Опубликовано 23 августа, 2020 15 минут назад, denis2000 сказал: Ник Нуми КМБ Урок 63: Исправление скрипта отвечающего за спавн сквадов на стартовых позициях в начале новой игры не помогло ;c Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Крим 790 Опубликовано 23 августа, 2020 Здравствуйте. Тут такое дело. Создал НПС и все такое. Логику работает полностью, но заданный ему level_spot не работает. [logic@esc_army_mech] active = animpoint@base suitable = {=check_npc_name(esc_army_mech)} true prior = 200level_spot = mechanic [animpoint@base] use_camp = false avail_animations = animpoint_sit_normal cover_name = esc_mil_mech_cover meet = meet@base combat_ignore_cond = true combat_ignore_keep_when_attacked = true invulnerable = true gather_items_enabled = false help_wounded_enabled = false corpse_detection_enabled = false [meet@base] close_anim = animpoint_sit_normal close_victum = nil far_anim = animpoint_sit_normal far_victum = nil close_distance = 0 far_distance = 0 close_snd_distance = 3 allow_break = false trade_enable = true meet_on_talking = false Подскажите, в чем может быть проблема? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 945 Опубликовано 23 августа, 2020 4 часа назад, Ник Нуми сказал: npc - blck_val_merc_stealth Написано именно так!? Должно быть = вместо - Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gerbys 7 Опубликовано 23 августа, 2020 Как задать состояние предметов у ГГ на старте игры? (костюм, шлем, оружие) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Neptun 884 Опубликовано 24 августа, 2020 3 часа назад, Gerbys сказал: Как задать состояние предметов у ГГ на старте игры? (костюм, шлем, оружие) gamedata\scripts\xr_effects.script Функция damage_actor_items_on_start 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Misery 433 Опубликовано 24 августа, 2020 Как удалить уровень сложности? Радиоактивные артефакты можно сделать с помощью xr_effects? Также СИМКи, чтобы артефакты в них ложить, как в Misery. Clear Sky: Gunslinger Addon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Arkada 428 Опубликовано 24 августа, 2020 10 часов назад, Igor_Misery сказал: Как удалить уровень сложности? Радиоактивные артефакты можно сделать с помощью xr_effects? Также СИМКи, чтобы артефакты в них ложить, как в Misery. Чтобы удалить уровень сложности, нужно править тонну файлов, в том числе и движковых. Как избавиться от данного лога вылета? Спойлер Expression : !m_error_code Function : raii_guard::~raii_guard File : ..\xrServerEntities\script_storage.cpp Line : 748 Description : ...call of pripyat\gamedata\scripts\bind_stalker.script:308: attempt to call field 'update_breath_snd' (a nil value) Написал небольшую функцию, проигрывающую звук в соответствии с значением булеана в секции одетой брони. Спойлер function update_breath_snd() local act = db.actor local o = act:item_in_slot(7) local h = act:item_in_slot(12) local ini = ini_file("misc\\outfits.ltx") -- Здесь я изменил название файла вызываемого из system.ltx local list = "helm_respirator", "helm_hardhat", "helm_tactic", "helm_battle", "helm_respirator_joker", "helm_hardhat_snag", "novice_outfit", "stalker_outfit", "svoboda_light_outfit", "dolg_outfit", "scientific_outfit", "cs_heavy_outfit", "svoboda_heavy_outfit", "specops_outfit", "military_outfit", "dolg_heavy_outfit", "exo_outfit", "stalker_outfit_barge" -- лист всех секций брони if act.power < 0.2 or act.health < 0.2 then -- Если стамина или здоровье меньше 20% --- if o == nil and h == nil then -- слоты для брони пусты xr_sound.play_sound_looped(act:id(), "breath_no_gas") end --- if o ~= nil and h ~= nil and (ini:r_string(o:section(), "gas_sounds") == "true" or ini:r_string(h:section(), "gas_sounds") == "true") then -- Если оба слота не пусты, и в секции брони gas_sounds = true, то тогда: xr_sound.play_sound_looped(act:id(), "breath_gas") end if o ~= nil and h ~= nil and (ini:r_string(o:section(), "gas_sounds") == "false" and ini:r_string(h:section(), "gas_sounds") == "false") then -- Идентично предыдущему, но только значение обоих булеанов (шлем и бронька) = false. xr_sound.set_sound_play(act:id(), "breath_no_gas") end --- if o ~= nil and h == nil and ini:r_string(o:section(), "gas_sounds") == "false" then xr_sound.set_sound_play(act:id(), "breath_no_gas") end if o ~= nil and h == nil and ini:r_string(o:section(), "gas_sounds") == "true" then xr_sound.set_sound_play(act:id(), "breath_gas") end --- if o == nil and h ~= nil and ini:r_string(h:section(), "gas_sounds") == "false" then xr_sound.set_sound_play(act:id(), "breath_no_gas") end if o == nil and h ~= nil and ini:r_string(h:section(), "gas_sounds") == "true" then xr_sound.set_sound_play(act:id(), "breath_gas") end end if act.power >= 0.2 or act.health >= 0.2 then -- Если стамина или здоровье больше или равно 20% xr_sound.stop_sound_looped(act:id(), "breath_no_gas") xr_sound.stop_sound_looped(act:id(), "breath_gas") end end Вызов происходит в файле bind_stalker в update. Долго ломаю голову над этим. Что может быть не так? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
makdm 672 Опубликовано 24 августа, 2020 local list = "helm_respirator",........... Это что за зверь такой? Терпение... И все получится. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gerbys 7 Опубликовано 24 августа, 2020 Как создать ворон? (локация новая) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Neptun 884 Опубликовано 25 августа, 2020 (изменено) 4 часа назад, Gerbys сказал: Как создать ворон? (локация новая) Создаёшь рестриктор, его логику заполняешь так: [logic] active = sr_crow_spawner [sr_crow_spawner] max_crows_on_level = 15 spawn_path = имя_crow_spawn_1, имя_crow_spawn_2 Создаёшь точки в небе в way (имя_crow_spawn_1), штук пять точек сделай по всей локации Дополнено 10 минуты спустя 5 часов назад, makdm сказал: local list = "helm_respirator",........... Это что за зверь такой? Причём этот list в функции ни разу не вызывается, и да, он выглядит подозрительно. Лучше работать с таким вариантом: local list = {} list["helm_respirator"] = true list["helm_hardhat"] = true list["helm_tactic"] = true и т. д. if actor:item_in_slot(12) ~= nil and list[actor:item_in_slot(12):section()] == true then Изменено 25 августа, 2020 пользователем Neptun 1 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Misery 433 Опубликовано 25 августа, 2020 Ок, вариант с сложностью отпадает. А радиоактивные артефакты? Можно систему в Misery найти, и оттуда взять нужные файлы и строки. Дополнено 5 минуты спустя Чуть не забыл, как можно сделать выбор снаряжения похожий на тот, чтобы был в AREA? Ещё как дозиметр сделать? Clear Sky: Gunslinger Addon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты