Любым музыкальным редактором, например можно использовать Sound Forge 8.0, подготавливаем наши звуковые файлы – они должны быть сохранены в следующем виде: качество сохраняемых файлов: WAV (standard) 44100Гц, Моно, 16 бит.
После сохранения выбранных треков в виде WAV (standard) 44100Гц, Моно, 16 бит, их необходимо перевести в формат, поддерживаемый игрой. Для этого нам понадобится X-Ray SDK – официальный пакет разработчика для игры S.T.A.L.K.E.R.
Скачать можно по ссылкам (300 Mb):
-
http://xfiles.gsc-game.com/st/xray-sdk-setup-v0.4.exe -
http://xfiles.gsc-game.com/st/ NB: Вы спросите, почему сразу не сохранять треки в формате OGG 44100Hz, Mono? Ответ прост – в комментах OGG файла должны прописываться параметры распространения звука по игровому миру. Именно по этой причине собственные звуки в игре практически не слышно на определенных расстояниях, именно поэтому в консоль выводятся сообщения о невалидном комментарии и т.п.
Итак, открываем Actor Editor либо Level Editor. На панели инструментов справа вверху ищем пункт меню Sounds, кликаем его и выбираем Sound Editor. Откроется окно редактора звука. Для того чтобы там появились наши файлы, необходимо скопировать их в папку rawdata\sounds в корне установленного Level Editor’a (например, c:\Program Files\X-Ray SDK\level_editor\rawdata\sounds). В этой папке вполне могут оказаться какие-то «левые» файлы – их можно смело удалить.
NB: Важно чтобы копируемые туда файлы были именно в формате WAV!
После того как вы скопировали свои файлы в папку SDK в окне Sound Editor’a должен появиться их список. Выбираем трек и изменяем следующие параметры:
MinDist = 300.0 - расстояние, с которого звук начнет затухать (практически это и есть громкость звука)
MaxDist = 300.0 - максимальное расстояние, на котором звук будет слышен ГГ
MaxAIDist = 300.0 - максимальное расстояние, на котором звук будут слышать NPC
BaseVolume = 1.0 - громкость
А также задается к какому типу звуков в игре он относится:
Game Type:
· undefined – неопределенный, на них 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
· NPC injuring - ранение NPC
· NPC step - шаги NPC
· NPC talking - разговор NPC
· NPC attacking - атака NPC
· NPC eating - приём пищи NPC
· Anomaly idle – звуки аномалий
· Object breaking - разрушение объекта
· Object colliding - столкновение объекта(ов), удар
· Object exploading - взрыв
· World ambient - звуки окружающего мира
Остальные параметры не трогаем. Нажимаем ОК и ждем окончания синхронизации звуков. Если всё было сделано правильно, в папке gamedata\sounds в директории Level Editor’a (например, c:\Program Files\X-Ray SDK\level_editor\gamedata\sounds\) можно забрать готовые файлы ogg с валидными комментами. После этого смело кладем наши звуки в папки игры.
Для информации: в файле m_stalker.ltx прописываются коэффициенты реакции NPC на конкретную группу звуков (чем больше коэффициент - тем больше паника):
[stalker_sound_perceive]
weapon = 2.0; 0.75; 10 коэффициент усиления приоритета\силы звука
item = 0.2; коэффициент усиления приоритета\силы звука
npc = 1.0;1;2 коэффициент усиления приоритета\силы звука
anomaly = 0.5; коэффициент усиления приоритета\силы звука
world = 0.2; коэффициент усиления приоритета\силы звука
Таким образом, каждому звуку в игровом мире можно задать требуемые параметры и определить реакцию на него NPC