Реакция AI на Game Type звука |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Реакция AI на Game Type звука |
16.09.2017, 12:35
Сообщение
#1
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
Как именно реагируют NPC и монстры на звуки в игре?
А именно: Код Item picking up Item dropping Item taking Item hiding Item using Weapon shooting Weapon empty clicking Weapon bullet hit Weapon recharging NPC dying NPC injuring NPC step NPC talking NPC attacking NPC eating Anomaly idle Object breaking Object colliding Object exploding World ambient Известно лишь, что тип undefined - AI игнорирует. Также, читал, что ещё тип звука влияет на то как он распространяется по уровню. Так ли это? Или за это все же отвечают исключительно параметры дистанции? Сообщение отредактировал aka_sektor - 16.09.2017, 12:47 -------------------- |
 
|
|
|
|
16.09.2017, 13:14
Сообщение
#2
|
|
Продвинутый геймер Репутация: 104 Группа: Участник Сообщений: 336 Награды: 4 Регистрация: 13.12.2011 |
насколько я понимаю подобные звуки исходят из дин. обьектов соотв. прописано для каждого дистанция звука в конфигах. с точки зрения левела есть только сануд анклюжн который мутит внешние звуки в определенных местах. ну и фон звуки которые статично играют и не влияют на NPC, вроде.
-------------------- |
 
|
|
16.09.2017, 13:20
Сообщение
#3
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
подобные звуки исходят Составил тут таблицу: Где в звуках ТЧ какие типы использовались. Не нашёл чтобы где-то использовались типы: Код Item picking up Item dropping Anomaly idle Интересно для чего они предполагались? Сообщение отредактировал aka_sektor - 16.09.2017, 13:52 -------------------- |
 
|
|
16.09.2017, 14:13
Сообщение
#4
|
|
Самый некомпетентный на форуме Репутация: 312 Группа: Участник Сообщений: 4074 Награды: 4 Регистрация: 04.09.2012 |
|
 
|
|
16.09.2017, 14:30
Сообщение
#5
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
dPlayer, ну предположи, как это выглядит в игре, и технически.
Моё мнение: Бред просто написан какой-то, первое - подбирание, а второе - выбрасывание. Насколько я помню, при поднятии чего либо НЕ из контейнера, звука никакого нету. Если под выбрасыванием имеется ввиду, из инвентаря, то у звука inv_drop.ogg в ТЧ/ЧН установлен тип undefined. А в ЗП все звуки инвентаря имеют тип Item using Да и вообще, теория (т.е. предположение), эт не практика. Сообщение отредактировал aka_sektor - 16.09.2017, 14:41 -------------------- |
 
|
|
16.09.2017, 14:33
Сообщение
#6
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Интересная статейка, только стоило бы назвать "как взять качественный wav-файл и с помощью говно-сдк превратить в засраную щелчками oggшку". Но тема интересная, правка параметров звуков в том числе помогает немного вправить мозги нпсям, чтобы хоть как-то реагировали. Сообщение отредактировал macron - 16.09.2017, 14:34 |
 
|
|
16.09.2017, 14:43
Сообщение
#7
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
засраную щелчками oggшку У меня такого не наблюдалось, да и у кого спрашивал тоже. Расскажи подробнее. Эт в каком SDK такое? Сообщение отредактировал aka_sektor - 16.09.2017, 14:43 -------------------- |
 
|
|
16.09.2017, 14:51
Сообщение
#8
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Эт в каком SDK такое? В ТЧ точно. Преимущественно на мелких файлах. Пысы вроде под конец поняли, что всё обосрано (даже примеры вложили - см. sounds\demo_import_bug.ogg и demo_import_no_bug.ogg), но так и отправили в релиз. Даже некоторые звуки шагов с щелчками, просто мы так привыкли, что воспринимаем уже как норму. Сообщение отредактировал macron - 16.09.2017, 14:54 |
 
|
|
16.09.2017, 15:05
Сообщение
#9
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
Преимущественно на мелких файлах Хочешь сказать, что прослеживается зависимость от размера файла на выходе? Битрейт не влияет? У demo_import_bug.ogg он 83 Кбит\с. Не топовое качество. воспринимаем уже как норму Может в игре их не слышно? А то вот прослушал в одном плеере с включенным антиклиппингом, треска не слышно. А потом в другом без него, уже слышен. Сообщение отредактировал aka_sektor - 16.09.2017, 15:05 -------------------- |
 
|
|
16.09.2017, 15:11
Сообщение
#10
|
|
Высший Игровой Бог Репутация: 1747 Группа: Супермодератор Сообщений: 12594 Награды: 15 Регистрация: 05.11.2009 |
dPlayer, ну предположи, как это выглядит в игре, и технически. Item dropping - предмет брошен. НПС "услышал" (без визуального обнаружение, например звук раздался за стеной) что предмет выброшен и может пойти его подобрать. Item picking up - предмет подобран. Если враг - отступить, занять оборонительную позицию (может он оружие/патроны/аптечки подобрал?), не высовываться. Если друг и предмет неизвестен (НПС его не видел) - поговорить (в сталкере НПС вообще "общаются" друг с другом помимо скриптовых сцен и рассказыванию анекдотов костру?), если друг и предмет известен и нужен НПС - поторговать. Anomaly idle - обычный звук аномалии (не активированной). Обойти избегая приближения (повышения уровня звука). Это мои предположения для чего это типы могли задумываться. На практике всем давно известно что все упростили насколько было можно (например обход аномалий). К тому же с технической точки зрения легче "читерить" (НПС всегда знает расположение всех объектов и действий актора) чем делать реальные вычисления. Если игрок не заметит, то смысл тратить на это время если можно сделать что-то более полезное? Кто-то говорил "тогда НПС будут просто проигрывать анимации по пути к ЧАЭС". В той же GTA V это почему-то никого не волнует -------------------- |
 
|
|
16.09.2017, 15:27
Сообщение
#11
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
предмет брошен. НПС "услышал" Непонятно ток на что вешается звук? Объект? Скрипт интерфейса? Item picking up - предмет подобран. Помнится, где-то видел демонстрацию мода, там играл звук, взяли их из Скайрима. Типа бумажный, при поднятии документов. Стеклянный если водку. Жестяной если энергетик. Не знаю как там сделано... может дописали в секцию предметам какой-то параметр. звук аномалии (не активированной) Да, эт очевидный перевод. Вот только на практике, звуки аномалий имеют тип undefined упростили насколько было можно (например обход аномалий) Помнится как-то его восстанавливал Red75. Глянуть бы, как именно. Думаю, скрипты правил. Насчет распространения звуков по уровню: Читал такое, что кто-то прогнал через SDK звук радио с типом NPC talking, и у него на весь уровень гудел музон. При том что дистанции указаны были не большие. Помню тот прикол с Сидоровичем... когда стою возле Волка, а Сидор говорит будто рядом. Я вот думаю, эт чет такое тоже было. Сообщение отредактировал aka_sektor - 16.09.2017, 15:45 -------------------- |
 
|
|
16.09.2017, 15:46
Сообщение
#12
|
|
Почти Мастер Репутация: 311 Группа: Участник Сообщений: 1092 Награды: 5 Регистрация: 01.03.2011 |
Неписи реагируют на звук выстрела, звук попадания, крик ранения или смерти. Реагируют понятным образом - опасный объект заносится в дэнжер менеджер. На все остальное им плевать.
|
 
|
|
16.09.2017, 15:50
Сообщение
#13
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
звук выстрела, звук попадания, крик ранения или смерти Выходит: Код Weapon shooting Weapon bullet hit NPC injuring NPC dying А что скажешь на это: (возможно ещё Item hiding) ? Сообщение отредактировал aka_sektor - 16.09.2017, 15:52 -------------------- |
 
|
|
16.09.2017, 15:57
Сообщение
#14
|
|
Почти Мастер Репутация: 311 Группа: Участник Сообщений: 1092 Награды: 5 Регистрация: 01.03.2011 |
И о чем это говорит-то? Неписи слышат все звуки и все их запоминают, в т.ч. позицию объекта, который их издал. Актор издал звук - обнаружили позицию. В комбате они бы и на звук разворачиваемой шоколадки начали стрелять.
|
 
|
|
16.09.2017, 16:00
Сообщение
#15
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
Неписи слышат все звуки и все их запоминают Неписи реагируют на... или смерти... На все остальное им плевать. Чет не вяжется. Как же плевать, если реагируют? Пусть возможно и без специально прописанных реакций. Хотя... как возможно, зачем то же их создали. Или это билдомусор? Странно что до SDK ЗП дожил. Смысл был в том, чтобы понять какой Game Type чему следует указывать и как это влияет на игру. опасный объект заносится в дэнжер менеджер Как это в игре выглядит? Предполагаю, что непись начинает искать врага, пока не убьет. Сообщение отредактировал aka_sektor - 16.09.2017, 16:34 -------------------- |
 
|
|
16.09.2017, 16:34
Сообщение
#16
|
|
Высший Игровой Бог Репутация: 1747 Группа: Супермодератор Сообщений: 12594 Награды: 15 Регистрация: 05.11.2009 |
Или это билдомусор? Скорее всего. Я уже выше писал - к релизу много упростили или вырезали, а остальное не трогали ибо оно работало или без него что-то другое не работало, а рефакторинг делать было некогда. -------------------- |
 
|
|
16.09.2017, 16:37
Сообщение
#17
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
Скорее всего. И все таки, эт нужно в исходниках смотреть каждый тип отдельно. Есть такая инфа: Цитата по разному реагирует. Где-то идет дэнжер реакция на определенный тип, где-то для определенных монстров своя логика имеется. Но по большей части, мне кажется, это старьё. Для типа Item picking up, например, вообще какого-либо задействования нет Цитата например в base_monster_feel.cpp фукции void CBaseMonster::feel_sound_new: if (((eType & SOUND_TYPE_WEAPON_BULLET_HIT) == SOUND_TYPE_WEAPON_BULLET_HIT) && (dist < 2.f)) HitMemory.add_hit(who,eSideFront); А SOUND_TYPE_WEAPON_BULLET_HIT это Weapon bullet hit В живности в память добавляется новая инфа, типо хит или что-то вроде этого. А реакция на неё будет в другом месте в коде Плюс срабатывает скриптовый коллбэк на то, что услышал звук. Может еще в скриптах это заюзано А насчет распространения звука: Цитата Ничего такого в коде не нашел
Сообщение отредактировал aka_sektor - 16.09.2017, 16:37 -------------------- |
 
|
|
16.09.2017, 17:18
Сообщение
#18
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Хочешь сказать, что прослеживается зависимость от размера файла на выходе? Может и так. Но я еще давно исключил использование данного инструмента, как глючного и неудобного. И не вижу смысла выяснять, отчего на мелких файлах щелчки чаще, чем на больших.Может в игре их не слышно? Слышно.По теме. Вот пример моих наработок из config\creatures\m_stalker.ltx С этого надо начинать. Цитата [stalker_sound_perceive] ;коэффициент усиления приоритета\силы звука weapon = 2 item = 0.5 npc = 0.6 anomaly = 0.45 world = 0.3 object = 0.4 Далее править параметры самих ogg. Примеры: Чтобы NPC слышали за 15 метров, как ты кустами шелестишь или по земле топаешь, у соответствующих ogg ставим: type: NPC_step, maximum ai distance 15 Чтобы NPC слышали за 30 метров, как ты ножом по дереву лупишь, ставим type: object_colliding, maximum ai distance 30 Чтобы свободно шляющиеся NPC пугались от звука мотора автомобиля, ставим: type: weapon_bullet_hit, maximum ai distance 20 Чтобы NPC слышали пролетающую пулю, смотрим в config\weapons\weapons.ltx звуки whine_sounds = weapons\whine_1, weapons\whine_2 и т.д. У них ставим: type: weapon_bullet_hit, maximum ai distance 10 или больше. Сообщение отредактировал macron - 16.09.2017, 17:20 |
 
|
|
16.09.2017, 17:35
Сообщение
#19
|
|
Грандмастер Репутация: 118 Группа: Участник Сообщений: 1788 Награды: 4 Регистрация: 04.04.2013 |
исключил использование данного инструмента, как глючного и неудобного А что же тогда удобно? Предположу, что SAVandT. Но какой же тогда ему исходник подсунуть можно, чтобы игра читала без проблем? Понятно что Моно. Какой битрейт? Даже 512 Кбит\с ? Или какой-то определенный? Какую герцовку? 44 100 Гц или выше? Битность? 16 или выше? коэффициент усиления приоритета\силы звука Интересно. Эт так можно группировку более реагирующую сделать выходит. Типа Долговцев, хорошо слышущих любые шорохи живности (npc = 0.6) слышали... как ты ножом по дереву лупишь, ставим type: object_colliding Разве этот тип не только для динамических объектов? Дерево это ж статика, какая у неё коллизия? Или имеются ввиду отметины, типа они считаются? Чтобы NPC слышали... по земле топаешь type: NPC_step А монстры? Вроде тоже. Не нашёл у них собственных звуков топота. А может их просто нет? Сообщение отредактировал aka_sektor - 16.09.2017, 17:48 -------------------- |
 
|
|
16.09.2017, 18:03
Сообщение
#20
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
А что же тогда удобно? Предположу, что SAVandT. Сторонний энкодер + SAVandT. Подсовываешь wav 44100 Гц, 16, mono, превращаешь в ogg, потом прописываешь параметры через SAVandT. Но какой же тогда ему исходник подсовывать? Понятно что Моно. Какой битрейт? Даже 512 Кбит\с ? Или какой-то определенный? Какую герцовку? 44 100 Гц или выше? Битность? 16 или выше? Развлекайтесь: ЗЫ: чтобы для игрока звук появлялся более-менее плавно, в SAVandT разницу между min Distance и Max Distance лучше делать не менее, чем в 20 раз. Разве этот тип не только для динамических объектов? Дерево это ж статика, какая у неё коллизия? Или имеются ввиду отметины, типа они считаются? Используемые звуковые файлы/партиклы/марки от связи разных пар материалов прописаны в gamemtl.xr.Не нашёл для них специальных звуков топота. А может их просто нет? Там связь то ли материала костей, то ли материала в конфиге. В итоге эффекты (звуки/пыль из-под копыт) тоже берутся из gamemtl.xr, но потом дополнительно в конфиге обрабатываются секцией step_params с учетом конкретных анимаций/временнЫх интервалов и вручную прописываемой силы эффекта. Для НПСей, кстати, такая же лабуда. Только недавно заметил, что нпси в OLR бегают бесшумно, пришлось дорабатывать таблицы в [stalker_step_manager].
Сообщение отредактировал macron - 16.09.2017, 18:34 |
 
|
|
Текстовая версия | Сейчас: 28.03.2024, 12:04 |