AndreySol 215 Опубликовано 29 Июня 2019 Поделиться Опубликовано 29 Июня 2019 42 минуты назад, _Sk8_AsTeR_ сказал: звуки эмбиента ... например, ночью - постоянный звук сверчков... Может с таким вопросом лучше в тему СДК ? Ссылка на комментарий
_Sk8_AsTeR_ 117 Опубликовано 29 Июня 2019 Поделиться Опубликовано 29 Июня 2019 @AndreySol, да думал может есть скриптовый метод... Ссылка на комментарий
AndreySol 215 Опубликовано 30 Июня 2019 Поделиться Опубликовано 30 Июня 2019 7 часов назад, _Sk8_AsTeR_ сказал: может есть скриптовый метод... Есть ф-ционал проигрывания звуков. Вот тока зачем озвучку окружения лепить скриптами? Ссылка на комментарий
_Sk8_AsTeR_ 117 Опубликовано 30 Июня 2019 Поделиться Опубликовано 30 Июня 2019 (изменено) @AndreySol, путь наименьшего сопротивления, наверное. С СДК я дел не имел как таковых. Господа, а есть вероятность научить НПС покидать лагеря и перемещаться в другие? Или иначе говоря как можно заставить НПС уйти из лагеря и просто гулять по зоне? Никто таким не занимался? Нет мыслей куда копать? Изменено 30 Июня 2019 пользователем _Sk8_AsTeR_ Ссылка на комментарий
AndreySol 215 Опубликовано 30 Июня 2019 Поделиться Опубликовано 30 Июня 2019 17 минут назад, _Sk8_AsTeR_ сказал: Нет мыслей куда копать? В логику копай. В логике НПСов можно задать смену гулагов по условию, можно вообще запретить занимать работы в любых гулагах. Много чего можно. Ссылка на комментарий
dsh 3 824 Опубликовано 30 Июня 2019 Поделиться Опубликовано 30 Июня 2019 5 hours ago, _Sk8_AsTeR_ said: Никто таким не занимался? Нет мыслей куда копать? Можешь попробовать покопать вот этот скрипт: - https://github.com/dsh2dsh/op2ogse/blob/master/gamedata/scripts/dsh/dsh_walking_stalkers.script Он периодически выгоняет сталкеров из лагерей, что бы они шли в другие. 1 dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
_Sk8_AsTeR_ 117 Опубликовано 30 Июня 2019 Поделиться Опубликовано 30 Июня 2019 (изменено) @dsh, сопоставляя Ваш ник, имя скрипта и одноименного мода хочется задать закономерный вопрос - Вы автор скрипта? Чуть-чуть бы подробностей, и Вы бы осчастливили одного человека на этой планете! Изменено 30 Июня 2019 пользователем _Sk8_AsTeR_ Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 1 Июля 2019 Поделиться Опубликовано 1 Июля 2019 Комсомол не ищет легких путей (а еще ленится разбирать нетпакеты): вместо чтения флага съемного прицела из нетпакета пошел через fov. Метод не самый оптимальный в плане того, что оптику низкой кратности приходится исключать вручную, но общий размер кода меньше. Spoiler 67,5 обычный режим 45 MP5 41,25 пистолеты и дробовики / РГ-6 37,5 автоматы / LR мод (1,5x) 37,12 бинокль мин 25 G36 / FN2K (3,6x) 22,5 SUSAT / ПСО-1 / РПГ-7 (4x) 15 SUSAT мод / ПСО-1 мод (5x) 11,25 ПСО-1 мод / гаусс (5,5х) 5,625 бинокль макс Скрипт вывода состояния прицела: Spoiler [scripts\bind_stalker.script] t_upd = 0 function actor_binder:update(delta) object_binder.update(self, delta) if t_upd < time_global() then t_upd = time_global() + 500 local item = db.actor:active_item() if item and not string.find( "wpn_knife, bolt", item:section() ) then if device().fov < 67 then -- режим прицеливания (базовый fov = 67.5) if string.find( "wpn_binoc, wpn_lr300_m1", item:section() ) then -- бинокль (fov = 37.1 … 5.6) news_manager.send_tip(db.actor, "binoc or lr-300_mod") -- или мод LR-300 (fov = 37.5) elseif device().fov <= 25 then -- любая оптика кратностью 3.6x (G36/FN2K) и выше news_manager.send_tip(db.actor, "optical scope") else news_manager.send_tip(db.actor, "%c[ui_clr_2]iron sights") end else news_manager.send_tip(db.actor, "%c[gray]no zoom") end else news_manager.send_tip(db.actor, "%c[red]no weapon") end end … Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
dsh 3 824 Опубликовано 1 Июля 2019 Поделиться Опубликовано 1 Июля 2019 @_Sk8_AsTeR_, ты же просил покопать что-нибудь, а теперь подробности... Насчет подробностей - это скрипт нужно изучать. А вкратце, все начинается в periodic_job(). Обходятся все смарты, из них выбираются не эксклюзивные сталкеры. Чем дольше сталкер в лагере, тем вероятнее, что он будет выгнан. Формируется список тех, кого нужно выгнать и выгоняются. Запускается таймер на следующий обход и так по кругу. Сомневаюсь, что ты сможешь использовать этот скрипт как есть, но что бы покопать - подойдет. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Space.Marine 466 Опубликовано 2 Июля 2019 Поделиться Опубликовано 2 Июля 2019 В 30.06.2019 в 14:24, _Sk8_AsTeR_ сказал: как можно заставить НПС уйти из лагеря и просто гулять по зоне? Гугли - SANEX A-LIFE MOD Скрытый текст Полный список изменений: I. Отключены гулаги на картах Кордон, Свалка, Агропром, Тёмная Долина, Бар, Дикая территория, Янтарь, Военные склады, Радар. 1. Отключены Гулаги на вышеперечисленных картах для всех животных за исключением кровососов на Военных складах. 2. На вышеперечисленных картах отключены гулаги для многих NPC (Не сюжетных!!) II. Отключены SMART-TERRAIN для: военных в подземелье Аграпрома, убраны SMART-TERAIN для всех бандитов на карте АГРАПРОМ, в лабе икс 18 для бандитов (а они там есть?), на Янтаре для Долга, на радаре для зомби. Также отключены SMART-TERRAIN для ВСЕХ монстров. III. Увеличен радиус действия А-ЛАЙФ со 150 метров до 300 метров. IV. Исправлены ошибки с собаками, нападающими на лиса, и кабанами, нападающими на блокпост долга.... Описание мода: Как вы все наверное знаете, разработчики игры обещали нам уникальную систему жизни. Существа зоны должны жить своей жизнью. На деле это оказалось немного не так: существа действительно живут своей жизнью, но только внутри определённой зоны. За эту зону они могут выйти при двух условиях: 1. Они за кем-то гонятся. 2. Они от кого-то убегают. Вот и получается, что, допустим на локации кардон, собачки недалеко от вагончика будут бродить там вечно, пока не наступит одно из вышеперечисленных условий. Я в своём моде убрал эти зоны для ВСЕХ животных, и для некоторых людей. Что получается? Например всё теже собачки у вагончика, теперь могут пойти, например, к раненому сталкеру и съесть его. Существа зоны теперь могут свободно передвигаться по всей карте. Это порождает очень большое колличество интересных ситуаций. Например огромная стая собак, штук 20, гналась за плотями. Собаки эти раньше сидели в своей зоне-гулаге, но когда я их отпустил, они пошли к плотям, и напали на них. Тоже самое с людьми. Например в лагере новичков. Раньше из этого лагеря никто не уходил, но теперь из лагеря переодически уходят 1-2 сталкера. В моём моде спокойно работают ВСЕ квесты, кроме некоторых. Мой мод получил очень хорошие отзывы на офф. форуме игры. Качаем мод, и видим тот a-life, который нам так долго рекламировали разработчики игры!!! Существуют разные версии мода на разные версии ТЧ и модификаций. Ссылка на комментарий
_Sk8_AsTeR_ 117 Опубликовано 3 Июля 2019 Поделиться Опубликовано 3 Июля 2019 @Space.Marine, Это немного не то. Убирать гулаки как раз не здорово. Нужно именно насильно выпроваживать их из лагеря в другой лагерь, таким образом имитируя в зоне бурную деятельность и случайные встречи с другими группировками Господа, а еще вот такой вопрос: между звуковыми фразами НПС существует какая-то странная неприятная задержка. Как ее можно свести к минимуму? Пример, сталкеры у костра, анекдоты травят: -А чего я как-то слышал Непонятная пауза в 2-3 секунды -Сам анекдот Снова непонятная пауза -реакция на шутку от других НПС Как можно убрать эти паузы? Ссылка на комментарий
AndreySol 215 Опубликовано 4 Июля 2019 Поделиться Опубликовано 4 Июля 2019 9 часов назад, _Sk8_AsTeR_ сказал: таким образом имитируя в зоне бурную деятельность В радиусе 150м от ГГ. Ссылка на комментарий
AndrewMor 527 Опубликовано 4 Июля 2019 Поделиться Опубликовано 4 Июля 2019 3 часа назад, AndreySol сказал: В радиусе 150м от ГГ. Правильнее сказать, в радиусе А-лайфа, он может быть другим. Сталкер - наше всё! Ссылка на комментарий
_Sk8_AsTeR_ 117 Опубликовано 6 Июля 2019 Поделиться Опубликовано 6 Июля 2019 Блин, не хватает своих мозгов смекнуть, как убрать эти паузы между фразами НПС. Ребят, есть предположения куда ковырять? Суть: Убрать или свести паузы между фразами НПС, то есть между ИНТРО_ДЖОКЕ и самой шуткой, например, как это в той же CS реализовано. Есть идейки? Ссылка на комментарий
WinCap 316 Опубликовано 6 Июля 2019 Поделиться Опубликовано 6 Июля 2019 1 час назад, _Sk8_AsTeR_ сказал: Убрать паузы между фразами НПС Если речь о ТЧ, то копать нужно файл xr_kamp.script. Точно не знаю, что нужно править, но... Нужно присмотреться к таблице self.timeout в CKampManager:__init, а также к вызовам xr_sound.set_sound_play в CKampManager:updateNpc, в тех где sound == "pre_joke" и sound == "play_joke", ну и т.п. 1 S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий
Баба ЯГА 7 Опубликовано 6 Июля 2019 Поделиться Опубликовано 6 Июля 2019 Ребята, в конфиге оружия (любого) есть некий параметр -> orientation = 3, 0, 0 : можно ли во время игры изменить параметры, которые заданы в файле *.ltx? Именно скриптом? Там может нетпакетами как-то и т.д... Вот логигу-же можно менять неписям через нетпакеты, может и значения можно? Перезаписывать данные в самом LTX - не обязательно, мне бы именно в игре изменить (хотя если можно LTX менять - то тоже пойдёт) меня конкретно интересуют именно параметры orientation = 3, 0, 0 , ну, вот например во время игры изменить 3 на 0 , возможно такое? Уже пару недель шукаю по всему интернету - не могу ничего путёвого найти ... Буду безмерно благодарен. Мы, вчера, соседям сказали, что материализация - состоялась, чтобы ваш авторитет не уронить. Вот, мол, было изваяние, а теперь - стала Марья Ивановна. Многие верят ... © Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 8 Июля 2019 Поделиться Опубликовано 8 Июля 2019 Здрасьте. Есть ли способ перебора только онлайн-объектов без перебора всех объектов на карте? Скажем, надо обнаружить противника в заданном радиусе, меньшем радиуса A-life. Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
AndreySol 215 Опубликовано 8 Июля 2019 Поделиться Опубликовано 8 Июля 2019 (изменено) 1 час назад, Norman Eisenherz сказал: Есть ли способ перебора только онлайн-объектов без перебора всех объектов на карте? Чем перебор объектов плох ? Если вызывать разово, по необходимости, а не вешать на апдейт в биндере актера... Если очень надо именно без перебора всех объектов, то надо смотреть в сторону регистрации он-лайновых объектов в глобальную таблицу(в том же db.script к примеру). Судя по "надо обнаружить противника" разговор идет за НПСов, значит надо доделать в xr_motivator.script, в классе биндера регистрацию неписей в нет-спавн и отрегистрацию в нет-дестрой. Там кастати есть попытка такой регистрации\отрегистрации: function motivator_binder:net_spawn(sobject) if not object_binder.net_spawn(self, sobject) then return false end db.add_obj(self.object) <- тута добавляем в таблицу .... function motivator_binder:net_destroy() local st = db.storage[self.object:id()] if st.active_scheme then xr_logic.issue_event(self.object, st[st.active_scheme], "net_destroy", self.object) end db.del_obj(self.object) <-- тута убираем из таблицы ... Тока вышеуказанные ф-ции в db.script выглядят так: function add_obj(obj) <-- пустышка end function del_obj(obj) storage[obj:id()] = nil end Надо подумать, что же в таблице хранить, и доделать ф-ции. Изменено 8 Июля 2019 пользователем AndreySol Ссылка на комментарий
Norman Eisenherz 316 Опубликовано 9 Июля 2019 Поделиться Опубликовано 9 Июля 2019 @AndreySol Нет-спавн, скорее всего, не годится, тк проверку требуется выполнять не в момент загрузки, а несколько раз между загрузками. Перебор только db.storage – похоже, то, что нужно. Единственная непонятка: в заголовке [db.script] сказано "база данных живых онлайновых объектов …", но без проверки obj:alive() трупы тоже считаются активными противниками и приведенная ниже проверка выдает "true". Может, в проверке что-то не учтено? Spoiler function enemy() for id, v in pairs(db.storage) do local obj = level.object_by_id(id) if obj then if obj:alive() and ( obj:relation(act) == game_object.enemy or IsMonster(obj) ) and obj:position():distance_to( act:position() ) < 40 then return true end end end return false end Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
AndreySol 215 Опубликовано 9 Июля 2019 Поделиться Опубликовано 9 Июля 2019 1 час назад, Norman Eisenherz сказал: сказано "база данных живых онлайновых объектов …" Ты еще не привык, что в ПЫСовском творении много чего "сказано", да не так в действительности ? Привыкай, меньше непоняток будет. 1 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти