BAM rotationSpeedChart

AnonTet

Pinball Master
Site Supporters
Joined
Jun 21, 2020
Messages
2,036
Solutions
1
Reaction score
1,193
Points
125
Favorite Pinball Machine
Indiana Jones
So, after what's happening at shivaflippers 3.1 and not to derail that thread let's see if we can demystify this once and for all:

The bit of code i'm referring to is this in the physics XML (THIS IS AN EXAMPLE. DON'T TAKE THIS VALUES AS IF THEY WERE SET IN STONE)
rotationSpeedChart=""{0.0,0.0},{10.0,2.0},{21.1,17.3},{30.0,50.0},{32.0,100.0}[0.0,0.0],[100.0,20.0],[101.0,100.0] (snip)

As far as I can tell (and please correct me later if i' saying something stupid) the part in bold is for OMEGA (flipper strength going up) and the rest is for RELEASE OMEGA.

How to read this:
{0.0,0.0} <- rest position
{10.0,2.0} <- at 10ms going up it'll apply 2% of the defined omega
{21.1,17.3} <- at 21ms it'll apply 17.3% of the omega
...
and so on and so forth.

Release omega follows the same pattern.

JLou5641mentioned that he uses releaseomega teh same as omega

I'm not sure how many steps one can have. As per instructions of JLou5641 in that thread I'll try to make it more readable:

Paste the the example above in your XML inside the script and then:
  • go to BAM menu in game;
  • Dev option
  • Tweak Physics
  • Flipper Tweaks
    • here you have the Rotation chart and the release chart. To add a point, tap "insert" on you keyboard, and to delete a point, just tap "del" (after selecting the ringht "idx" point) on your KB.
    • To save your setup, go to "previous menu" and press Ctrl-C to save the physics into clipboard. It will generate a xml file with the name of the table. Open it, and copy/past the charts in the script.[/quote]
Feel free to comment and post your settings.
 
Here's a quick video to demonstrate the huge difference in flippers behaviour. Mind you that this table didn't even had a physics XML. It doesn't feature shivaflippers nor code for dynamic flippers either.

I simply enabled BAM for the flippers extensions to be created and experimented. The result was the code below that is highly experimental and working on sub par physics for this table. I'll leave them here for demonstrarion purposes.

Code:
    "  <flipper rotationSpeedChart=""{0.0,0.0},{10.0,2.0},{19.3,10.0},{26.3,17.7},{32.0,25.8},{50.0,45.0},{70.0,100.0}[0.0,0.0],[10.0,2.0],[35.0,8.5],[60.0,15.0],[70.0,100.0]"" newtonDamping=""0"" releaseOmega=""40"" mass=""20150"" omega=""40"" moeMethod=""1"" " & vbcrlf &_

The result speaks for itself. Post pass, flick pass and tap pass all possible.

NOTE: a good keyboard is highly recommended for fast reaction times. Or a controller with leafswitch buttons for even a better experience.

View attachment Base Profile 2021.05.20 - 01.53.36.18.mp4

/edit
As pointed by JLou5641 below, I should reinforce the fact that this example is not using dynamic flippers full code nor shivaflippers and at least one should be added for better control and realism.
 
Last edited:
Don't forget to mention it need the dynamic flippers script to working well
 
I just added the XML file using xBAM.PhysicsXML to show it does not need anything like that to work which is even more impressive considering the ball is not even bouncing properly which is why shivaflippers or dynamic flippers should be used I suppose. I did not test yet such combinations yet though I have to say, I tend to agree you.

1st post edited
 
Apologies for the double post. I do it to quote JLou5641 speaking about flippers so all the information is in one place.

The curves reflect the real acceleration of Flipper COIL. Today, all the table in FP are with like the flipper coilramp up and coil ramp down 100% in 0s.. In real, the flipper coil take aprox. 30ms exponentially, and more to coil ramp down.. This is this mechanical effect which permite to make trick. But it need to be used with the flipper dynamic script. The only things missing in FP BAM, is the EOS, necessary to make live catch. This is were @shiva physics coul'd help for adding fake EOS.
 
Yep.

you can try this on Slamt1lt @TerryRed table , , just copy the charts info the script in the physics section ( just the charts.. so without newton damper, mass etc etc )
 
I already know it works. I just want to add everyone should try for themselves :)
 

I just created this one. It seems to work pretty well on dynamic flippers but not so well on shiva flippers:

<flipper rotationSpeedChart="{0.0,0.0},{3.6,28.0},{7.8,53.5},{11.3,68.2},{15.4,82.1},{19.3,90.9},{25.0,95.3},{29.6,90.8},{35.1,79.9},{37.7,69.1},{40.3,54.9},{45.5,26.6},{50.0,0.0}[0.0,0.0],[100.0,20.0],[101.0,100.0]"

I was going for a bell shaped curve but it is not perfect. It could use a few changes to make it a perfect bell shaped curve.

Why do you use it with dynamic flippers?
 
Dynamic flipper calculate force along the flipper no?
so without this for exemple, if you kick the ball on the tip of the flipper when you hold the flipper UP, it's like you have the full force. And with both, Dynamic flipper and charts, you can correct the shoot angle . Ex: on afm, with charts, you can't shoot the alien on the middle with the middle of the flip ( like in real ), the shoot angle is to wide and the ball go upper left of PF... but if you set the maxomega on the base of the flip to 100 in Dynamic flipper, you can do it, without give extra power to the tip of the flipper bats.
 
@GeorgeH ,

i watch the default chart value... They are wrong... In fact, his values and curve could corresponding in coil voltage with eos, not the ramp up move... But even if the voltage increase instantly in the coil, she need Time to ramp up... And like in car, need more power to start than when you roll.. So, curves is like a "bell" for coil ramp up move( and ramp down ).
 
Last edited:
Dynamic flipper calculate force along the flipper no?

Dynamic flippers produce a minimum omega value at the tip of the flipper and maximum omega value at the base of the flipper. The end user can adjust both values in the script. There is a linear progression of omega values from the tip of the flipper to the base depending on where the ball hits the flipper. Shiva flippers start with minimum omega have the max omega at the center of the flipper and have the min omega at the base of the flipper. The intent is to overcome a shortcoming of FP where center shots are difficult to make. It seems to help some.

It appears that you and @AnonTet both prefer a geometric progression on the rotation speed chart. I tried AnonTet's version on TZ but I didn't have much control over the ball. Your version works better. I took yours and added some additional points to make the curve smoother:

<flipper rotationSpeedChart="{0.0,1.0},{3.9,3.8},{7.5,9.0},{11.1,15.6},{13.8,22.0},{16.6,31.5},{18.3,39.3},{20.0,50.0},{21.1,62.0},{21.5,75.0},{22.0,100.0}[0.0,0.0],[100.0,20.0],[101.0,100.0]"

When I used it on TZ, the game play doesn't seem much different than how it plays without it. So I tired it on my modified version of Attack From Mars that has dynamic flippers. You are right. The center saucer is easier to hit with your code than without it. You have convinced me it is worth using.
 
Last edited:
i'm noob in FP, and not lot of Time, i like shivas flipper for shot aiming which is very good.
I make this setup in few minutes and don't make more elaborated test. But i think, using this with some shivas script will be the best even i don't understand it.
But what i understand and know, is how a flipper accelererate and move, and make coil ramp up and coil ramp down with chart is necesseray.. After we need a script to make the good force along flipper bats
 
@GeorgeH
I prefer what can give FP the credibility it deserves regarding physics and I'm glad you find this useful.
Regarding TZ or any other table, it's not just the aim. It's the ability to control the ball. In TZ this is particularly important by the way as the ball can be on one flipper and you may find the need to have it on the other for wathever objective an you can simply do it instead of shooting the ball up which has always the risk on ending on the same flipper next time.

It's all about ball control which is key to pinball.

@JLou5641 (and @shiva) I have to agree with shivaflippers and this works well. Actually, this can take off shivaflippers the most complicated part of it, the triggers placement in the editor. Win:Win :)
 
@GeorgeH @AnonTet , now if you are convinced, I advise you to set the flip swing to 48° in the editor like in real, instead of 54/55°... After that, the ball is harder to control by holding the flipper up.
 
If you guys are interested, I found where Rav first introduced this change. He posted the thread in Oct 2016 but edited the thread on Nov 21 to include RotationSpeedChart . I was completely befuddled by it at the time:

 
very interesting! Thanks @GeorgeH . I think all creator need to use charts. It's easy to make and work same whatever the physics setting of each table. The only thing missed, it's an eos setting or script, and a trajectory corrector script or setting along the flipper bats, like the Dynamic flipper script do for the force.
 
@GeorgeH @AnonTet , now if you are convinced, I advise you to set the flip swing to 48° in the editor like in real, instead of 54/55°... After that, the ball is harder to control by holding the flipper up.

I looked for swing angles all over the web but the consensus seems to be "align them with the inside lanes" so I very scientifically measured a top down video like some at papapinball with a protactor over the screen (seriously) and got 52º

If you say 48 I believe you have a reason for that so i'll try it. I did notice the very high angles when I started but they were a necessity at the time.

@GeorgeH
Fun fact that BoP table I used above is supposed to use physics 2.6 (in external XML). I peeked and damn... it was before this parameter or even gravity were part of the script!

Found the video from rav:
 
Last edited:
very interesting! Thanks @GeorgeH . I think all creator need to use charts. It's easy to make and work same whatever the physics setting of each table. The only thing missed, it's an eos setting or script, and a trajectory corrector script or setting along the flipper bats, like the Dynamic flipper script do for the force.
If you modify the code for shivaFlippers, so the variable coil will start at the press of a button NO MATTER the flipper angle, you will have EOS at a full flipper swing, as well as more flipper tricks available at the ark of the flipper swing.
 
@shiva
I think one of the steps to add shivaflippers to a table is that. We need to add something to keyPress and keyRelease exiting code.

I'm writing from memory here so apologies for the (lack of proper) nomenclature.
 
I will test Twilight Zone with the code a bit more. The improvement on Attack From Mars is obvious. The improvement on Twilight Zone may be a bit more subtle.

I have attached a copy of Attack From Mars where I added the rotation speed chart using the code that I posted above. The copy is identical to what I posted on this site except the rotation speed chart was added so you can compare the two if desired. Note the table requires libraries that are included in my posting of the table on this site.
 

Attachments

  • ```Attack From Mars ULTIMATE 1.02-2 Rotational Flippers.fpt
    50.4 MB · Views: 73
@AnonTet , I will measure the real angle as soon as i can. I have Williams DOT and Gottlieb Sys 3 Stargate. So the Gottlieb are more punchy and more swing than Williams ( I want to say that that FP default is not far from GOTTLIEB Sys 3 ).. and also, make trick on Gottlieb Sys 3 is very very hard compare to williams.. near impossible.

( @AnonTet @GeorgeH , About Gottlieb, is anyone interested to make Stargate for FP? I can give all the resource, I'm the Author of Stargate VPX Edition, and have the real one )
 
That's great. Would be perfect if you could get real measurements per "table" era, just saying ;)

I would love to participate in such project. I can't work with anything regarding modelling or graphics so I can only help with coding. I'm not too confident on my skills as I am really new at this too. There are coders here that could do it in at least half the time.

The problem with coders is that they are always too busy. Coders are at premium in this hobby. Hopefully someone can chime in on this otherwise and assuming time is not an issue and no one else is available, I can only say I'm willing to try. I really can't promise I can do this to the end, not without any help for sure.

I'm a great beta tester though ;)
 
@GeorgeH
AFM is improved, I agree. You'll have a pm soon :)
 
Last edited:
@GeorgeH
AFM is improved, I agree. You'll have a pm soon :)
??.

That's great. Would be perfect if you could get real measurements per "table" era, just saying ;)

I would love to participate in such project. I can't work with anything regarding modelling or graphics so I can only help with coding. I'm not too confident on my skills as I am really new at this too. There are coders here that could do it in at least half the time.

The problem with coders is that they are always too busy. Coders are at premium in this hobby. Hopefully someone can chime in on this otherwise and assuming time is not an issue and no one else is available, I can only say I'm willing to try. I really can't promise I can do this to the end, not without any help for sure.

I'm a great beta tester though ;)

I confirm that angle is about 48/50° for williams DOT
 
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: jack007 has left the room.
      Back
      Top