QuoteI can't think of a way to fade a single sound in without blocking the script.
How about something like:
Player enters screen 1
PlayAmbientSound(1, 1, 0, 0, 0); // play in channel 1 ambient sound 1 at volume 0
Repeatedly_execute(_always)
SetChannelVolume(1, 5000 / player.y); // find some algorithm so that at the mountain top the volume is 100 and at the bottom it's 0
QuoteHow can I get a non-interrupting (when changing rooms) looping sound without using the Ambient-Sound function
Set the game.ambient_sounds_persist variable to 1.