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

Ok, I didn't want to comment here anymore, but I'm tired of seeing my name used in an inappropriate way, and especially to give examples of a hypothetical reproach towards others, for having asked for something, where is the respect here?I don't want to prolong it, but in the end I think we're all in the same boat, no one is better or worse than everyone.

it is evident and very clear that shiva was making a comparison with his fpx, suggesting something in general which in my opinion is in order to improve a "something" intended for the community.

but if it's take it or leave it, well I don't know how positive it is to say that, but that's how life goes!!
sometimes we don't understand that if something is simple for one, it's not simple for another, what seems easy for one is very difficult for others..... it's not about reinventing the wheel, it's said as if it were an easy thing to do.

A piece of advice, taking a break every now and then is good for your health.....happy Burger King everyone!!:lol:
:cheers:
 
Ok, I didn't want to comment here anymore, but I'm tired of seeing my name used in an inappropriate way, and especially to give examples of a hypothetical reproach towards others, for having asked for something, where is the respect here?I don't want to prolong it, but in the end I think we're all in the same boat, no one is better or worse than everyone.

it is evident and very clear that shiva was making a comparison with his fpx, suggesting something in general which in my opinion is in order to improve a "something" intended for the community.

but if it's take it or leave it, well I don't know how positive it is to say that, but that's how life goes!!
sometimes we don't understand that if something is simple for one, it's not simple for another, what seems easy for one is very difficult for others..... it's not about reinventing the wheel, it's said as if it were an easy thing to do.

A piece of advice, taking a break every now and then is good for your health.....happy Burger King everyone!!:lol:
:cheers:

I actually did compliment you for asking for help (in another topic) on how to use this table in my comments.

Maybe it was unfair to include you (or George) otherwise at that point. Sorry about that @GeorgeH @Paolo
 
Last edited:
thank you Terry for your videos they are very useful to me today and for the future. I learned several things, but still need to put it into practice. I know that for the adjustment of fizX on my tables it could be better. I use the setup of the example which suits me, but perhaps it does not seem representative for everyone. In short, how to properly adjust to please the user and not harm the work and effort of others. because it's easy to install fizX by pasting the code but another to master it and make it a higher level table.
 
thank you Terry for your videos they are very useful to me today and for the future. I learned several things, but still need to put it into practice. I know that for the adjustment of fizX on my tables it could be better. I use the setup of the example which suits me, but perhaps it does not seem representative for everyone. In short, how to properly adjust to please the user and not harm the work and effort of others. because it's easy to install fizX by pasting the code but another to master it and make it a higher level table.

Yes, a good example of that is my two new AIO Example Table tutorial videos. By then end of the first video, everything for Fizx was added to the table. There was nothing more to add regarding FizX, and the table was playing much better, but it was not perfect.

I said at the end of that video, every table may need to be adjusted to work better WITH FizX. You don't make FizX work with the table. That's the important part, and something most FP regulars aren't used to. It's a different way of doing things, and some guys may not be open to change compared to their comfort zone. Trust me. It took me a long while to adjust and understand when doing things this way. Just ask JLou and AnonTet about me and the early days of FizX :)

Many tables are older, and weren't designed with FizX in mind. In many cases, you still need to make adjustments to the table layout, geometry, etc. You aren't "required" to add invisible Rubber posts like before, but it's very much highly recommended for rubber band ends / corners (like slingshots). As we have seen in some EM tables this is required, and I still do it on all my updates.

When you watch the second AIO Example Table tutorial video, you saw a huge difference with how the table plays compared to the first video. Nothing more was added regarding FizX. It was mostly modifying the table to play better with more realistic physics, better ball flow, etc.

Adding FizX using this example table is super easy. What you do after that is up to you, regarding how much better you want a table to play, and how it will sound. I think, as I've shown multiple times now.... the extra work is worth it.


I say again, if you guys don't understand how something works with this table or the tutorial... ASK! That's what THIS topic is here for. The reason why I get so annoyed, is because most of what I've seen in this topic is anything but that, or people aren't even reading the tutorial at all or following it, etc. If you are not asking for help (or a bug report, etc), please take everything else to another topic.
 
Last edited:
because it's easy to install fizX by pasting the code but another to master it and make it a higher level table.
it's same four us on VPX.. The problem is not to incorporate FizX, but how to build and set physics for all element ( bounciness, slope, layout etc etc ). In fact this is why building a pinball, is real professional work to have a pinball with good flow and gameplay..
Now FizX permit to play FP in kind of realistic condition ( even if it's not perfect ), at least FizX make FP playing really like a pinball.
So, welcome to the real pinball builder world, which is THE THING TO MASTER.
Easy to build, hard to master 🤘🤘
 
I have added FizX 3.2 to 2 tables now. For what it is worth, I have found it is easier to rename the flippers and then add the nudge flags before adding the main FizX code. It makes it so you don't accidentally make replacements in the main FizX code. You can also play the table after renaming the flippers to make sure you don't get any error messages.
 
I have a table where I am attempting to add PinMechSound to drop targets. There is one 3 bank drop target and 8 are singles. There is no way to combine any of the singles. I need numbers for hit and reset which is 18 numbers but the DOF numbers only go from 870 to 884. So I am 3 numbers short. What do you do when you run out of DOF numbers? I left 3 of them blank. Don't know what else to do.

Never mind. I decided to only add hit sounds for 5 of the single targets. They are constantly popping up and down and so generating sound would be excessive for each up and down movement. They have a special sound when hit. I think that adding hit sounds is enough.
 
Last edited:
3 bank targets + 8 single target = 11 coils, so no problem. What is the table?
 
I have a table where I am attempting to add PinMechSound to drop targets. There is one 3 bank drop target and 8 are singles. There is no way to combine any of the singles. I need numbers for hit and reset which is 18 numbers but the DOF numbers only go from 870 to 884. So I am 3 numbers short. What do you do when you run out of DOF numbers?

You have 14 DOF numbers just for drop targets you can use. You only need to use a DOF number for the "reset", as the drop / hit action isn't normally using a solenoid. I didn't realize the Example table was using a dof command for the hits, so I corrected this already for the next table and tutorial update.

1704316843591.png

I tend to use only one PinMechSound command for an entire bank that resets. You can use the same PinMechSound command for multiple drop target resets within the same area / region. The intent to is play sounds from the "location" of the action.

The hits don't need a DOF command, so you can use as many PinMechSound commands as needed for those. Look at Blue Vs Pink for a good reference, as it has a lot of drop targets.
 
Last edited:
3 bank targets + 8 single target = 11 coils, so no problem. What is the table?

I am working on Medieval Castle.

The mistake in the AIO messed me up. I watched the video and saw where Terry said that the drop target hits don't get DOF numbers. Terry does however say in the video that you need to list the name of an object nearby instead of the drop target name. I noticed that Drop Targets do have x and y locations listed and are named so I used the name of the drop target in the code.

The best I can figure is the 3 bank gets handled like a single drop target. I am sure a real table has 3 solenoids but I couldn't figure out any other way to code it. This is the code I used:

Sub PinMechSound_TargetR1_Hit
PinMechSound "mech_DropTarget_Down", TargetR1, 1, , , ""
End Sub

Sub PinMechSound_TargetR1_Reset
PinMechSound "mech_DropTarget_Up", TargetR1, 1, 878, 2, "droptargetreset"
End Sub

How do you add PinMechSound to tables that use your plunger code where the code slows down pull back of the plunger? I added my version of the plunger code and it sounds like a machine gun going off. It appears that the sound repeats for every step of pull back on the plunger.

The sound levels on the table are way out of balance. I may have to adjust sound levels on everything.
 
Last edited:
I am working on Medieval Castle.

...

How do you add PinMechSound to tables that use your plunger code where the code slows down pull back of the plunger? I added my version of the plunger code and it sounds like a machine gun going off. It appears that the sound repeats for every step of pull back on the plunger.

The sound levels on the table are way out of balance. I may have to adjust sound levels on everything.
As it's work via a timer, every x ms you produce the sound. 2 solutions:
- just produce the sound when you acticate the timer,
- just produce the sound when you desacticate the timer.
 
As it's work via a timer, every x ms you produce the sound. 2 solutions:
- just produce the sound when you acticate the timer,
- just produce the sound when you desacticate the timer.

I should have thought of that. I guess I am getting old.
 
I finished adding PinMechSound to Medieval Castle. I proceeded on to balancing the sound levels. I added the ability to change all the sounds used on the table by adjusting 6 parameters. I encountered a snag with the rubber hit sound used on the generic hit sounds that are included in the base FizX code. I couldn't get it to play loud enough to be able to hear it. The only way I was able to hear it at all is when I adjusted every sound on the table to 0.1 to 0.3 except the rubber hit sound which was set to 1.0. I decided this was an unacceptable approach so I increased the sound level in each of the rubber hit sound files. The adjustment was pretty conservative because there was still 6 dB of headroom left in all the audio files.

I had a similar problem with the plastic hit sound files. I adjusted sound levels on 2 of the 3 audio files for plastic. The level on the third file was OK. Adjusting the sound levels worked and I was able to adjust the other sounds in a more normal fashion.

Back when I worked on Avatar, I found that the ball rolling sounds had sound levels that did not match each other. I balanced the sound levels of all 6 files so they match each other. I ended up using the same files on Medieval Castle because the AIO only has one adjustment for all the ball rolling sounds. The sound levels need to match when you add sounds to ramps. You don't want ramps having louder sounds than the playfield and vice versa. I didn't have as much headroom left in the ball rolling sound files but there was still about 0.6 bB left before clipping starts.

For those of you having these same problems, I have attached the audio files I have edited that you can use on your tables if you choose to do so.

I found that "mech_Wall_Hit_" plays much too loud but you can adjust the "Wood_Hit_Vol" in the script to reduce the sound level. I think a level of 0.5 should work on most tables.

I noticed that the "mech_Apron_" sounds on the generic hit sounds won't play unless you rename the walls or surfaces on the front of the apron that the ball hits as Apron1, Apron2 etc. If you don't do this, the FizX code will play the sound listed on the material type pull down menu on the table object. If you want to use a certain material type on the table object but have it play a different sound, you can rename the object also to use the sound you want. I did this on one wall because I wanted the physics to use plastic but have the sound use metal so I renamed the wall Metal1.
 

Attachments

  • Audio Files.7z
    305.3 KB · Views: 2
yes Georges, we already explain it.
Also it depend of your hardware sound quality and preference..
Not a problem
 
The only thing I recall reading is the content of the last paragraph which I barely remembered.
 
Are there more Fleep recordings available than what we have in the AIO? It seems odd that we only have one spinner sound. I have noticed there is a huge difference in the two recordings of gates that we have. It makes me wander if there is larger variety of sounds available. I have noticed in videos that Data East has some fairly distinctive higher pitched flipper sounds than the lower pitched sounds that we have.
 
That's all there is currently.
 
That's all there is currently.

Where did we get the sounds that we have? I have searched the VPForums site and found some tables that use Fleep sounds but I can't find a list of them anywhere.
 
Where did we get the sounds that we have? I have searched the VPForums site and found some tables that use Fleep sounds but I can't find a list of them anywhere.

I got them from Fleep himself. All the sounds he had available publicly are included in there. They aren't going to cover every single table there is out there with their own unique mech sounds (though that is his eventual goal, but that may take years). I also renamed his sounds to start with mech_ for use on PinEvent tables, and then for this example table afterward to make it easier to differentiate them from other sounds on the table.

Please don't post additional files / mods / edits to this topic (adjusted sounds or otherwise). Create a separate topic for such things. Your sound system setup will change how these sounds will sound to you, but for other setups they are tuned the way they are for a specific reason. The FizX Ball hit sounds settings and PinMechSound commands gives everyone lots of options for changing things to better match what they prefer or need on their own setup.

The info for how FizX ball hit sounds are handled and what table items need to be named is described right in that same section in the table script.

1704993323256.png

This is an "example" template table to "start" with (or copy from, etc). It won't include everything there is out there for what everyone wants or will use. Each person needs to make their own changes for their preferences or add what they want as required for their own projects / tables.

That doesn't discount being able to use any other sounds you want with a PinMechSound command (I use scary / ambient sounds for Silent Hill with this as well). However if you want them to also use PUP SSF, then you need to convert them to WAV format with the same filenames and include them in the FP_PUP_SSF pup-pack, or whatever pup-pack you are using for your own table.
 
Last edited:
I tested FizX 3.2 on Sonic Pinball Mania on my i5 2500K PC which is 11 years old, and it ran fine on there.

I don't know what "Table Flipper Line" is... so chances are... no? :)
Huh? there is a center line also, if you have a orbit thats a boitch you can move the cenmter line over to make it easier to hit, but it throws off everything a bit.
kind of neat, i used it testing elmstreet
 
Huh? there is a center line also, if you have a orbit thats a boitch you can move the cenmter line over to make it easier to hit, but it throws off everything a bit.
kind of neat, i used it testing elmstreet

All the manual says is the the center/flipper lines help the positioning of the automated camera system.
 
All the manual says is the the center/flipper lines help the positioning of the automated camera system.
I didnt look it up but unless I was imagining it the one at the bottom move to the right and it "" leans"" that way..
Ill have to check that out.. Its going to bother me
 
@Popotte @GeorgeH @JLou5641 @AnonTet @Gimli @HZR @ravarcade @Paolo (and anyone else who may be interested)

FizX - new updates for v3.3 by JLou!
  • FizX code has been completely updated to make use of new BAM 1.5-373 features
  • this has resulted in FizX being MUCH more efficient
  • as a result, FizX uses MUCH less CPU than before, and tables should run much better on less powerful CPUs!

AIO Example Table update:

3.30.00 (Feb 2 - 2024)


- FizX code completely updated for FizX 3.30 (now requires BAM 1.5-373 or higher)
- new DEBUG options, to allow you to control what you want to see in DEBUG mode (DOF, SSF Sounds, FP Mech Sounds, Ball Rolling, FizX)
- ramp models updated with two layers to render correctly
- some fixes to prevent excessive triggering in kicker, etc
- added some missing FLEEP sounds (OGG for the table, and WAV in FP_PUP_SSF PuP-Pack)
- PinMechSound code has been updated to now have PUP SSF's Ball Hit sound volume levels match the same control behavior as FP's ball hit sounds (before, they were always at max volume level).
- tutorial updated to reflect changes to the new code and features
- added "SETTINGS THAT CAN BE CHANGED" in table script to make it clear what settings can be changed by table creators / modders / players



1706878187791.png

1706878222556.png



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


NOTE: you MUST update to the new BAM 1.5-373 to use this new FizX code!

If you have a working install of FP and BAM, then the best way to update (only BAM), is to download the new update zip file, make sure it's not blocked by Windows... and then install ONLY the new BAM.dll file to your BAM and BAM-OpenVR folders.


I will have my "FP and BAM Essentials AIO" updated to the new BAM 1.5-373 soon (I need to update my guides first).


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


AIO Example Table and Tutorial update zip:

The new updated AIO Example Table (3.30.00) and updated tutorial and files, can be downloaded on the first post of this topic!


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


UPDATING A TABLE from AIO Example code 3.00+ to 3.30

- It's easy to update to the new code
- Make a copy of your table to be updated to 3.30
- Copy the new "AIO EXAMPLE TABLE - CODE" section to your new table (replacing the previous AIO EXAMPLE TABLE - CODE)

Copy and replace your settings / changes for the following sections, only as needed:

- Ball Rolling Sound Settings
- Ball Hit Sounds : Volume Setup
- MECHANICAL SOUNDS AND FEEDBACK (if used)
- FizX Flipper Settings
- FizX General Settings
- PHYSICS XML (only what you needed to change)

The new example table uses new changes in the main FizX flipper code, and different settings in PHYSICS XML, PlayField_Friction (0.035) and Table_Slope (5.6), etc.

I would recommend using the new default settings for everything at first... and then only change what you MUST to match what you had working before (when you copy over your previous settings)

The ball should have a bit more weight to it, and not slide around as much.


Slingshots

During testing of FizX 3.3, we found there was a BAM bug (that came after 1.5-365) that prevented xBAM.Ball.HitSpeed from working correctly, so we changed that to xBAM.Ball.Speed to avoid the issue. That BAM bug was fixed in 1.5-373.

It is not a requirement to change it either way now. So either command will work fine. If in doubt, or still not sure... then use xBAM.Ball.Speed.

1706950562531.png


Rubber Band corners / ends

I'm now suggesting that you MUST add FizX invisible rubber posts at the ends and corners of FP rubber bands. FP's rubber bands do not have many polygons on the rounded areas. This does not work well with the newer FizX code from 3.2 and higher. You want to do this anyway as it will allow you to easily control their behavior and get more accurate ball bouncing. Especially on slingshots! If this is not done on some tables (like some EM tables), then the ball could endlessly bounce while the ball is cradled against a rubber band end.

1706880425303.png


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


Enjoy the new and much more efficient FizX physics v3.3, and much easier to follow DEBUG options in the AIO Example table!


(All PinEvent tables will be updated for FizX 3.3 soon!)
 
Last edited:
@Popotte @GeorgeH @JLou5641 @AnonTet @Gimli @HZR @ravarcade (and anyone else who may be interested)

FizX - new updates for v3.3!
  • FizX code has been completely updated to make use of new BAM 1.5-373 features
  • this has resulted in FizX being MUCH more efficient
  • as a result, FizX uses MUCH less CPU than before, and tables should run much better on less powerful CPUs!

AIO Example Table update:

3.30.00 (Feb 2 - 2024)


- FizX code completely updated for FizX 3.30 (now requires BAM 1.5-373 or higher)
- new DEBUG options, to allow you to control what you want to see in DEBUG mode (DOF, SSF Sounds, FP Mech Sounds, Ball Rolling, FizX)
- ramp models updated with two layers to render correctly
- some fixes to prevent excessive triggering in kicker, etc
- added some missing FLEEP sounds (OGG for the table, and WAV in FP_PUP_SSF PuP-Pack)
- PinMechSound code has been updated to now have PUP SSF's Ball Hit sound volume levels match the same control behavior as FP's ball hit sounds (before, they were always at max volume level).
- tutorial updated to reflect changes to the new code and features
- added "SETTINGS THAT CAN BE CHANGED" in table script to make it clear what settings can be changed by table creators / modders / players



View attachment 41126

View attachment 41127



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


NOTE: you MUST update to the new BAM 1.5-373 to use this new FizX code!

If you have a working install of FP and BAM, then the best way to update (only BAM), is to download the new update zip file, make sure it's not blocked by Windows... and then install ONLY the new BAM.dll file to your BAM and BAM-OpenVR folders.


I will have my "FP and BAM Essentials AIO" updated to the new BAM 1.5-373 soon (I need to update my guides first).


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


AIO Example Table and Tutorial update zip:

The new updated AIO Example Table (3.30.00) and updated tutorial and files, can be downloaded on the first post of this topic!


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


UPDATING A TABLE from AIO Example code 3.00+ to 3.30

- It's easy to update to the new code
- Make a copy of your table to be updates to 3.30
- Copy the new "AIO EXAMPLE TABLE - CODE" section to your new table (replacing the previous AIO EXAMPLE TABLE - CODE)

Copy and replace your settings / changes for the following sections, only as needed:

- Ball Rolling Sound Settings
- Ball Hit Sounds : Volume Setup
- MECHANICAL SOUNDS AND FEEDBACK (if used)
- FizX Flipper Settings
- FizX General Settings
- PHYSICS XML (only what you needed to change)

The new example table uses new changes in the main FizX flipper code, and different settings in PHYSICS XML, PlayField_Friction (0.035) and Table_Slope (5.6), etc.

I would recommend using the new default settings for everything at first... and then only change what you MUST to match what you had working before (when you copy over your previous settings)

The ball should have a bit more weight to it, and not slide around as much.


Rubber Band corners / ends

I'm now suggesting that you MUST add FizX invisible rubber posts at the ends and corners of FP rubber bands. FP's rubber bands do not have many polygons on the rounded areas. This does not work well with the newer FizX code from 3.2 and higher. You want to do this anyway as it will allow you to easily control their behavior and get more accurate ball bouncing. Especially on slingshots! If this is not done on some tables (like some EM tables), then the ball could endlessly bounce while the ball is cradled against a rubber band end.

View attachment 41130


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


Enjoy the new and much more efficient FizX physics v3.3, and much easier to follow DEBUG options in the AIO Example table!


(All PinEvent tables will be updated for FizX 3.3 soon!)
Thanks Terry ! Look forward to trying this !
 
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: Killabot has left the room.
      Back
      Top