vampirnik77 121 Опубликовано 1 Июля 2015 Поделиться Опубликовано 1 Июля 2015 @karavan, По конкретней? Могу направить на каллбэк, function actor_binder:use_inventory_item(obj) Официальная страница проекта Neof-One Crew Ссылка на комментарий
UnLoaded 313 Опубликовано 1 Июля 2015 Поделиться Опубликовано 1 Июля 2015 Вообще хотелось бы конкретную функцию на "надевание шлема". "Хотеть не вредно, вредно не хотеть" ... (автор неизвестен) С ЗП не ковырялся(не интересно), по-этому могу ошибаться, но все-же: посмотрел lua_help от ЗП, перечисление доступных коллбэков - ничего, напоминающего снятие\одевание\смену шлемов не увидел. Следовательно, наиболее реальный вариант отследить движняк со шлемами - проверять содержимое соответствующего слота на каком-либо апдейте. Ссылка на комментарий
Forser 47 Опубликовано 3 Июля 2015 Поделиться Опубликовано 3 Июля 2015 Если "надеваешь шлем" то Не знаю как в ЗП, а в тч работает. local slot_1 = db.actor:item_in_slot(номер_слота) if slot_1:section() == "killer_outfit" then ... end Ссылка на комментарий
Карлан 1 049 Опубликовано 3 Июля 2015 Поделиться Опубликовано 3 Июля 2015 О, блин, тут-то еще интереснее. @karavan, капитан логика подсказывает на юз колбек с задержкой ставить проверку есть ли шлем, если есть то какой. А вообще добавь колбек, а то твое стучание в бубен и барабаны аж до меня доносится. Ссылка на комментарий
Shredder 49 Опубликовано 3 Июля 2015 Поделиться Опубликовано 3 Июля 2015 В чистом ЗП нет колбэка на помещение предмета в слот. Только в апдейте проверять, если в слоте ничего не было, а на следующем апдейте уже есть - значит в слот что-то поместили.Или можно взять обновлённую версию движка, где такой колбэк есть. Ссылка на комментарий
volkodav37 65 Опубликовано 6 Июля 2015 Поделиться Опубликовано 6 Июля 2015 Подскажите пожалуйста, как вЗП сделать НПС бессмертным, а именно интересует лейтенант Роговец. Ссылка на комментарий
Clayman 104 Опубликовано 6 Июля 2015 Поделиться Опубликовано 6 Июля 2015 (изменено) Ищешь в каком скваде этот НПС и в конфиге сквада (misc\squad_descr_) указываешь: invulnerable = true. Еще можно такое-же прописывать в секциях логики НПС-а, тогда, если я не ошибаюсь, он будет бессмертным даже к ГГ. Изменено 6 Июля 2015 пользователем Clayman Ссылка на комментарий
MrGROX 9 Опубликовано 6 Июля 2015 Поделиться Опубликовано 6 Июля 2015 Что написать в логике НПС, чтобы он переместился на другую локацию, например, с Затона на Юпитер. Прокатит ли просто прописать новый смарт террейн в другой локации и перейдет ли он туда? Да где же этот артефакт, едрить его в корень! Ссылка на комментарий
volkodav37 65 Опубликовано 6 Июля 2015 Поделиться Опубликовано 6 Июля 2015 Ищешь в каком скваде этот НПС и в конфиге сквада (misc\squad_descr_) указываешь: invulnerable = true. Еще можно такое-же прописывать в секциях логики НПС-а, тогда, если я не ошибаюсь, он будет бессмертным даже к ГГ. А есть возможность более подробно и на примере объяснить как это сделать? Clayman Большое спасибо, все получилось. Ссылка на комментарий
Clayman 104 Опубликовано 7 Июля 2015 Поделиться Опубликовано 7 Июля 2015 (изменено) MrGROX ,если НПС один в скваде, то напиши в конфиге сквада нужный смарт target_smart = , можно с условием: target_smart = {нужные проверки} смарт. Но в чистом ЗП так не делается. Там, насколько я помню, графпоинты, связывающие локации находятся на базах, и если сквад с нпс-ом будет переходить, когда поблизости игрок, то будет некрасиво исчезать у тебя на глазах. Изменено 7 Июля 2015 пользователем Clayman Ссылка на комментарий
Romz 142 Опубликовано 7 Июля 2015 Поделиться Опубликовано 7 Июля 2015 Товарищи скриптописатели! Нужна ваша помощь! Проблема вот в чём. Пытаюсь сделать себе солянку на базе UnP 0.8 Игра - лицензия, патч 1.6.0.2 При подключении нескольких модов, с определённого момента, игра начинает вылетать с логом Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ....l.k.e.r. - cop\gamedata\scripts\bind_stalker.script:478: attempt to concatenate field '?' (a nil value) Это function actor_binder:load(reader) оператор get_console():execute("g_game_difficulty "..game_difficulty_by_num[game_difficulty]) То есть, сбрасывается в сохранении, или не сохраняется уровень сложности. Возможно, ещё что-то. если подставить костыль в виде local game_difficulty = 1 то сохранение может загрузиться нормально (с виду), или вылететь за отсутствием ещё какой-либо переменной, идентификатора погоды, например. Моды, в основном, инициализируются через различные функции bind_stalker.script Моды сами по себе не затрагивают ни погоду, ни уровень сложности. Моды, подключенные по-отдельности к UnP 0.8, никаких проблем не вызывают, сохраняются/загружаются нормально. Отключение модов без начала НИ сохранение не спасает, т.е. переменные обнуляются либо сбрасываются до/во время сохранения. Если один из модов отключить, а потом начать НИ, проблема, обычно, пропадает. Список модов: ___Up_CoP_v0.8\Моды, подключаемые через bind_stalker: ammo_fix_v100002\ Artefact_respawner_COP\ Detector_Fenix\ exchanging items mod COP 0.1\ Телевизор_у_Зулуса\ Моды без скриптов: Morda_MOD_031\ NPCvisual\ Анекдоты из ЧН и ТЧ дзя ЗП\ retekstura-kurtki-novichka.zip В логе ничего толкового нет больше. Нельзя ли получить более развёрнутый лог? Любая помощь в совмещении и советы приветствуются... Я, вообще, понимаю, что это, видимо, какой-то буфер/таблица/переменная переполняется, но как это победить - не знаю, к сожалению... P. S. Я с этой фигнёй уже с неделю ковыряюсь, пробую всякие варианты. Сел поиграть в СТАЛКЕРа называется Шаман - СисАдмин Всяко-разно: для ЧН Ссылка на комментарий
MrGROX 9 Опубликовано 7 Июля 2015 Поделиться Опубликовано 7 Июля 2015 (изменено) @Clayman, Спасибо, а насчёт некрасивости - это абсолютно неважно.А можно прописать как условие день/ночь? Помнится, в ТЧ такой вариант не прокатил. Изменено 7 Июля 2015 пользователем MrGROX Да где же этот артефакт, едрить его в корень! Ссылка на комментарий
Clayman 104 Опубликовано 7 Июля 2015 Поделиться Опубликовано 7 Июля 2015 Да, можно проверять день, дождь и любые проверки из xr_conditions: target_smart = {=is_day} смарт1, смарт 2 - при таком раскладе днем идем в смарт1, ночью в смарт2. Ссылка на комментарий
xrSleepy 0 Опубликовано 8 Июля 2015 Поделиться Опубликовано 8 Июля 2015 Добрый день, форумчане! Я не знаю, обсуждалась здесь эта тема или нет, но ответ на свой вопрос я во всём интернете так и не нашёл. В общем, поставил в SDK на Кордоне два лагеря (смарт-террейна), один лагерь новичков со сталкерами, другой - с бандитами. К примеру, отрядам бандитов прописал target_smart = esc_novice, то есть чтобы они штурмовали базу новичков. Всё вроде бы нормально, они идут, штурмуют, только вот... слишком издалека начинают вести огонь. Зачастую когда бандиты начинают стрелять, сталкеры ловят пули, но совершенно не обращают на это внимание и продолжают заниматься своими делами. Так работает с любыми нападениями на лагерь, НПС не хотят близко подходить и палят, как снайперы, даже если у них ПМ. Как вариант, пробовал снизить поле зрения неписям на такой, какой был в ЧН, но это совершенно ничего не поменяло. Также ещё пробовал воспользоваться конфигами для смарта из ЧН: att_restr и def_restr. Последний работал замечательно, а вот att_restr не работает, атакующие продолжают стрелять, как снайперы, даже не заходя в зону att_restr. Скажите пожалуйста, кто с этим сталкивался? И есть ли решение? Ах да, в файлах игры ничего не менял, разве что добавлял конфиги для своих созданных смартов. Ссылка на комментарий
makdm 37 Опубликовано 8 Июля 2015 Поделиться Опубликовано 8 Июля 2015 @xrSleepy, проверяй параметр отрядов sim_avail в файле simulation_objects_props.ltx Ссылка на комментарий
xrSleepy 0 Опубликовано 8 Июля 2015 Поделиться Опубликовано 8 Июля 2015 Это не то. Параметр sim_avail отвечает за доступность лагеря для симуляционных сквадов. К примеру, если на локации есть сквады со значением target_smart = nil (или вообще без этого значения), то в этот лагерь они в любом случае идти не будут. Ссылка на комментарий
makdm 37 Опубликовано 8 Июля 2015 Поделиться Опубликовано 8 Июля 2015 Параметр sim_avail отвечает за доступность лагеря для симуляционных сквадов Да, ладно!!! Тогда зачем вот это безобразие написано в файле xr_combat_ignore.script ???? if se_obj.group_id ~= 65535 and sim_obj_registry.objects[se_obj.group_id] ~= nil and se_enemy.group_id ~= 65535 and sim_obj_registry.objects[se_enemy.group_id] == nil and se_obj.position:distance_to_sqr(se_enemy.position) > 900 then return false end Ссылка на комментарий
xrSleepy 0 Опубликовано 8 Июля 2015 Поделиться Опубликовано 8 Июля 2015 В скриптах я не особо разбираюсь, однако я говорю о том, что видел своими глазами. И, решая свою проблему, параметр sim_avail - первое, что я попробовал поменять. Ссылка на комментарий
makdm 37 Опубликовано 8 Июля 2015 Поделиться Опубликовано 8 Июля 2015 параметр sim_avail - первое, что я попробовал поменять. Как вы их меняли? Нпс под эксклюзивом? Секции логики? Секции отрядов? Без всего этого вряд ли кто-то, что - то сможет понять в вашей проблеме. Нужны хоть какие-то данные. Ссылка на комментарий
xrSleepy 0 Опубликовано 8 Июля 2015 Поделиться Опубликовано 8 Июля 2015 (изменено) По пунктам. sim_avail - ставил true и false, проблему это не решило, так что это не тот параметр. В лагере сталкеров 5 эксклюзивных НПС. Сквады бандитов, которые на них нападают - дефолтовые. ;Логика смарта, который в лагере новичков [smart_terrain]squad_id = 1max_population = 4;att_restr = esc_space_restrictors_novice_camp_sr_attack;def_restr = esc_space_restrictors_novice_camp_sr_defense [smart_terrain]squad_id = 2max_population = 2 [esc_novice_camp_squad_1]:online_offline_groupfaction = stalkernpc = sim_default_stalker_0, sim_default_stalker_0, sim_default_stalker_0target_smart = esc_novice_campstory_id = esc_novice_camp_squad_1[esc_novice_camp_squad_2]:online_offline_groupfaction = stalkernpc = sim_default_stalker_0, sim_default_stalker_0, sim_default_stalker_0target_smart = esc_novice_campstory_id = esc_novice_camp_squad_2[esc_novice_camp_squad_3]:online_offline_groupfaction = stalkernpc = sim_default_stalker_0, sim_default_stalker_0, sim_default_stalker_0target_smart = esc_novice_campstory_id = esc_novice_camp_squad_3[esc_novice_camp_squad_4]:online_offline_groupfaction = stalkernpc = sim_default_stalker_0, sim_default_stalker_0target_smart = esc_novice_campstory_id = esc_novice_camp_squad_4 [esc_halt_2_squad_1]:online_offline_groupfaction = banditnpc = sim_default_bandit_4, sim_default_bandit_4, sim_default_bandit_4, sim_default_bandit_4target_smart = esc_novice_campstory_id = esc_halt_2_squad_1[esc_halt_2_squad_2]:online_offline_groupfaction = banditnpc = sim_default_bandit_4, sim_default_bandit_4, sim_default_bandit_4, sim_default_bandit_4target_smart = esc_novice_campstory_id = esc_halt_2_squad_2 И получается вот так. С вот этой вот горки они перестреляли весь лагерь, даже самых дальних. Ссылка на скрин: http://www.screencapture.ru/uploaded/74/60/97/74609794.jpg Изменено 8 Июля 2015 пользователем xrSleepy Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти