Try using $game_system.bgm_play(bgm)
where bgm holds three values:
bgm.file
bgm.volume
bgm.pitch
So, if you do this:
mybgm.name = "040-Dungeon06"
mybgm.volume = 80
mybgm.pitch = 100
$game_system.bgm_play(mybgm)
It should play a creepy dungeon piece at 80% volume.
You may want to include an error-check routine just to make sure the file does exist, else a crash could occur for a non-existant file.
You can also try
$game_system.bgm_memorize
to memorize the music from the field map before you change it, and then use
to restore same said music.
There are similar files for background SFX:
$game_system.bgs_memorize
$game_system.bgs_restore
Just in case, whatcha lookin' to script? Mebby it's available.