Ru/Half-Life: Alyx Workshop Tools/Addon Sounds

Воспроизведение звуков в дополнениях Source 2 и Half-Life: Alyx запускается стартом и остановкой звукового события [Sound Event].
Звуковые события запускаются/изменяются/останавливаются игровым кодом, объектами на карте, анимацией или другими звуковыми событиями по имени.
Звуковые события имеют тип (к примеру, type = "hlvr_default_3d") и содержат набор значений, соответствующих этому типу.
== Добавление звуков в ваше Дополнение ==
Чтобы добавить новые звуковые события или изменить содержимое уже существующих звуковых событий из базовой игры, вам необходимо:
* Добавить новый .wav файл в папку "sounds", которая находится в вашем дополнении.
* Добавьте свой собственный файл звуковых событий аддона.
* Объявите в нем свои звуковые события, чтобы они указывали на ваши новые звуки (скомпилированная версия .vsnd).
* Добавьте манифест "звуковых ресурсов", который указывает на ваш файл звуковых событий. 
* Скомпилируйте все эти файлы.
Это все, что требуется, чтобы перезаписать существующие звуковые события.
Чтобы добавить новые звуковые события на карту, на карте нужно разместить . Эту сущность можно запускать и останавливать с помощью триггеров.
== Добавить новые звуки ==
Поместите звуковые файлы в каталог "sounds" внутри дополнения:
== Файлы Звуковых Событий ==
Добавьте файл звуковых событий с уникальным именем в каталог "soundevents", добавив к нему префикс с именем дополнения: 
== Перезапись звуковых событий ==
В качестве примера, перезапишем некоторые звуковые события для зомби:
<!-- kv3 encoding:text:version{e21c7f3c-8a33-41c5-9977-a76d3a32aa0d} format:generic:version{7412167c-06e9-4698-aff2-e63eb59037e7} -->
{
	"Addon.AudioNewSoundDemo" = 
	{
		type = "hlvr_default_3d"
		volume = 1.0
		volume_falloff_min = 70.0
		volume_falloff_max = 2700.0
		volume_fade_out = 1
		volume_fade_in = 0
		spread_min = 30
		spread_max = 150
		vsnd_files = 
		[
			"sounds/snd_sound_add_demo_01.vsnd",
		]
	}
// Перезапись существующих звуковых событий
	"Step_Zombie.Metal_Solid" = 
	{
		base = "Step_Zombie.Base"
		volume_mult_step_layer = 2
		vsnd_files_step = 
		[
			"sounds/fs_squeaky_01.vsnd",
			"sounds/fs_squeaky_02.vsnd",
			"sounds/fs_squeaky_03.vsnd",
			"sounds/fs_squeaky_04.vsnd",
			"sounds/fs_squeaky_05.vsnd",
			"sounds/fs_squeaky_06.vsnd",
			"sounds/fs_squeaky_07.vsnd",
			"sounds/fs_squeaky_08.vsnd",
			"sounds/fs_squeaky_09.vsnd",
			"sounds/fs_squeaky_10.vsnd",
			// Строчки удалены ради сокращения этого примера, здесь должны быть указаны все файлы.
			"sounds/fs_squeaky_39.vsnd",
			"sounds/fs_squeaky_40.vsnd",
			"sounds/fs_squeaky_41.vsnd",
			"sounds/fs_squeaky_42.vsnd"
		]
	}
	"Step_Zombie.Default" = 
	{
		base = "Step_Zombie.Metal_Solid"
	}
	"Step_Zombie.Concrete" = 
	{
		base = "Step_Zombie.Metal_Solid"
	}
	"Step_Zombie.Dirt" = 
	{
		base = "Step_Zombie.Metal_Solid"
	}
	"Step_Zombie.Gravel" = 
	{
		base = "Step_Zombie.Metal_Solid"
	}
	"Step_Zombie.Metal_Walkway" = 
	{
		base = "Step_Zombie.Metal_Solid"
	}
	"Step_Zombie.Wood" = 
	{
		base = "Step_Zombie.Metal_Solid"
	}
}
При создании новых звуков вы можете использовать несколько различных типов звука:
*hlvr_default_3d
*hlvr_2d_w_falloff
*hlvr_2d_w_occlusion
*hlvr_music_3d
*hlvr_music_3d_takeover
*hlvr_music_2d
*hlvr_music_fixed_rotation
*hlvr_music_start_multi_quad
== Файлы Манифеста ==
Добавьте файл манифеста с конкретным именем в каталог "resourcemanifests", чтобы он соответствовал дополнению: 
Формат имени:
 <название_аддона>_addon_resources.vrman
Добавьте референс на один или несколько файлов звуковых событий с манифестом:
<!-- kv3 encoding:text:version{e21c7f3c-8a33-41c5-9977-a76d3a32aa0d} format:generic:version{7412167c-06e9-4698-aff2-e63eb59037e7} -->
{
	resourceManifest = 
	[
		[ 
			"soundevents/audio_new_sound_soundevents.vsndevts",
		],
	]
}
== Компиляция ==
Используйте либо "Asset Browser", либо "resourcecompiler", скомпилируйте все вышеперечисленные ресурсы. Использование компилятора ресурсов в каталоге Steam часто требует указания полных путей: 
c:\Program Files (x86)\Steam\steamapps\common\Half-Life Alyx\content\hlvr_addons\audio_new_sound\resourcemanifests>"c:\Program Files (x86)\Steam\steamapps\common\Half-Life Alyx\game\bin\win64\resourcecompiler.exe" -i -f "c:\Program Files (x86)\Steam\steamapps\common\Half-Life Alyx\content\hlvr_addons\audio_new_sound\resourcemanifests\audio_new_sound_addon_resources.vrman"
== Загрузка аддона звуковых событий ==
 
Звуковые события дополнения не загружаются до тех пор, пока в игру не будет загружена карта или пока файл звуковых событий не будет перезагружен в Asset Browser.
Это означает, что если вы запустите Инструменты Мастерской и откроете только Hammer, вы обнаружите, что звуковые события вашего аддона еще недоступны в средстве выбора звуковых событий [soundevents picker].
В таких случаях, чтобы загрузить звуковые события вашего дополнения, выполните одно из следующих действий:
# Запустите Инструменты Мастерской и загрузите любую карту с помощью “addon_tools_map <название_карты>.”
# Перекомпилируйте и перезагрузите файл <название_аддона>_soundevents.vsndevts в Asset Browser.
 
:Эти шаги необходимы только в том случае, если вы еще не загрузили карту после запуска Инструментов Мастерской.
Еще один полезный способ проверить наличие звуковых событий дополнения - ввести консольную команду “snd_list_soundevents” в vconsole.
== Смотрите также ==
.
.