A World of Warcraft addon which plays new music content triggered by a zone change throughout the world of Azeroth and Outland. The archive of music would reside in the addons folder. The addon knows to look here for a specific audio file when a zone change event is triggered.
The addon does not replace the existing wow background music but adds to the list of music that can be played for a specific trigger. In this case, a zone change.
e.g. When a player enters Stormwind, the wow UI may trigger track 1, track 2, or track 3. The addon would intercept this call and add the possibility of playback track 4, track 5, or track 6 - in random order. The tracks 4,5 and 6 are the ones I would compose.
Now, whether or not you can intercept this call I don't know. I'm new to creating addons for wow, and new to lua in general.
Here's a few ideas if the call can't be intercepted.
1. Disable all zone music but enable playback of new content in the addon folder. (Least desirable).
2. Stop playing current zone music and play new content. Based on a random function when triggering zone change. Random is whether or not the new content is played when the event is triggered. This is dependent on being able to stop the current zone music and start a new track.
Ideally, I'd like to create content for each zone in Azeroth and Outland. Realistically, I'm going to start by creating content for high traffic zones and zones where seasoned players spend most of their time. So this may be Hellfire Peninsula, PVP zones in Outland, and high level instances. If you have suggestions let me know!
I can also see the potential for creating content for the Draenai and Blood Elf starting zones as many seasoned players are re-rolling characters and going through these new zones.
Assume music is mp3 format.
1. I'm imagining a /console command to bring up Muzak addon customization UI. Ideally, integration with Titan would ideal to alleviate the use of console commands - but I prefer to have the least amount of dependencies as possible.
2. When a track is being played the meta information of that track would be displayed in a chat window. Having this display on-screen in a moveable pane would be awesome. But not a must-have.
So that's my thought. I'm looking for any information or pitfalls I may want to consider in assembling this mod. Is it possible to do this within wow (post TBC), or using the WowAce libraries? Has someone already created this, am I wasting my time?
To get a feel for my audio here's a few links from some recent work.
I started making an addon to do this a while ago, but I lost interest, plus I'm pants at coding. Then I found the addon 'Soundtrack' which you mentioned.
It does the job, though it's a bit messy. I mean you can get a song playing for tons of events with that addon, which is a bit extreme in my opinion. Plus you have to place blank music files in your Data folder to override the default ones. I'd have though a simple "StopMusic(), PlayMusic(yourSong)" would have been fine on zone change. Though Soundtrack's method would allow for replacing battleground victory tunes with a short file using PlaySound(yourSound) or whatever (FFVII victory on a BG win!) Though I don't think it does at the moment.
It would be sweet if people could distribute soundtrack packages (if a little large, and probably end up with copyrighted music) since picking your own songs for each and every zone sounds pretty painful.
Wow interesting, so there are lots of on-going projects to achieve customize zone (and event) BGMs already. I agree, if these projects grow, we'll need "packages", to simplify choosing our own BGMs. It will promote as well the indie-music creators.
Something kind of cool would be to have the addon be set up so that you can import/export themes, such as the aforementioned FFVII theme, or a DDR theme, or a movie soundtrack theme, etc etc. So when you get tired of one, instead of going through the backdoor and renaming all of the music files and copying and pasting and all that mess, you could just change a checkmark in-game.