Norman Eisenherz 316 Опубликовано 22 Марта 2020 Поделиться Опубликовано 22 Марта 2020 Потестил еще: на Кордоне уведомление отображается всегда после 1-й загрузки, на Свалке или после перехода Кордон > Свалка > Кордон всегда после 2-й загрузки. В обоих случаях тестил с выходом из игры и с обычной перезагрузкой. Сделал add_call на прогрузку ГГ – уведомление отображается каждый раз. (Инфо-поршень "esc_bridge_pass_off", как выяснилось, вообще не выдается до возврата на Кордон, но это уже другой вопрос). @naxac "Первый апдейт" – привязаться к actor_binder:update(delta) и остановить выполнение после однократного выведения статика, или речь о чем-то другом? Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
naxac 2 447 Опубликовано 22 Марта 2020 Поделиться Опубликовано 22 Марта 2020 @Norman Eisenherz, да. В ТЧ со статиками всегда такая фигня: после перехода между локациями они не выводится из нет-спавна, где-то что-то, видимо, не успевает отработать как надо, потому что новый уровень грузится. 1 Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
WinCap 316 Опубликовано 22 Марта 2020 Поделиться Опубликовано 22 Марта 2020 @Norman Eisenherz, осмелюсь предложить свой вариант. Для разрешения прохода нужно выдать "esc_bridge_pass_on". Когда ГГ воспользуется проходом, или его по каким-то причинам отменят, нужно удалить "esc_bridge_pass_on". Скрытый текст local need_update = true local has_static = false -- // actor_binder:info_callback(npc, info_id) // -- function info(info_id) if info_id == "esc_bridge_pass_on" then local time_hrs = level.get_time_hours() + 1 local time_min = level.get_time_minutes() time_min = math.ceil(time_min/10)*10 if time_min == 60 then time_min = 0 time_hrs = time_hrs + 1 end if time_hrs > 23 then time_hrs = time_hrs - 24 end xr_logic.pstor_store(db.actor, "time_hrs", time_hrs) xr_logic.pstor_store(db.actor, "time_min", time_min) need_update = true end end -- // actor_binder:update(delta) // -- function update() if not need_update then return end if not db.actor:has_info("esc_bridge_pass_on") then get_hud():RemoveCustomStatic("bridge_pass") need_update = false has_static = false return end local time_hrs = level.get_time_hours() local time_min = level.get_time_minutes() local pstor_hrs = xr_logic.pstor_retrieve(db.actor, "time_hrs", 0) local pstor_min = xr_logic.pstor_retrieve(db.actor, "time_min", 0) if (time_hrs >= pstor_hrs) and (time_min > pstor_min) then db.actor:disable_info_portion("esc_bridge_pass_on") return end if has_static then return end local st = get_hud():AddCustomStatic("bridge_pass", true) st:wnd():SetTextST(string.format("Проход до %02d:%02d", pstor_hrs, pstor_min)) has_static = true end S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 24 Марта 2020 Поделиться Опубликовано 24 Марта 2020 Здрасьте. Попадалась информация о старой версии мода "Худ рук", в которой текстура рук подменялась за счет классов то ли оружия, то ли брони. Кто-нибудь помнит, как этот мод работал? Хочется назначить 3–4 вида перчаток без полной замены моделей рук и перехода на правозатворное оружие. Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
_Sk8_AsTeR_ 117 Опубликовано 24 Марта 2020 Поделиться Опубликовано 24 Марта 2020 А нигде не встречали способы реализации голода у НПС? Ссылка на комментарий
naxac 2 447 Опубликовано 24 Марта 2020 Поделиться Опубликовано 24 Марта 2020 3 часа назад, Norman Eisenherz сказал: о старой версии мода "Худ рук" Там, емнип, была целая куча худовых моделей оружия: на каждую пушку под каждый костюм, и столько же секций оружия: на каждый худ по секции. И, в зависимости от одетой брони, в руки спавнилось оружие с нужным худом. Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 24 Марта 2020 Поделиться Опубликовано 24 Марта 2020 @naxac А новая версия правит движок, чтобы позволить прямую замену текстур… Тогда все, снимаю вопрос. Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
Graff46 598 Опубликовано 26 Марта 2020 Поделиться Опубликовано 26 Марта 2020 Подскажите по системе зон в которые НПС не могут ходить? Вроде это сделано рестрикторами. И какие есть методы ограничивать навигацию НПС в игре. Ссылка на комментарий
Zander_driver 10 334 Опубликовано 26 Марта 2020 Поделиться Опубликовано 26 Марта 2020 Если про исходно-ТЧ-оригинальный механизм, то там у них в нетпакете хранится табличка in-рестрикторов и out-рестрикторов. Хранятся там собственно id объектов. В шейп которых нельзя заходить / нельзя выходить. И там же дивные заморочки на тему того, что если рестриктор допустим удаляется, то его упоминания надо удалять из памяти все нпс и мутантов (а у них такая же система). Иначе непременный вылет, и конечно же, без лога. Как же иначе-то. Но так же не возбраняется в любой момент рестриктор создать-настроить, и записать в память всем кому надо. Впрочем, я таки полагаю что при открытых исходниках вся эта болтовня не очень актуальна. И в куче движков уже может быть все совсем иначе. 1 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 28 Марта 2020 Поделиться Опубликовано 28 Марта 2020 Здрасьте. ТЧ 1.0006, Армейские склады: сообщение "Сталкер, ты подходишь к барьеру" выдается дважды. В описании рестриктора только одно сообщение, в [xr_effects] такого сообщения нет. Где искать лишнюю копию? Spoiler [alife_l07_military.ltx] name = mil_actor_blockpost -- текст сообщения type = tips -- тип сообщения: "send_tip" on_info = {=mil_actor_enemy_freedom} nil -- проверка друг/враг on_actor_inside = %+mil_blockpost_free_task% -- инфо "mil_blockpost_free_task" (+ задание "mil_blockpost_job") on_info2 = {+mil_blockpost_free_task} sr_sound_act -- звуковое сообщение при получении инфо-поршня sender = freedom -- отправитель текстового сообщения on_signal = tip_sended | sr_idle -- ? (деактивация рестриктора) Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
WinCap 316 Опубликовано 28 Марта 2020 Поделиться Опубликовано 28 Марта 2020 @Norman Eisenherz, забыли добавить single = true, наверное. Мне кажется, правильным будет такой вариант: Скрытый текст [sr_tip1] name = mil_actor_blockpost type = tips sender = freedom on_info = {=mil_actor_enemy_freedom} nil on_actor_inside = sr_sound_act %+mil_blockpost_free_task% S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий
mole venomous 3 433 Опубликовано 29 Марта 2020 Поделиться Опубликовано 29 Марта 2020 Кто знает, что с Шустрым не так? Он, зараза, спаунится с НИ, несмотря на то, что в all.spawn ему указал Скрытый текст [spawner] cond = {+tutorial_wounded_start} С бандитами на АТП это работает. Здесь могла быть ваша реклама. Ссылка на комментарий
Купер 2 915 Опубликовано 29 Марта 2020 Поделиться Опубликовано 29 Марта 2020 (изменено) @mole venomous, тут, тут и тут. object_flags возможно? Изменено 29 Марта 2020 пользователем Купер 1 1 Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 1 Апреля 2020 Поделиться Опубликовано 1 Апреля 2020 On 3/28/2020 at 9:37 PM, WinCap said: @Norman Eisenherz, забыли добавить single = true, наверное. Мне кажется, правильным будет такой вариант: [sr_tip1] (Reveal hidden contents) [sr_tip1] name = mil_actor_blockpost type = tips sender = freedom on_info = {=mil_actor_enemy_freedom} nil on_actor_inside = sr_sound_act %+mil_blockpost_free_task% Добрался, наконец, попробовать: просто "single = true" в имеющейся логике убирает второй текст, но затыкает и звук, и задачу. Без "single = true" сообщений, как ни крути, выдается два. В итоге, вот такой порядок дает нужный результат: Spoiler [alife_l07_military.ltx] name = mil_before_blockpost_restriktor … [logic] active = sr_idle [sr_idle] on_info = {=mil_actor_enemy_freedom} nil on_actor_inside = %+mil_blockpost_free_task% on_info2 = {+mil_blockpost_free_task} sr_tip [sr_tip] name = mil_actor_blockpost type = tips sender = freedom single = true on_signal = tip_sended | sr_sound_act [sr_sound_act] snd = characters_voice\scenario\military\pda\mil_pda_7 on_signal = sound_end | nil Добавлено HellRatz, 2 Апреля 2020 Запрещен оверквотинг (цитирование сообщения большого объема, спойлеров, изображений). Для цитирования достаточно выделить нужную часть сообщения. Устное предупреждение по пункту 2.6 правил форума.Правила цитирования 1 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
AndrewMor 527 Опубликовано 2 Апреля 2020 Поделиться Опубликовано 2 Апреля 2020 @Norman Eisenherz, Я всегда, кстати, думал, где, как и почему выдается сообщение, логику копал. А дело-то в рестрикторе. Сталкер - наше всё! Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 2 Апреля 2020 Поделиться Опубликовано 2 Апреля 2020 Здрасьте. Есть ли какой-то фикс для меток, которые остаются после сюжетных заданий (АТП, X-16, РГ-6)? Пробовал удалять метки по инфо-поршням завершения заданий – удаление срабатывает через раз, как будто инфо-поршни не выдаются, хотя сами задания засчитываются стабильно. ТЧ 1.0006 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
aka_sektor 1 476 Опубликовано 3 Апреля 2020 Поделиться Опубликовано 3 Апреля 2020 Что это значит: https://ap-pro.ru/forum/100-9999-826370-16-1452102986 Цитата уникальный id объекта который ему назначил движек при спавне. alife():object(id) - возвращает объект, с таким номером. ? Это какая-то проверка, помогающая найти ID объекта? Если да, то как правильно и куда ещё вписывать, чтобы потом прочесть в логе. Discord-сервер modfaq.ru: https://discord.gg/9j42BXwB Ссылка на комментарий
DMT 2 Опубликовано 4 Апреля 2020 Поделиться Опубликовано 4 Апреля 2020 Как переместить всё содержимое некоторого тайника в инвентарь НПС ? Любые намёки, любые идеи пригодятся. А лучше, если есть готовое решение. Ссылка на комментарий
AndrewMor 527 Опубликовано 4 Апреля 2020 Поделиться Опубликовано 4 Апреля 2020 (изменено) 03.04.2020 в 02:32, Norman Eisenherz сказал: Есть ли какой-то фикс для меток, которые остаются после сюжетных заданий (АТП, X-16, РГ-6)? Насчет фикса - не знаю, но в своем моде исправлял сам. Правда, дело было давно, и откопать не сумею теперь. Вывод: смотри квест пошагово и в нужный момент вызывай функцию удаления конкретной метки. Добавлю: та еще мутота, но все решаемо. В частности, по РГ-6 долго не мог добиться результата, в итоге все ж сделал. Но где и что правил - увы, не помню. Изменено 4 Апреля 2020 пользователем AndrewMor Сталкер - наше всё! Ссылка на комментарий
Zander_driver 10 334 Опубликовано 4 Апреля 2020 Поделиться Опубликовано 4 Апреля 2020 2 часа назад, DMT сказал: Как переместить всё содержимое некоторого тайника в инвентарь НПС ? Как-то так treasure:transfer_item(obj, npc) Где treasure, obj, npc - это клиентские объекты тайника, перемещаемого итема, и НПС, соответственно. И делать надо в цикле, перебирая все итемы в тайнике. Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти