FizX Tweaker

GeorgeH

Flippered Out
Site Supporters
Joined
May 3, 2016
Messages
2,698
Solutions
6
Reaction score
2,154
Points
145
Favorite Pinball Machine
Attack From Mars
Are you guys going to add Gimli's FizX Tweaker to the FizX script or will it have to be added separately? If you guys new fields, the tweaker would have to be changed.
 
I think both will be possible in the future. I'm focus on FizX and i never tested Gimli's FizX Tweaker yet... But when it will be the time, it should be added in FizX for those who want add all of this by the easy way ( calling script )
 
so could you have fizx, to be added directly to the script, in an easier way?

now, since in this my exposition here I did not get the desired result, so I see that in fizx apart from the flippers physics, now we also need to make changes to the bumpers and sling, and maybe something else, I also read something related to the textures in tga, so I have a few questions if you let me.
 
FizX is in two parts... One parts in script, on in editor. I you want only the flipper part of FizX, you only need to copy flipper script on your table
 
if you download fizX v109 from the Mega WIP folder:

from top until it says: END OF DYNAMIC FLIPPER V2
 
Yep!! that's what she said..
You looking at my pizza, no man I am eating garlic bread?
We should have gotten Chinese...it always tastes better re-heated.
 
Ok I apologize.... if I still insist on trying to understand what is composed "fizx", or what distinguishes it, actually since in a sense we are talking about physics about flippers and xml, I'm a little interested, after all it's me too a small author with a small dream in the drawer to see other new tables "recreations" perhaps with all the perspectives that Bam offers, and not just to see "re-mod" tables with these new things.

Io be honest I didn't want to interact in the dedicated thread just for fear of not being understood, and maybe (I add) to be banned, if somehow I talk too much about "fizx".

Actually my question above was addressed to @GeorgeH...... maybe I misunderstood his statement, I thought that together with gimli he was working on a version of "fizx" that could be added directly to the script.....ehhh perhaps it is better that I go down from the clouds, because reading for what I can understand HERE between some considerations of shiva and the respective answers, well it is very clear to me that maybe "fizx" is not compatible with me and my pc above all.

A clarification, that I had not yet seen what it is about "fizx" in script in the mega link, but I only read the description, which actually made me take a step back, so for too much curiosity I tried the version that @shiva posted "FizX-Template-v109-mODIFIED".....tried it,and well....there is a lot to say and above all to ask.

I take a cue from this sentence,just to be more understandable to all/you.
Trying this in latest version of fpx, but having a problem with the ball passing through the flippers, or just jumping over them. Especially at the tips. lowering the xml to 296 greatly helped, despite the fact I have a i7 and a 2070 super gpu

Is there code I am missing? Something that needs to be inserted in the main engine code. This should be a straight copy and paste, but appears I am missing something or there was missing instruction. I tried adding in a zip file for the models because I though it was the ball, but there wasn't a zip file for your demo either, but still no luck.

This version should work, I stripped out all my custom code for flippers/bounce etc so I am at a loss where the problem is. is it a setting? A XML (which I used part of now) or some code I missed? You mentioned this problem before, so where would I need to change and see

Ok just to fiddle a bit, I tried to enter only the "code part" that could relate to the flippers "left-right" and the bounce control,in my table....and as I expected, I got the first error about "PFTrajectoryCorrection" because it must also be inserted on other parts of the script, and certainly other types of codes as well......@shiva I wonder if maybe you made the same mistake as me too? but compared to you I am a donkey.....seriously mine was just a test, but I failed, from the description it is clear that "fizx" has many new elements inside it, and it takes a powerful pc, since it requires many official parameters to work at its best (something of it,was already my thoughts, at the time of df2) ... type,

fps="592" threaded="1">
mass="8000" gravity="9800" (not everyone likes)
ball 8K
modified slingshot and bumpers.......etc etc


from top until it says: END OF DYNAMIC FLIPPER V2
I do not understand???

So....my questions
but in "fizx" there is the DYNAMIC FLIPPER V2 As I remember?
for an low PC, what is it possible not to add? better (sorry if I say it) eliminate?
It is possible to have a version without;
ball 8K.....because I think a powerful PC takes us
slingshot and bumpers not modified.........,for the simple fact that I can solve as a table builder
FizX Core what is?
It is possible to have a demo only?

Sorry again if I bored
 
I can answer some questions.

"but in "fizx" there is the DYNAMIC FLIPPER V2 As I remember?"

Not as you remember, no. FizX was modeled from nFozzy physics techniques used on VPX and adapted to FP. It's completely different than the older Dynamic Flippers.

It's 3 sections of code. The FizX DFV2 section (flippers), the DPV1 section (rubbers and drop targets), and the GAMEPLAY options (FizX settings for the table). There's also the xml section which is specifically setup for FizX and "must" be used as a starting point. Only change things like kickers, vuks, etc in the xml as needed (and the table editor to match if needed). Changing everything in the xml "will" break things.

FizX is "not" to be mixed with other physics code.

"for an low PC, what is it possible not to add? better (sorry if I say it) eliminate?"

It's possible that a low end PC may struggle to run a table with FizX smoothly. This is also the case with VPX tables that use nFozzy physics.

"It is possible to have a version without;
ball 8K.....because I think a powerful PC takes us"

It is possible, but it will depend on how the table's FizX settings (if they were created to specifically work with 8K ball model, and fps=592 in xml, etc).

"slingshot and bumpers not modified.........,for the simple fact that I can solve as a table builder"

I know you can, but I'm not sure if its a simple as not including the DFv1 section or not.

"It is possible to have a demo only?"

Try my Sonic Pinball Mania, Blue vs Pink BAM, and Junkyard Cats BAM newest releases (to see of your PC can run them). They all have FizX added directly to the table script in one section.

Here is a beta version of the v109 template table example that I updated to include everything in one section of code. That may make things a bit easier to understand. Keep in mind this is not final, and some things may change. This is intended to copy and paste FizX code from as an example to start with.... but its not considered a "good" table example. I just copied the settings I'm using from Jaws BBE... so they may not be ideal for this template example.
 

Attachments

  • FizX-Template-v109c - TerryRed example (FizX code in table).zip
    25.6 MB · Views: 11
Last edited:
I don't understand why you'd use shiva modified version and unfortunately it is modified for the worse.

I mentioned on that thread regarding mass and gravity, at the moment, it's not a matter of taste. it's fundamental to FizX and all other settings depend on that and fps so unless you find and xml that works for physics with lower mass/gravity, I at least, can't help you.

This is also something I don't understand. FizX is done with another perspective that gets away from older ways of doing things, especially in the XML department. Change that will most likely break it. And if you consider FizX was designed to work around legacy FP physics engine problems you're heading for trouble.

When I wrote " END OF DYNAMIC FLIPPER V2" I was literal. From top of the code to that specific line so you open the vbs and search for it. That's the flippers part of physics only.

Below that line is for dynamic physics v1. It deals with rubbers and targets for better bounce.
 
@Paolo

If you go to the following thread, download the file from mega. In the zip file, there is a folder named "FizX Librairies ( Core Script )" that has version 104 in a library file. I suggest you start with this first.


Add the following code to the script but be sure that you change "SwingAngle" so it has the same swing angle as the flippers on the table objects in the editor. The swing angle on each flipper has to be set to the same swing angle. I would suggest you start off by adding it to a table with only 2 flippers. The library file has code for drop targets and rubbers but it should be ignored if you don't have it set up. This should accomplish what you want.

Code:
ExecuteGlobal LoadExternalScript ("fpFizX.fpl\script_FizXv104.vbs") 'FizX v104 Core for testing

'ExecuteGlobal LoadExternalScript ("fpFizX.fpl\script_FizXv104.tga") 'FizX v104 Core from FizX Library Official Release.

' ==========================================================================================
' ================================= GAMEPLAY OPTION ========================================


SlingShotThreshold = 3                        ' Slingshot threshold sensivity. Make the Slingshot pulse with more or less sensitive depend ball speed

' ------------------------------ General Flipper Physics Setup -------------------------------------

'Flipper Rotation Speed Charts setting:

RampUpLinearity = 2            'linearity factor for CoilRampUp power. 1 = Linear RampUp, 2 = Exponential RampUp, 4 = Quadratic RampUp etc etc...

CoilRampUp = 10                'how much degrees the coil need to reach 100% of is power
CoilRampStartPower = 15        'Percentage of minimal Omega from full Omega for Start Power Coil

EOSTorque = 0.3                     ' Default: 0.3                    ' Percentage from max omega for EOS Angle - Defaut : 0.25 ( 25% of defined Omega)
EOSAngle  = 5                        ' Default: 5                    ' End Of Stroke angle ( angle range where the Omega is reduced )
    
BaseOmega = 65                        ' Default: 55                    ' Flipper Strength near the base
TipOmega = 25                        ' Default: 25                    ' Flipper's strength at the tip
    
LiveCatchDifficulty = 1            ' Default: 1                    '  Set Difficulty for Livecatch. 1 = Easy; 10 = Hard
    
SwingAngle = 48                    ' Must be set like flippers swing angle in FP editor.

BouncingFallOffThreshold = 1000            ' Default: 1000   ' Ball Speed in mm/s above which FlipperBouncingFallOff is fully apply. Below this speed, FlipperBouncingFallOff is applied proportionally depend ball speed
FlipperBouncingCoeff = 0.85                ' Default: 0.85    ' Bounce Coefficient for Flipper rubber. Higher has more bounce effect
FlipperBouncingFallOff = 0.5                ' Default: 0.5        ' Bouncing Falloff factor. Reduce BouncingCoeff depending of ball speed
                                                    '               0 = same bouncing coeff on every hit ::: 0.5 = 50% less when ball speed reach the BouncingFallOffThreshold or over. ::: 1 = 100% ball speed is absorb when ball velocity reach BouncingFallOffThreshold or over
FlipperStaticFriction = 0.75                ' Default: 0.75    ' Flipper friction applied to static ball
FlipperKineticFriction = 0.4                ' Default: 0.6     ' Flipper friction applied to moving ball

OverspinDeleter = 0                            ' absorbe the ball spining torq when hit flipper if Enable. This prevent from strange ball acceleration along the flipper or to strong "retro" effect when ball have too much spin.
                                                    ' Controling the ball is also easier, that also mean the ball roll less from one flipper to other after fall from slingshot lane

BallKineticSensivity = 1                    ' If ball "Stop" on Flipper, increase it. Tips : More Engine FPS or bigger Flipper or less FlipperBouncing Coeff, more you need BallKineticSensivity

' ------------------------ Lower Left and Right Flipper-------------------------------------

AimRange = 5                        ' Can be compare to a FOV for FPS or Race Sim. It make the range of your shot more close from offset point to tip with negative value, or more wide with positive value ( In degrees ). Note offset is like origin and tip is the max range which moving. Ex: -10° mean shot from base not change, shot from middle take -5°, and tip -10°
AimRangeOffset = 0                ' Origine Contact Point on Flipper where Aimrange begin.
AimOrientation = 0                ' set up your aiming Orientation from default. Ex: -10° mean all shot are closer from 10°


' ------------------------ Left Flipper 2 --------------------------------------------------

AimRangeLF2 = 5                        ' Can be compare to a FOV for FPS or Race Sim. It make the range of your shot more close from offset point to tip with negative value, or more wide with positive value ( In degrees ). Note offset is like origin and tip is the max range which moving. Ex: -10° mean shot from base not change, shot from middle take -5°, and tip -10°
AimRangeOffsetLF2 = 0                ' Origine Contact Point on Flipper where Aimrange begin.
AimOrientationLF2 = 0                ' set up your aiming Orientation from default. Ex: -10° mean all shot are closer from 10°

' ------------------------ Left Flipper 3 --------------------------------------------------

AimRangeLF3 = 5                        ' Can be compare to a FOV for FPS or Race Sim. It make the range of your shot more close from offset point to tip with negative value, or more wide with positive value ( In degrees ). Note offset is like origin and tip is the max range which moving. Ex: -10° mean shot from base not change, shot from middle take -5°, and tip -10°
AimRangeOffsetLF3 = 0                ' Origine Contact Point on Flipper where Aimrange begin.
AimOrientationLF3 = 0                ' set up your aiming Orientation from default. Ex: -10° mean all shot are closer from 10°

' ------------------------ Right Flipper 2 --------------------------------------------------

AimRangeRF2 = 5                        ' Can be compare to a FOV for FPS or Race Sim. It make the range of your shot more close from offset point to tip with negative value, or more wide with positive value ( In degrees ). Note offset is like origin and tip is the max range which moving. Ex: -10° mean shot from base not change, shot from middle take -5°, and tip -10°
AimRangeOffsetRF2 = 0                ' Origine Contact Point on Flipper where Aimrange begin.
AimOrientationRF2 = 0                ' set up your aiming Orientation from default. Ex: -10° mean all shot are closer from 10°

' ------------------------ Right Flipper 3 --------------------------------------------------

AimRangeRF3 = 5                        ' Can be compare to a FOV for FPS or Race Sim. It make the range of your shot more close from offset point to tip with negative value, or more wide with positive value ( In degrees ). Note offset is like origin and tip is the max range which moving. Ex: -10° mean shot from base not change, shot from middle take -5°, and tip -10°
AimRangeOffsetRF3 = 0                ' Origine Contact Point on Flipper where Aimrange begin.
AimOrientationRF3 = 0                ' set up your aiming Orientation from default. Ex: -10° mean all shot are closer from 10°
 
I can answer some questions.
Thanks for your answer, now it's clearer to me, so fizx is based on the vpx physics of this "nFozzy" .... so it's a vp guy, like Jp-salas?
Is it similar to the one proposed by Jp-salas? he is now updating his tables to his physics, I remember when I contacted him to ask him if it was possible to adapt the physics of vpx (as I mean it) on fp, but he had replied that it was impossible, so I guess JLou5641 conceived everything this starting from the physics of vpx and adapting it to fp, obviously thanks to bam and the basics of df1.

I'm trying your demo,I will tell some of my impressions,or feedback as they say

I don't understand why you'd use shiva modified version and unfortunately it is modified for the worse.
The demo was readily available, without mega links, so to speak.....

I didn't say i want to use it(I still have to understand), just tried it to see fizx in action, i didn't think shiva's modification (in xml i think only) would penalize it....and this is what "you fizx guys "should stimulate and teach and tell everyone, that fizx works well "only" with a certain xml.....btw i always thought that in the days of df2.....

This is also something I don't understand. FizX is done with another perspective that gets away from older ways of doing things, especially in the XML department. Change that will most likely break it. And if you consider FizX was designed to work around legacy FP physics engine problems you're heading for trouble.
precisely .... as I say above
I have no problems using its xml, indeed I will tell you the truth I started just when I tried the demo of shiva I took the xml which I think is the one for fizx and tried it on Batman I noticed some slight improvements(with sdf2), even with only 6000 gravity I did not insert the rotationSpeedChart part, because as soon as I tried it the ball sinks into the flippers

I suggest you start with this first.
Ok I'll try this too (in link mega),and I'll try to add it to my batman, hoping that I don't get missing code errors in some "sub" type
FuturePinball_BeginPlay()
ResetForNewGame()
CreateNewBall()
ect ect
 
Last edited:
Thanks for your answer, now it's clearer to me, so fizx is based on the vpx physics of this "nFozzy" .... so it's a vp guy, like Jp-salas?
Is it similar to the one proposed by Jp-salas? he is now updating his tables to his physics, I remember when I contacted him to ask him if it was possible to adapt the physics of vpx (as I mean it) on fp, but he had replied that it was impossible, so I guess JLou5641 conceived everything this starting from the physics of vpx and adapting it to fp, obviously thanks to bam and the basics of df1.

I'm trying your demo,I will tell some of my impressions,or feedback as they say

No, JPSalas uses his own physics settings (that are more native VPX physics) that are different than nFozzy. The main reason he doesn't use nFozzy is because you need a faster computer to run it, and he wants to use physics that will run on an older PC. nFozzy would still be considered more realistic, etc.

I had JPSalas test Sonic Pinball Mania with FizX (the older code), and he loved it. He only made a couple of changes to the FizX settings for his own preference.

The "Template" demo table I uploaded, was only meant to copy and paste from. It's not a good "playing" demo, as I just formatted it for copy and paste and used the settings I had (at that time) for Jaws BBE. So its better to play one of my released tables with FizX like Sonic, Blue vs Pink, JYC.... or AnonTet's Cosmic Princess.

There will be a more "official" good playing demo table down the line at some point.... but my own table releases or Cosmic Princess are good tables to try, if your Pc can run them.

We are also making some changes to the code as we speak so there may be some changes soon'ish once more testing is done.
 
Last edited:
Thanks for your answer, now it's clearer to me, so fizx is based on the vpx physics of this "nFozzy" .... so it's a vp guy, like Jp-salas?
nope.. Nfozzy is nothing from JpSalas... Jpsalas use native things from Vpx.

Nfozzy today is elaborating by Rothbaueur, benji..

I was one of the tester of Theater of Magic 2.0 from Fleep team ( who made the vpw team later ) with new verison of nfozzy
 
Thanks for your answer, now it's clearer to me, so fizx is based on the vpx physics of this "nFozzy" .... so it's a vp guy, like Jp-salas?
Is it similar to the one proposed by Jp-salas? he is now updating his tables to his physics, I remember when I contacted him to ask him if it was possible to adapt the physics of vpx (as I mean it) on fp, but he had replied that it was impossible, so I guess JLou5641 conceived everything this starting from the physics of vpx and adapting it to fp, obviously thanks to bam and the basics of df1.

I'm trying your demo,I will tell some of my impressions,or feedback as they say


The demo was readily available, without mega links, so to speak.....

I didn't say i want to use it(I still have to understand), just tried it to see fizx in action, i didn't think shiva's modification (in xml i think only) would penalize it....and this is what "you fizx guys "should stimulate and teach and tell everyone, that fizx works well "only" with a certain xml.....btw i always thought that in the days of df2.....


precisely .... as I say above
I have no problems using its xml, indeed I will tell you the truth I started just when I tried the demo of shiva I took the xml which I think is the one for fizx and tried it on Batman I noticed some slight improvements(with sdf2), even with only 6000 gravity I did not insert the rotationSpeedChart part, because as soon as I tried it the ball sinks into the flippers


Ok I'll try this too (in link mega),and I'll try to add it to my batman, hoping that I don't get missing code errors in some "sub" type
FuturePinball_BeginPlay()
ResetForNewGame()
CreateNewBall()
ect ect

If you are still using your old PC, you will probably have some difficulty having the FPS set at 592. You may need to use 296 which will change the physics.
 
also, @Paolo, if you need only the flipper parts, even an old PC it will work as good as dfv1 for performance.... And for those who want only that, i'm thinking about a FizX-Lite version.
 
@Paolo Also the code has been designed to use the 8 K poly ball which also requires more PC resources. You save it like we did the old Zed physics zip files. You can try the 1 K ball which requires fewer resources but plays faster so you may need to reduce the table slope to compensate.
 
@Paolo Also the code has been designed to use the 8 K poly ball which also requires more PC resources. You save it like we did the old Zed physics zip files. You can try the 1 K ball which requires fewer resources but plays faster so you may need to reduce the table slope to compensate.
hq ball interact with xml... particulary all friction value.. not the code himself.
I will explain why ;)
 
hq ball interact with xml... particulary all friction value.. not the code himself.
I will explain why ;)

We will either need to have a new XML for the 1 K ball or tell us how to change the old one.

Bear in mind you suggested I change the playfield mat static friction from 0.02 to 0.2 and playfield mat kinetic friction from 0.02 to 0.03 so I could increase the table slope from 5.4 to 6.3.
 
Try my Sonic Pinball Mania, Blue vs Pink BAM
Ok,I tried SPM, it seems to work for me, now I don't know if the execution of the table is optimal in terms of gameplay speed
I know this table is well loaded with stuff and maybe it needs a more powerful pc,
my pc is still the same
Cattura99.JPG
I just improved the graphics card, now i have a gt 710 2g,so I leave it to you to make a judgment, then we will talk about fizx

FizX_Profile = 1
View attachment spmprofile1.mp4

FizX_Profile = 2

View attachment spmprofile2.mp4

now I don't know what changes in physics between these two profiles, apart from this explanation in terms of FPS,but you know it, so evaluate the two videos yourself.

I also tried Blue vs Pink, it works fine, but I still can't give feedback about fizx until I try it in my table (see below) as soon as I complete my comments.
 
Well.....accepting @GeorgeH 's suggestion, I downloaded the mega link, there is a lot of stuff (as I noticed for sonic) but I have tried the FizX-Template-v104, now....re-reading george's suggestion above, he talks to me about a library, at that time I didn't understand very well, in fact the code he proposed seemed quite short to me, noting only the fizx options, and this code ExecuteGlobal LoadExternalScript.....so
I understood that the rest of fizx, i.e. fizx itself is enclosed in that library right?

So nothing easier for me, i just have to change this, running the library is done right?
ExecuteGlobal LoadExternalScript ("fpFizX.fpl\script_FizXv104.tga") 'FizX v104 Core from FizX Library Official Release.
My two cents (who said this? however it is a memory I have) is a compliment to you @JLou5641
putting everything that absolutely must not be touched in a library is a genius, just a suggestion if the table with the library could be executed here
Cattura1.JPG
would be much better, like the dll of bam.


Now I don't know what happens because with the 2demo I have no problem I have inserted FizX-Template-v104 on batman together with the library, it seems to work but I immediately noticed two strange things ..... the plugenkicker does not have enough strength to kick the first one ball, and the plunger the same, so I had to change to xml ... the other one I get this error

View attachment [bat-script.mp4


View attachment batman-testfizx.mp4


I have to use the manual roller to put the ball in the playfield, although I have changed the values of the kicker and plunger to have more strength, and it is still not enough I still have to increase it, so I wonder if I alter these values it happens that I penalize fizx?
 
Last edited:
@Paolo

It's hard to judge based on the videos (framerate of video,etc). Note, that these tables are using the older FizX code, so there are differences compared to the newest code (which has changed A LOT in the last 2 days).

If you change a FizX Profile (I'm the only one using this right now), you MUST also change the fps= in the xml section to match (296 or 592). If you don't do this then the table will play "wrong", or odd things may happen. Using 592 fps needs a faster computer!

I will tell you, that FizX is modeled more after how VP and real tables play. So it will play VERY different than what you are used to with FP!

Flippers are no longer "full power" each time you press a flipper button. How long you hold down the flipper buttons determines how much power the flipper will get. That means post passing is no longer achieved with a quick flick. It needs to be timed. This however means that now you have more flipper trick than can be done that you couldn't do before with older "dynamic flippers".

The shot angles will be different as well. No longer are there very wide shots from the flipper towards the end of the flipper. Now it's much more realistic (and the new code allows this to be much better than it was on the older code)

In this video below, I explain FizX a lot. It has subtitles, but I don't know if it translates to your language for you.

 
If you change a FizX Profile (I'm the only one using this right now), you MUST also change the fps= in the xml section to match (296 or 592). If you don't do this then the table will play "wrong", or odd things may happen. Using 592 fps needs a faster computer!
Opssss.......so i actually always played 296? I thought that command would automatically change the fps.....so i have to enter manually, no problem
read above please if you want
 
Opssss.......so i actually always played 296? I thought that command would automatically change the fps.....so i have to enter manually, no problem
read above please if you want

Unfortunately, we can't change the xml fps elsewhere in the table script. It has to be set only in the xml section (because of how BAM needs to read it and make those changes on startup). If we could change it elsewhere (using a variable), then changing the profiles would make thing much simpler, but we can't. :)
 
If it is in bam menu as something you can change on the fly, you can do it in the script. I actually don't remember though
 
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: hellrzr2k1 has left the room.
      Back
      Top