SSF (Surround Sound Feedback) Flippers for ANY game using DOFLinx and PuP!

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #106007
    TerryRed
    Moderator
      @terryred
      MemberContributorModerator

      How to Add key/button triggered Surround Sound Feedback (SSF) Flippers to ALL programs via DOFLinx and Pinup Player:

       

      This REQUIRES DOFLinx 6.52 or higher, Pinup System installed (and Pinup Player setup), and the “FX3_PuP_SSF” PuP-Pack installed!

       

      Pinup Player:

      https://vpinball.com/VPBdownloads/pinup-system-player-and-popper-front-end-install/

      “FX3_PuP_SSF” PuP-Pack:

      https://vpinball.com/VPBdownloads/fx3-ssf-surround-sound-feedback-pup-packs/

       

      What is this?

      This is a solution to give you simple “key/button” controlled SSF Flippers with DOFLinx and PuP. All this will do is allow for your keys or buttons to trigger the left and right SSF flippers in the “FX3_PUP_SSF” PuP-Pack.

       

      What is SSF?

      Surround Sound Feedback (in pinball cabinets) is setup with speakers or exciters (transducers / shakers) underneath the playfield screen. This allows for the games “mechanical” sounds (flippers, sling,bumpers, rails, ball rolling,etc) to be played in positions that correlate to their position on the TV screen.

       

      Why would I want SSF Flippers, when I get SSF from FX3 or FP tables?

      When DOFLinx has no DOF support for a program, or a specific table (in FP), or it cannot create a link to FX3 (due to an update)… we won’t have the table trigger SSF commands.

      Adding this will give you simple SSF Flippers (but no other SSF) each time you press your flipper button / key.

       

      You have two methods to choose for using this. “Editing the DOFLinx.ini”, or “Using a SUP file”.

       

      EDITING THE DOFLinx.ini

       

      How it works:

      (First we will add this “fake” SSF flipper function to DOFLinx.ini)

      When you run FX3 or FP (or anything else you configured as wakeup programs for DOFLinx), and DOFLinx cannot establish a LINK (which only works for DOFLinx supported FP tables, or a DOFLinx.exe that works with updated FX3.exe)….

      ..then DOFLinx will timeout and fallback to it’s native “key to output” type of function (which will now include the key/button to SSF Flippers). This will stay active while the “wakeup” program is running. Once that program closes, DOFLinx goes back to sleep.

      Keep in mind this “key/button controlled SSF flipper” action will also be used even if FP or FX3 supported tables create a LINK…so you will get fake flippers even if you don’t need it in those cases (since the table controls the triggering of SSF).

       

      How to make it work:

      Add this to the bottom of your DOFLinx.ini file. (make sure you have a couple of blank lines)

      DELAY_BETWEEN_KEY_PRESS=50
      FF_PUP_INIT=FX3_PUP_SSF
      KEY_TO_PUP_EVENT=A0,E101,1,E103,1,X1LS,E101,1,E103,1,A1,E102,1,E104,1,X1RS,E102,1,E104,1

      (This can always be disabled later by commenting out the lines in DOFLinx.ini with #)

      You WILL need to change the hex key code or gamepad code (on the KEY_TO_PUPEVENT line) to what you use to control your flippers. (Hex codes are listed at the bottom of this post)

      This above entry example is configured to use Left Shift (A0), Right Shift(A1), XBOX Left Shoulder button, XBOX Right Shoulder button for the PuP-Pack’s SSF Flippers.

      The command format and parameters:

      KEY_TO_PUP_EVENT=Key/Button,(Down)DOF Trigger,(Down)Action,(Up)DOF Trigger,(Up)Action

      For KEY_TO_PUP_EVENT, the Action Value must always be 1

       

      …and that’s it! Every time DOFLinx is wakened by a program, and there is no direct DOFLinx support…your flipper key/buttons will trigger SSF Flippers from the “FX3_PuP_SSF” PuP-Pack!

       

       

      USING A SUP FILE:

      You can have your front-end of choice launch a DOFLinx SUP file (supplementary) that has the SSF commands.

       

      Why would I want this instead of adding the commands to DOFLinx.ini?

      This may be preferred if you only want the SSF Flippers for a specific program or tables…or under specific conditions depending on the game,etc.

      A DOFLinx SUP file can contain almost any configuration additions or changes to DOFLinx that you want. It can be a very handy and powerful tool.

       

      I have attached a SUP file for you guys to use! (extract it from the zip archive):

      Our SUP file is called “PuP_SSF_Flippers_SUP.ini”. It has all of the commands in the above post that is needed. You must make any of the changes needed (for whatever key/buttons you use) in that SUP file.

      You need to have your SUP file in a folder, preferably where DOFLinx is installed. So lets have it in “DirectOutput\SSF_Flippers”

       

      Setup your front-end:

      Now that you have your SUP file edited for your cabinet’s key/button setup, and it’s in a convenient folder…we need our front end to tell DOFLinx to use the SUP file BEFORE the Emulator / Table is launched. This is done by sending a message to DOFLinx with the doflinxmsg.exe program.

      For Pinup Popper, this is as simple as adding the command to our Launch script for your Emulator. We just make sure we change to our DOFLinx location, and then run the command. Add this example to the beginning of the Emulator’s Launch script (before your other entries. Change the folder location to where you put your files):

      c:
      cd c:\directoutput
      start /min "" "doflinxmsg.exe" "sup_ini=SSF_Flippers\PuP_SSF_Flippers_SUP"

       

      ….and that’s it! So every time your Emulator launches, it first will Message DOFLinx the SUP file with the SSF Flipper commands. When the Emulator starts, DOFLinx “wakes up” and will use your SUP files’s commands. Easy!

      The difference with using a SUP file, as opposed to adding commands in DOFLinx.ini, is that when you exit your Emulator…. DOFLinx will no longer use the commands from that SUP file…unless you launch that emulator and SUP file again. This allows you to have direct control over when the SSF Flippers will be used.

      Now ANY program can have SSF flippers!

      ENJOY!

      ====================================================================

      Here are some example key/button hex codes you can use for reference. The keyboard hex code for keys is from:

      https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx

      *****XBOX GAMEPAD CODES: *****

      # PLAYER 1 – GAMEPAD

      # CODE | CONTROL
      # ————————-
      # X1DU | Dpad Up
      # X1DD | Dpad Down
      # X1DL | Dpad Left
      # X1DR | Dpad Right
      # X1ST | Start
      # X1BK | Back
      # X1LT | Left Thumb
      # X1RT | Right Thumb
      # X1LS | Left Shoulder
      # X1RS | Right Shoulder
      # X1A | A button
      # X1B | B button
      # X1X | X button
      # X1Y | Y button

      # PLAYER 2 – GAMEPAD

      # CODE | CONTROL
      # ————————-
      # X2DU | Dpad Up
      # X2DD | Dpad Down
      # X2DL | Dpad Left
      # X2DR | Dpad Right
      # X2ST | Start
      # X2BK | Back
      # X2LT | Left Thumb
      # X2RT | Right Thumb
      # X2LS | Left Shoulder
      # X2RS | Right Shoulder
      # X2A | A button
      # X2B | B button
      # X2X | X button
      # X2Y | Y button

      #### KEYBOARD KEY CODES (MAME Default): ####

      # PLAYER 1

      # CODE | KEY | FUNCTION
      # ————————————–
      # 31 | 1 | P1 Start
      # 35 | 5 | P1 Insert Coin
      # A2 | Left Ctrl | P1 Button 1
      # 12 | Alt | P1 Button 2
      # 20 | Space | P1 Button 3
      # A0 | Left Shift | P1 Button 4
      # 5A | Z | P1 Button 5
      # 58 | X | P1 Button 6
      # 26 | Arrow Up | P1 Up
      # 28 | Arrow Down | P1 Down
      # 25 | Arrow Left | P1 Left
      # 26 | Arrow Right | P1 Right

      # PLAYER 2

      # CODE | KEY | FUNCTION
      # ————————————–
      # 32 | 2 | P2 Start
      # 36 | 6 | P2 Insert Coin
      # 41 | A | P2 Button 1
      # 53 | S | P2 Button 2
      # 51 | Q | P2 Button 3
      # 57 | W | P2 Button 4
      # 52 | R | P2 Up
      # 46 | F | P2 Down
      # 44 | D | P2 Left
      # 47 | G | P2 Right

      #135312
      deaks
      Participant
        @deaks

        This is awesome, i have been trying all day to get it working though :-(   Ive tried both DOFLinx ini and SUP and I can see that DOFLINX fires up PINUP in the background but no sound….

        Solved. As Doflinx will only send the triggers whilst an active process that it monitors is running (or fake emulation is turned on) testing must be done during future pinball or what ever emulator is running. For future pinball specifically it will only send the pup commands after fp link connects to something or times out… If it’s set too high… It just seems like it’s not working… So patience works and adjust the fp link value down… I have it set to 25000 now

      Viewing 2 posts - 1 through 2 (of 2 total)

      Forums are currently locked.

      ©2024 VPinBall.com

      Log in with your credentials

      Forgot your details?