Continue from http://www.gamesas.com/topic/1513034-wipz-dynamic-music-system/
Dynamic Music System
Create your playlists!
UPDATE IN PROGRESS...
Ok, in Oblivion we have 4 playlists in the Data/Music folder: "Explore", "Public", "Dungeon" and "Battle" (let's forget about "Special"...).
Want more playlists? Then install Enhanced Music Control, which gives you the tools to create more.
But tools do nothing if nobody uses them, so that's the reason Better Music System was born: give you more playlists, played automatically, based on the current location or event.
Now, BMS is a great mod. I used it for years and it do his work perfectly, but it has some limitations:
1) What if you need to create a new playlist to play in (example) Chorrol? No problem: create an esp, make it dependant on BMS, edit the code to add your playlist, make it play in Chorrol, save everything. Repeat for every new playlist. Not easy if you don't know how CS works.
2) What about customizing battle music? No. Only one battle playlist exists.
3) And what if another mod want to play a playlist for any reason? No way. BMS rule the music land, and music will only follow its rules, hardcoded in the esp.
So, this is the reason I'm working on a new mod called Dynamic Music System, which aim to replace Better Music System, but solve these 3 problems.
1) You need a new playlist? Add the playlist path and the rules to play it in a file ini. Save. you can create new playlist easily, with these conditions:
- Quest: The playlist will play while this is THE active quest (the one you choose and made active). Configurable for single stages.
- Menu: The playlist will play while in this menu (loading, lockpick game, inventory, ... )
- Location: The playlist will play if the character is in this Cell, Region or Worldspace. Can check all cell families or location types (forts, caves, ...)
- Cell owner: The playlist will play if the cell is owned by the given actor or faction.
- Weather: The playlist will play if the current weather is the one you defined, or if (whatever weather) it's raining, snowing, etc...
- Time of day: The playlist will play at Night, Day, Dusk or Dawn.
- Condition: The playlist will play when your custom condition is true.
2) Battle musics! You can have many!
- Actor specific: If you're fighting a specific actor a custom battle music will play.
- Actor condition: Run a condition on the enemy. If true, play a custom battle music. (Example: a battle music for when fighting the guards!)
- Actor level: this battle music is played if the enemy level is x levels higher/lower than the player!
- From the playlist: the playlists from point (1) can define a battle playlist too, played if no actor specific/condition battle playlist is chosen!
- Or, if none of the above is true, play the default, boring, battle playlist.
- Ignore: the actor who meet any of the above can be totally ignored and won't even trigger the battle music!
NOTE: The playlists from point (1), or from the override can decide to disable or silence the battle music, or block some battle playlists!
Example: A playlist could block any other battle music. Whatever happens, it will only play the battle music defined in the playlist (if any, else the battle music stay quiet!). Another playlist could decide to only block the Actor level and default battle playlists, but allow specific actor playlists...
3) BMS take control of the music system. DMS do the same, but... you can take control of DMS itself!
Just dispatch an event to override the current playlist with your one! When you're done, dispatch another event to release the override.
While overridden, DMS will keep playing your playlist and won't change it, whatever happens (unless the player reload).
You can even dispatch an event to totally disable DMS and enable it later.
A priority system let you decide the priority for any playlist, so playlist with higher priority will be checked first, and playlist below a min priority will be totally ignored. A separated priority system apply to the battle musics.
What do you think about DMS? Do you have any opinion, idea or complain?