All In One Example Table - FizX, FLEEP, Ball Rolling, PUP SSF, DOF - Easy to add!

Looking at it again.... it's correct. :)


Code:
Sub OnPreHitFlipperSettings(FlipperExt)
    if BallSpeed_Volume_enabled = true then
        If FlipperExt.hit = True and FlipperExt.BallVSpeed > 100 then PinMechSound ("mech_Flipper_Rubber_" &Int(Rnd*7)+1), "ball", (( xBAM.Ball.HitSpeed / 1000 ) * BallSpeed_Volume_Amplifier) * Flipper_Hit_Vol, , , "flipper rubber"
    else
        If FlipperExt.hit = True and FlipperExt.BallVSpeed > 100 then PinMechSound ("mech_Flipper_Rubber_" &Int(Rnd*7)+1), "ball", Flipper_Hit_Vol, , , "flipper rubber"
    end if
    If FlipperExt.hit = True then FizXRubberHitEvent = 0 Else FizXRubberHitEvent = 1 : End If
End Sub


If BallSpeed_Volume_enabled = true then the pinmechsound command outputs its volume based on the speed of the ball

ELSE

the next command will output the same thing if BallSpeed_Volume_enabled is NOT true, only it will output the normal volume level, instead of changing the volume based on the speed of the ball.

then the last command is issued because it's the same no matter what BallSpeed_Volume_enabled is set to

If FlipperExt.hit = True then FizXRubberHitEvent = 0 Else FizXRubberHitEvent = 1 : End If

I used this code on FizX lite although I had to convert the PinMechSound code to PlaySound.
 
OK, I was misled by the fact that ballspeed_volume_enable is a Constant and set to True. I'm pretty sure that even if you can go to the script and change this, who the hell will ever want to do that? :D

Note to self, don't update tables between job waits (I never learn :D )
 
OK, I was misled by the fact that ballspeed_volume_enable is a Constant and set to True. I'm pretty sure that even if you can go to the script and change this, who the hell will ever want to do that? :D

Note to self, don't update tables between job waits (I never learn :D )

For some people's setups, they may have a harder time hearing the sounds... so they may want all sounds to output at the same consistent level. It's also handy for testing, so you can force all sounds to output at a higher volume level for all hits, etc.
 
For some people's setups, they may have a harder time hearing the sounds... so they may want all sounds to output at the same consistent level. It's also handy for testing, so you can force all sounds to output at a higher volume level for all hits, etc.

That is why I left it in the FizX Lite code.
 
I stand corrected.
 
Table update:

1.7 (Feb 28 - 2023)

- added a FizX fix as recommended by JLou for "FizXBallHitSpeed = xBAM.ball.Speed" (was placed in the wrong Sub)

Tutorial update:

- added (to the written tutorial) a link to JLou's guidelines for what each FizX setting does


Both can be found on the first post of this topic.
 
Is the "Sci-Fi Classic" table that you updated available for download anywhere?
 
Is the "Sci-Fi Classic" table that you updated available for download anywhere?

No, because it's not completed. I would be doing much more to it for other updates at some point.
 
Another thing to also consider..... Captive Balls.

If a table has numerous Captive Balls that always exists and may be hidden... then these will also use up the ball rolling sound channel for FP Sounds. PUP SSF is more flexible as it can track multiple balls and play their sound on multiple channels.

Again, most tables will use this Ball Rolling Sound code just fine... but there's bound to be the odd exception that will not allow it to work correctly, or may even cause an issue. This is why I added the option to not enable Ball Rolling Sounds in the Settings section, just in case.... and the player can turn them off as well if they don't actually like them (and save a bit more cpu usage as well).
slamtlts tables he uses transparent objects over other items similar to fizx
ive spent a lot of time on one and seem to get one thing workibg that f**** up somthing else.
iss there anything thatlists the soubds and channels ther are using or a script to output a log file?
 
slamtlts tables he uses transparent objects over other items similar to fizx
ive spent a lot of time on one and seem to get one thing workibg that f**** up somthing else.
iss there anything thatlists the soubds and channels ther are using or a script to output a log file?

You would to enable debugging in the script..... but.... that won't do any good if he didn't add any Debug commands to the table.... which I'm pretty sure he never did.
 
OK, I was misled by the fact that ballspeed_volume_enable is a Constant and set to True. I'm pretty sure that even if you can go to the script and change this, who the hell will ever want to do that? :D

Note to self, don't update tables between job waits (I never learn :D )
someone who is hard of hearing may want to
 
The AIO Example Table and Tutorial has been updated for the all new FizX v3.0!

FizX V3 for FP.png


FizX Physics System for Future Pinball - new updates for v3.0

  • new! Flipper Nudging! (when a ball rolls on a flipper, rapidly tap the opposite flipper to nudge ball back down the flipper)
  • independent settings for each flipper
  • new coil system based on the new custom BAM FSRC
  • new EOS system which keeps flipper momentum on the first stroke. Huge improvement on backhand shots and post passes!
  • new bouncing setting which is easier to understand and set
  • new Flipper Omega and Mass System
  • new ball vs ball physics setting. Ball hitting other ball has more bounce
  • new PHYSICS XML settings
  • new Ball Spinning Momemtum absorption and bounce deflect on hit for Flipper and Rubber
  • Tap pass and Tap shots are much easier
  • table slope and other new settings are now defined in FizX General Settings

To put it simply... all the quirks from FizX v2.0 have been fixed. Flippers have full power now when they should. Post passing, and backhands are easy and correct now.

Flipper Nudging is a real thing now, as long as the ball isn't rolling too fast on the flipper (the nudge strength can be adjusted in FizX settings).





BAM 1.5-363 or higher is REQUIRED for FizX v3.0 and the AIO Example table code

Note: that the AIO Example table code and FizX v3.0 are NOT the same as FizX Lite. Their code is not interchangeable!






CHANGELOG

3.00.27 (June 14 - 2023)

- updated table for all new FizX v3.0 code and features
- added flipper nudge commands for each Flipper's .SolenoidOn command
- updated FizX Tweaker Tool for new FizX settings
- updated FizX Tweaker Tool to remove all "Save to fpRAM" and "Load from fpRAM" options
- added triggers to ramps and code examples to change ball rolling sounds when on ramps
- the tutorial is now in a PDF and docx file!


New FizX Flipper settings:

1686771454547.png



New FizX General Settings:

1686771490128.png




Some of the differences in the new AIO Example table and FizX v3.0 compared to older versions (and the video tutorial):
  • you now MUST set the table slope in in FizX General Settings (this overrides the slope settings in the table editor!)
  • you do not need to set the flipper swing angle in FizX settings
  • you need to add extra commands for flipper nudge
  • FizX Flipper settings and General settings have changed
  • FizX Tweaker Tool no longer has "Save to fpRAM" or "Load from fpRAM" options





How to update a table with older AIO Example code to the new AIO Example table code with FizX v3.0:

- backup your current table (that was updated with previous AIO Example code)
- completely replace the entire section of the AIO Example code on your table with the new AIO Example code

1686771635133.png

1686771686928.png



- copy over your old rubber settings from FizX General Settings

1686771757986.png


- if needed, update the Table Slope in FizX General Settings to match your old table. This is REQUIRED, as its overrides the slope setting in the FP Editor. Try starting with 5.3 and see if you even need to change this at all (5.3 is the default)

1686772333782.png


- do NOT copy over your old XML section!
- only change settings in the XML for items that were needed to be updated for your table such as:

- bumper impulse
- autoplunger mass / force
- kicker impulse
- vukImpulse
- plunger mass / force
- spindisk settings
- spinner settings
- emkicker settings
- varitarget settings
- nudge impulse

DO NOT change the xml_fps or fps! Keep them both at 512!

1686771573712.png


- replace the PinMechSound commands section with your old table's PinMechSound commands / section

1686772167021.png



- add the new flipper nudge commands for each flipper's .SolenoidOn command

1686772465272.png


- for Flipper settings, try the default settings first! They should be good for most tables. Use the AIO Example table's flipper settings in the FP Editor on your table to start with
- the FizX flipper settings are mostly new, so try adjusting them (if needed) and see how they work for you

The new Flipper Nudging feature will only work when a ball is rolling on a flipper! If the ball rolls at a slow enough speed, then rapidly tap the opposite flipper to lightly nudge the ball back down the flipper.

1686772752125.png


- new Ball Rolling Subs can be used with new ramp triggers to change the ball rolling sound when the ball is on a ramp
- this works fine for FP sounds, (PUP SSF can't change to a different ball rolling sound)
- the mech_ballroll_plastic sound included with the new AIO Example table is louder than previous versions


1686773018278.png


Save the table, close FP and reload the table and test!


Some of the things you'll notice with FizX v3.0:

- post passing is much stronger and easier to make happen (you no longer need to drop the flipper far down)
- backhands are MUCH stronger now (you no longer need to drop the flipper far down)
- backhands can easily shoot a ball up a ramp and around orbits on some tables
- ball should not be able to pass through a flipper, even if forced to do so
- ball shouldn't stick to the flipper at random times
- cpu usage should be much more efficient
- table slope may need to be less than it was before (5.3 is the default)
- overall ball behavior is much better, and flippers are just so much stronger


If you ever get an xbam.table error.... this is usually because the Table Name in the FP editor may conflict with a variable used in the table code. To resolve this issue, changing the Table Name (in the FP Editor) to something unique should fix the problem.


Good Luck!

Make sure you follow the new Tutorial from start to finish for new table updates, or if having problems!

The new AIO Example table zip file (that also has the new Tutorial pdf / docx) is on the first post of this topic.
 
Last edited:
Just saying but this is in a the 7th page of a thread that started with fizX v2... This will be a mess soon with all the posts in the middle.

Better lock this thread and move the above and 1st post to a new one?
 
Thanks a lot guys... the transition to FizX3 worked well for Cristmas pinball.
 
This video will briefly go through the new FizX 3.0 settings and changes, the new AIO Example table and Tutorial, and it will showcase FizX 3.0 in action with amazing new table updates I have coming out very soon!

You can jump directly to the parts of the video you want to watch with the Chapters below:

** AIO Example Table and FizX v3.0 **

intro - 00:00
AIO Example Table Tutorial update - 03:01
FizX v3.0 new settings - 09:33
AIO Example Table quick demo - 17:25
Ball Rolling sounds on ramps - 18:24
Tweaker Tool - 19:44
Flipper Nudge demo - 20:27
Table Slope - 22:22

** New Table updates and FizX v3.0 Showcase **

Indiana Jones - Fortune and Glory Edition - 25:33
RoboCop - Dead or Alive Edition - 41:59
Blade Runner - Replicant Edition - 50:18

** Misc **

PinEvent Lite - 1:01:02
Closing thoughts - 1:02:47



 
whats the error?> did you update bam,
The error is shown in upper left of his pic.
Untitled.png

Newest BAM version can be found here..
 
- if needed, update the Table Slope in FizX General Settings to match your old table. This is REQUIRED, as its overrides the slope setting in the FP Editor. Try starting with 5.3 and see if you even need to change this at all (5.3 is the default)

1686772333782.png



- do NOT copy over your old XML section!
- only change settings in the XML for items that were needed to be updated for your table such as:

- bumper impulse
- autoplunger mass / force
- kicker impulse
- vukImpulse
- plunger mass / force
- spindisk settings
- spinner settings
- emkicker settings
- varitarget settings
- nudge impulse

Hey Terry, concerning Table Slope, if I change it to lets say 5 instead of 5.3 in the FizX General Settings, do I need to change the physics slope values in the XML section as well? In the AIO, the values are mirrored in both sections.
 
Hey Terry, concerning Table Slope, if I change it to lets say 5 instead of 5.3 in the FizX General Settings, do I need to change the physics slope values in the XML section as well? In the AIO, the values are mirrored in both sections.

The Table_Slope parameter in the script overrides the settings in the XML and in the FP editor.

You might want to raise the table slope. I just posted FizX Lite 3.0 and JLou changed the slope default to 6.3.
 
Actually, slope can be used from anything between 5 and 7 really well. The only problem I found with this was on tables that use FP default ramps. Even then, you can play with flipper strength and how fast the coils ramp up the power.

Older tables, lower slope, more modern, higher slope. No need to be bound on default slope of 5.3 anymore.

/edit
you can go lower than 5 ;)
 
Last edited:
Just change the slope setting as I show in FizX 3.0 General Settings. Nothing else for slope

How much you want will vary... as no two tables will be the same.

I don't debate what is right or wrong for slope or other physics settings.... as some people will argue all day over something that comes down to personal preferences / feel of the table for them. (and I get tired of that real quick)

When I update / tune a table, I do it for how I prefer it, and it requires the whole table being tuned for that. Many tables can't just have a couple of settings changed (for preference) and then hope the rest of the table will still play as intended / correctly.

So again, I tune tables how I want. Others can change it for themselves and share that info in general fizx topics, etc. Just don't flood my individual table upload support topics with personnel preferences of physics. It's kind of annoying to see people do that after I've already spent weeks / months working on a table and uploaded it as I intended it to play (unless of course its a problem / bug). This is just a general statement... not aimed at anyone, etc. (and I need sleep)
 
Last edited:
I seem to get a lot of rotational spin on the balls. Is this normal? Is there a setting to dial this back?
 
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: dizzeee has left the room.
      Back
      Top