I've investigated this for a few days, but still have no clue about how to replace the music with my own pieces when selecting a culture in the CC menu (i.e., the CharacterCreationScreen).
What I've found so far:
I also can't find anything about how the Global Sound Parameter MissionCulture works. I followed the API call chain, but it only leads me to the interop API.
Could anyone please shed some lights on how to, if ever possible, replace this music, or where the global sound parameter is defined and controlled?
What I've found so far:
- When selecting a culture, it calls SoundManager.SetGlobalParameter("MissionCulture", <an enum value>) to switch between the built-in musics
- The musics are actually "sounds", which are packed into Sounds/PC/MainBank.assets.bank. I didn't find anything about them in music/soundtrack.xml.
- The music seems to be played as scene ambient or something. Strong reverb FX is added to it, making it more immersive and sounding like from far distance.
- The C# code only plays another layer of character_creation_ambient sound. I couldn't find the code that plays the music (or any sound event that controls it)
- I added breakpoints to all the suspicious methods in SoundManager, hoping to capture the playing action. I had no luck.
- That why I presume the music is not played by C# code, but rather embedded in the scene. The only scene loaded by CharacterCreationScreen is character_menu_new. But I couldn't find any entity inside that controls sound playing.
I also can't find anything about how the Global Sound Parameter MissionCulture works. I followed the API call chain, but it only leads me to the interop API.
Could anyone please shed some lights on how to, if ever possible, replace this music, or where the global sound parameter is defined and controlled?