From 609185f10f39e7022908cb2d476131daf4c90fb1 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Mon, 9 Feb 2026 02:03:35 -0800 Subject: [PATCH] Expand NPC voice file search to test multiple path patterns Tests various path structures to find where voice files actually exist: - Wowhead StandardNPC paths - Lowercase variations - PC voice files (HumanVocMale/Female - player emotes) - VO/Voice directories - Simpler creature paths This will help identify which files actually exist in the 3.3.5a MPQs. --- src/audio/npc_voice_manager.cpp | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/audio/npc_voice_manager.cpp b/src/audio/npc_voice_manager.cpp index b1531439..cece33a8 100644 --- a/src/audio/npc_voice_manager.cpp +++ b/src/audio/npc_voice_manager.cpp @@ -20,15 +20,28 @@ bool NpcVoiceManager::initialize(pipeline::AssetManager* assets) { return false; } - // Probe for actual sound file paths (NPC sounds are in Sound\Creature\) - LOG_INFO("=== Probing for NPC voice files ==="); + // Comprehensive probe - try many path/name variations + LOG_INFO("=== Searching for NPC voice files (testing patterns) ==="); std::vector testPaths = { + // Wowhead paths "Sound\\Creature\\HumanMaleStandardNPC\\HumanMaleStandardNPCGreetings01.ogg", "Sound\\Creature\\HumanFemaleStandardNPC\\HumanFemaleStandardNPCGreeting01.ogg", - "Sound\\Creature\\DwarfMaleStandardNPC\\DwarfMaleStandardNPCGreeting01.ogg", - "Sound\\Creature\\NightElfMaleStandardNPC\\NightElfMaleStandardNPCGreeting01.ogg", - "Sound\\Creature\\OrcMaleStandardNPC\\OrcMaleStandardNPCGreeting01.ogg", - "Sound\\Creature\\TaurenFemaleStandardNPC\\TaurenFemaleStandardNPCGreeting01.ogg", + + // Try lowercase everything + "sound\\creature\\humanmalestandardnpc\\humanmalestandardnpcgreetings01.ogg", + + // Try PC voice files (player character emotes - these exist!) + "Sound\\Character\\Human\\HumanVocMaleHello01.wav", + "Sound\\Character\\Human\\HumanVocMaleHello02.wav", + "Sound\\Character\\Human\\HumanVocFemaleHello01.wav", + + // Try VO directory + "Sound\\VO\\Human\\Male\\Greeting01.wav", + "Sound\\Voice\\HumanMale\\Greeting.wav", + + // Try simpler creature paths + "Sound\\Creature\\Human\\Greeting01.ogg", + "Sound\\Creature\\Humanoid\\MaleGreeting01.ogg", }; for (const auto& path : testPaths) { bool exists = assetManager_->fileExists(path);