Experimental Applications of NES music in game

Discuss NSF files, FamiTracker, MML tools, or anything else related to NES music.

Moderator: Moderators

Post Reply
User avatar
humanthomas
Posts: 3
Joined: Mon Jul 03, 2017 10:56 am

Experimental Applications of NES music in game

Post by humanthomas »

I'd like to discuss more experimental approaches to applying music in game. I'd like to preface this discussion by stating I have very limited understanding of the technical end of NES soundengines
I've done the soundtracks for Haunted 85, 86, Khan's Scramble Port , and an XMAS music cart.All music composed in Famitracker.

The Haunted games use a version of Famitone. I was wondering if it's possible to pull off Variable Mix
Type scenarios with the Famitone engine??

Such as:.
Having all four channels containing musical data , but having some of them muted depending on where the player is on screen/or enemies present on screen.

Or the ability to have a track loop a specific section of the song until a specific cue section of the level. Just to smooth out musical transitions. Maybe it's impossible , I'm just wondering what can be pulled off or if anyone has experimented with similar ideas or concepts?

Thanks!
User avatar
mikejmoffitt
Posts: 1353
Joined: Sun May 27, 2012 8:43 pm

Re: Experimental Applications of NES music in game

Post by mikejmoffitt »

This is certainly possible, and it'd just be a matter of whether famitone supports these queues and playback commands. If it doesn't, adding them wouldn't necessarily be a difficult task for anyone familiar with famitone.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Experimental Applications of NES music in game

Post by tokumaru »

All you need is some kind of messaging system between the game engine and the sound engine. I doubt that anything currently out there already supports this level of control, but it really shouldn't be hard to implement at all if you're familiar with the internals of the sound engine. You just have to think of the types of commands you want the sound engine to support and create routines for them, routines such as "MuteChannel", or "SetLoopPoint". The game engine could call these functions directly, or put commands in a queue for the sound engine to processes when appropriate. If the game engine needs any feedback about what the sound engine is doing, you can send messages the other way too.
Post Reply