Help BAM FP Accessing FMod's extended options?

Future Pinball

Wecoc

Pinball Wizard
Joined
Dec 7, 2021
Messages
82
Reaction score
126
Points
40
Favorite Pinball Machine
Cirqus Voltaire
Now that WScript is enabled in FP (see BAM Update v1.5-365), I was wondering if it would be possible to access fmod.dll via script to expand sound functionalities in FP. I don't know how these calls work yet, but I've thought some cases where accessing that library could be helpful.

FP's functions "PlaySound" and "PlayMusic" are limited compared to VP's equivalents. FMod has some options like PlaySoundEx that would be handy. For example, if we want to apply panning (and therefore dynamic sounds) in vanilla FP we need two sounds (one for each side). For tables with a big collection of sounds that can be pretty heavy, but FMod has internal panning that could be accessed and solve that issue. There are also some effects like echoing that could be cool to have, maybe in addition to the current script for SSF (Surround Sound Feedback).

In relation to other FP sound extensions, Ball rolling may not require its own music channel anymore, and maybe some hit sounds could be modified with more precise variations, with functions like "SetSurround".

Finally, this would allow some interesting complex music mechanisms like iMuse, which are currently impossible in FP.

Many people may not know what iMuse is, so I'll try to explain it briefly. Most games use music in a very simple way. In Pokemon, you're in a route and the route song is playing. Then you go to the town and the town song starts. Then you enter a Pokecenter and the Pokecenter song starts, and so on. Monkey Island 2 doesn't work that way. Each song has spots, and there are song bridges. When you enter a new zone, the music of the last one continues until the next spot, then the correct bridge plays into a new song. This way, the music is never interrupted and flows between zones seamlessly. To translate it into Pinball terms, this could be used between modes; normal, multi-ball, jackpot mode, mission, extra-ball, etc. and would make for a more involved music. The "music break" on drain would also be more effective. FMod has "GetPosition" and "SetPosition" options that make that possible.

Another complex music mechanism would be separating instruments into different music channels and changing their volume dynamically based on something related to the table, or things like that. Imagine a drum set that keeps adding things the more drop targets you hit. FP's default functions fall short with this kind of stuff.
 

Maybe this can spark some idea.
 
Looks like everything is already invented :lol:
Any hint on how to do the proper calls? I'm pretty lost here. I'm guessing you would need a handler that would be used to call the sound functions.

Code:
Dim iCom : Set iCom = xBAM.Get("iCom")
Dim FMod : Set FMod = iCom.CreateObject( "WScript.Shell" )
' ???????

(Btw, the attached PDF in that topic appears to be broken)
 
Yes, the .pdf is broken. I tried to play with FMOD, but due to lack of time, I gave up.
 
Well, if you guys can't figure it out, I can't for sure :)
tagging @JLou5641 for the pdf thing.
 
Hello @Wecoc and @Popotte ,

Here the help file ;)

@Wecoc , you have come at the right time, because you tell me you are unstopable in script :lol:.. I've been thinking about contacting you about this for a few days... If it's possible to have more sound possibilities in script ;)

The dll is on the FuturePinball folder. Not in the BAM/Plugin Folder.
I wonder if we can use newer FMOD.dll


Greetings,
JLou
 

Attachments

  • FMOD.7z
    400.8 KB · Views: 7
I asked Rav about FMOD and a more recent version about Newton Dynamics updates a very long time ago (before I I wrote that post I linked above). Answer was no but hey, things change and I don't know his reasons so... Feel free to try :)
 
I downloaded version 3.7.4.0 of fmod.dll from this site and tried it. For what it is worth, I didn't get any errors when I played one table and the sound played. Then I tried one that said it was a 64 bit version and as expected FP would not start. You can also find downloads of something called fmodstudio.dll. I don't know if this helps.

 
Last edited:
I would advise from downloading dll from sites that are not the original source.

Anyway, I think the problem is not using another dll is using it's new capabilities.
 
But the 3.7.4.0 is the original FP's version
 
General chit-chat
Help Users
You can interact with the ChatGPT Bot in any Chat Room and there is a dedicated room. The command is /ai followed by a space and then your ? or inquiry.
ie: /ai What is a EM Pinball Machine?
  • No one is chatting at the moment.
  • Chat Bot Mibs Chat Bot Mibs:
    DrazeScythe has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Torntabittz has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    brotherboard has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    GARRY040 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    BL2K has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Chilldog has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    rodneyfitz has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    ace19120 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Tomasaco has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Greek_Jedi has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Beermano has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    02browns has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    nitram1864 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    aeponce has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    JEAN LUC has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    lorenzom has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    maxangelo19 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Dragonslapper has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    royaljet has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Tyfox has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Goldtopboy has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    slick267 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    dabreeze has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Spike has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Tofa has left the room.
      Chat Bot Mibs Chat Bot Mibs: Tofa has left the room.
      Back
      Top