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

在《半衰期：爱莉克斯》的插件和Source2 引擎中，播放音效是通过 音效事件 来进行触发启动和停止的。
音效事件可以由游戏代码、地图实体、动画或者其他音效事件按名称进行启动/变更/停止。
音效事件有一个 "类"，并包含一个与该 "类 "相对应属性值的集合。
== 添加音效步骤 ==
要添加新的音效事件或改变游戏中已存在的音效事件内容，你需要：
* 在你自己的插件目录下创建 "sounds" 文件夹，并放入.wav格式的音效文件。
* 添加自定义音效事件。
* 在音效事件里声明新的音效（soundevents编译后版本是.vsnd文件）。
* 添加"sound resources"指向你的音效事件。
* 编译上述所有文件。
要想覆盖现有的音效事件，所需步骤也是一样的。
要将新的音效事件添加到地图中，需要一个实体。这个实体可以用来控制音效事件的启动和停止。
== 添加新音效 ==
将音效文件放到"sounds"目录中：
== 音效事件==
在“soundevents”目录下添加一个唯一命名的 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",
		]
	}
// overwriting existing soundevents
	"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",
			// Entries removed to shorten this example, all the files should be referenced here.
			"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_name>_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目录中使用resourcecompiler通常需要指定完整路径：
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"
== 加载音效事件 ==
 
在游戏中加载地图或在资产浏览器未加载音效事件之前，不会重载音效事件。
这意味着如果你启动创意工坊工具后只打开 Hammer，您会发现您“soundevent picker（音效事件选择器）”读取不到音效事件。
 
在这种情况下，要加载插件下的音效事件，请执行以下任一操作：
# 启动创意工坊工具并使用 “addon_tools_map <mapname>”命令加载任意地图。
# 在资产浏览器中重新编译并加载你的音效事件文件。
 
:只有在启动创意工坊工具后尚未载入地图时，才需要这么做。
在控制台输入“snd_list_soundevents” 检查音效事件是否正确启用。
== 更多内容 ==
 -- 关于音效事件的参考。
 -- 《半衰期：爱莉克斯》的音效事件列表。