Jump to content



Photo
* * * * - 7 votes

The VP 10.3 beta thread


  • Please log in to reply
616 replies to this topic

#321 cyberpez

cyberpez

    Enthusiast

  • Silver Supporter
  • 394 posts

  • Flag: United States of America

  • Favorite Pinball: Back to the Future

Posted 26 May 2017 - 12:50 AM

Yeah you can use primitive spinners just like a gate. We used one in BoP and I've also got one in BH..

#322 Shockman

Shockman

    Pinball Fan

  • VIP
  • 1,717 posts
  • Location:Portland Or.

  • Flag: United States of America

  • Favorite Pinball: Star Trek

Posted 26 May 2017 - 01:51 AM

It seems to be all good, stable, and running well.

 

There is some weird things with the user interface, and I was hoping the triggers (analog buttons) could become assignable as to set a set of flippers to flip at any pull and another triggered at half press, but also to make it more like the other pinball simulations I play.

 

Someone should take a shot at having a setting option that would adjust the visible nudge to the physical nudge. The same kind of factor you just added for the flipper would work nicely if someone wanted an unrealistic visual response to a set nudge. I remind you that VP has always had this in the past (before 9).

 

The global visual response settings really makes no sense at all without some kind of simulated response as an option. The table can be made to move off screen visually, with barely a physical response, and it can be made to have a big physical response and show nothing. At least if it is not already possible, and I am missing it, please have that global visible shake that is in the global UI be settable for the table.vpx so nudging could be simulated in this simulation without the trial and error that is probably nothing but a quest for a realistic response by all trying to set it. You can save moving only the table and not, or not nearly as much, the backdrop, for 10.4 or future devs.


Edited by Shockman, 26 May 2017 - 01:55 AM.


#323 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 26 May 2017 - 09:27 AM

What is still broken, the mouse cursor not showing up thing?

 

Nope.. In the UI dialog for the keys,etc, (at least) the enable nudge & enable mouse & disable B2S checkboxes cannot be changed (e.g. if you close and re-open it's still the same state)..

And as you did the win32++ conversion i hope you can spot the error more easily. For the first two there was already a typo, but apart from that i don't see why these 3 (or more??) should not work..  :/



#324 hanzoverfist

hanzoverfist

    Enthusiast

  • VP Dev Team
  • PipPipPip
  • 406 posts

  • Flag: Canada

  • Favorite Pinball: arabian nights, congo... heck I love e'm all

Posted 26 May 2017 - 03:28 PM

Thx Toxie / Fuzzel for the great work you have both done on this release.


space-invader-wheel1_t.png


#325 playcade

playcade

    Hobbyist

  • Members
  • PipPip
  • 39 posts
  • Location:Argentina

  • Flag: Argentina

  • Favorite Pinball: Harlem Globetrotters on Tour, Black Knight, Seawitch

Posted 26 May 2017 - 06:21 PM

It is just an idea...I know nothing about coding. It would be great that when we get darker the playfield in the vpx editor to get the night mode, the b2s get darker too...wouldn´t it? ...In night mode , the backglasses are so different! look this picture: http://i.imgur.com/Y4IFMor.jpg



#326 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 26 May 2017 - 07:23 PM

yup, but this would have to be done in the B2S component, and there nobody took over development so far.. :/



#327 nFozzy

nFozzy

    Pinball Fan

  • Members
  • PipPipPipPip
  • 553 posts

  • Flag: ---------

  • Favorite Pinball: Pinbot

Posted 27 May 2017 - 12:18 AM

If you have time for a few more hacks Fuzzel. I've been working a lot on elasticity over the last couple of weeks and came up with some ideas for improvements.

 

There were 3 things I was after. I had most of them prototyped out in script to make sure the concepts did what I wanted them too. I wanted to experiment with the code more, but couldn't get it to compile in Visual Studio 14, and kind of gave up after that. Here they are:

 

1: Elasticity Falloff Threshold

 

I was pretty surprised to see how simple the elasticity falloff code was, It's one line of code that multiplies elasticity based on the speed of the ball. If elasticity falloff is just going to be an elasticity envelope like this I would like to have more control over how it goes about doing that. Having a threshold that offsets the falloff curve to the right is the simplest improvement I could think of. I made a quick script version of this kind of falloff, results were good, but it would work a lot better in code. JimmyFingers posted a similar suggestion awhile ago I think, I can't find the post atm.

 

2. Elasticity Falloff for wall objects

 

Tuning Elast. falloff on rubbers has mostly just lead to frustration for me, but I gained a new respect for it on low-elasticity objects, such as metals and targets, which are a bit too sticky at low ball speeds otherwise. Falloff on walls would be a good addition.

 

3. Flipper Elasticity modifier when at rest

 

From what I can tell from the code, Flippers are treated as static for the purposes of collision when they're in their downward position. This means the floppiness of the flipper is just a visual effect, and not abstracted in the physics.

 

There are two really common types of drains off of flipper rubber: #1: Flipper up, ball hits the flipper and bounces directly into the outlane #2: Flipper down, the ball flops not-cleanly across to the other flipper, sending it into danger. Both of these drains are capable of happening on the same machine, so the difference in elasticity needs to be pretty significant.

 

I've found you can actually update Elasticity Falloff in the script (but only for flippers) which is awesome for this, but the bounces would be better if the change was in elasticity and not elasticity falloff.

 

...

 

Let me know what you think. I may have misunderstood the code in some places. Now that physics materials makes importing and exporting physics values much easier now, it's worth a bit of extra complication to get these bounces perfect. Should be a pretty realistic goal, compared to the task of getting lagless flippers on laggy displays (yikes!).



#328 Thalamus

Thalamus

    Pinball Wizard

  • Platinum Supporter
  • 4,978 posts

  • Flag: Norway

  • Favorite Pinball: GOT, Alien Star, LOTR, TOM

Posted 27 May 2017 - 01:12 AM

Interesting stuff. But, to me it sounds like changes that can't be made on the edge of a release. Both Toxie and Fuzzel asked for time off for real life stuff. Well, I'm not the right guy to answer this, but, I would be very surprised if this is added in the close window for 10.3.


From now on. I won't help anyone here at VPF. Please ask Noah why that is.


#329 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 27 May 2017 - 06:01 AM

If you have time for a few more hacks Fuzzel. I've been working a lot on elasticity over the last couple of weeks and came up with some ideas for improvements.
 
There were 3 things I was after. I had most of them prototyped out in script to make sure the concepts did what I wanted them too. I wanted to experiment with the code more, but couldn't get it to compile in Visual Studio 14, and kind of gave up after that. Here they are:
 
1: Elasticity Falloff Threshold
 
I was pretty surprised to see how simple the elasticity falloff code was, It's one line of code that multiplies elasticity based on the speed of the ball. If elasticity falloff is just going to be an elasticity envelope like this I would like to have more control over how it goes about doing that. Having a threshold that offsets the falloff curve to the right is the simplest improvement I could think of. I made a quick script version of this kind of falloff, results were good, but it would work a lot better in code. JimmyFingers posted a similar suggestion awhile ago I think, I can't find the post atm.
 
2. Elasticity Falloff for wall objects
 
Tuning Elast. falloff on rubbers has mostly just lead to frustration for me, but I gained a new respect for it on low-elasticity objects, such as metals and targets, which are a bit too sticky at low ball speeds otherwise. Falloff on walls would be a good addition.
 
3. Flipper Elasticity modifier when at rest
 
From what I can tell from the code, Flippers are treated as static for the purposes of collision when they're in their downward position. This means the floppiness of the flipper is just a visual effect, and not abstracted in the physics.
 
There are two really common types of drains off of flipper rubber: #1: Flipper up, ball hits the flipper and bounces directly into the outlane #2: Flipper down, the ball flops not-cleanly across to the other flipper, sending it into danger. Both of these drains are capable of happening on the same machine, so the difference in elasticity needs to be pretty significant.
 
I've found you can actually update Elasticity Falloff in the script (but only for flippers) which is awesome for this, but the bounces would be better if the change was in elasticity and not elasticity falloff.
 
...
 
Let me know what you think. I may have misunderstood the code in some places. Now that physics materials makes importing and exporting physics values much easier now, it's worth a bit of extra complication to get these bounces perfect. Should be a pretty realistic goal, compared to the task of getting lagless flippers on laggy displays (yikes!).

Sorry but these changed aren't easy and we can break more than fixing or improve it. Toxie has already tweaked the physics here and there but it's not active at the moment because of some problems. So all these changes need more time you evaluate and time is really short at the moment.

#330 ClarkKent

ClarkKent

    Pinball Fan

  • Members
  • PipPipPipPip
  • 1,552 posts

  • Flag: Austria

  • Favorite Pinball: Q*Bert's Quest, Red's and Ted's Road Show, Dialed In, Big Bang Bar

Posted 27 May 2017 - 08:54 AM

adding a flipper speed factor is a really nice thing! Nevertheless setting higher values than 1.0 also seems to influence other values and not only the rotation speed of the flipper. Rubbers become less bouncy, it seems to influence the EOStorque, etc. Center shots are really better now but hitting the ball with the thicker end of the flipper finger still seems to apply less strength than set.



#331 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 27 May 2017 - 05:13 PM

Toxie changed some areas in the code I missed when adding the factor. Maybe the next update fixes this.

#332 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 27 May 2017 - 07:13 PM

rev3088 is up:

 

- fix "Enable Mouse during Play", "Enable Nudge Filter" and "Disable B2S" checkbox in the keys preferences
- add the two missing spots where anglespeed is updated with the new SpeedFactor for flippers
 



#333 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 27 May 2017 - 07:31 PM

Cool! So any other regressions in 10.3 that we need to fix before the final release can happen?



#334 rothbauerw

rothbauerw

    Enthusiast

  • Members
  • PipPipPip
  • 345 posts
  • Location:Wisconsin - USA

  • Flag: United States of America

  • Favorite Pinball: Dr Who, Tee'd Off, Jive Time

Posted 27 May 2017 - 09:58 PM

Thanks for the updates.  

 

Speedfactor is still imparting additional momentum to the ball.  

 

I'm not going to pretend I fully understand the code, however, I see a couple of things in hitflipper.cpp that I think need to be changed.  From what I can see,

  • SpeedFactor is used to calculate m_anglespeed for the flipper
  • Looking further down the file, anglespeed is set to m_anglespeed for the flipper
  • anglespeed is then used to in the calculation to determine the delta in velocity of ball to the face of the flipper
const Vertex2D dv(
      ballvx - coll.hitvel.x *anglespeed*distance,
      ballvy - coll.hitvel.y *anglespeed*distance); //delta velocity ball to face

I'm assuming this difference in velocity is used to calculate the change in velocity of the ball.  If so, in order to achieve the desired behavior, we'll need to divide anglespeed by the speedfactor for the flipper.  There are a couple of instances where this calculation is made.

 

There are other instances of anglespeed that my also have this impact, I'm just not able to fully follow the code.  If one of the devs would like to walk through it with me, please PM me.



#335 Ben Logan

Ben Logan

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 2,275 posts
  • Location:California

  • Flag: ---------

  • Favorite Pinball: System 11

Posted 27 May 2017 - 10:26 PM

Thanks for all the work going into the new speed factor setting. Much appreciated!

#336 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 28 May 2017 - 07:09 AM

Thanks for the updates.  
 
Speedfactor is still imparting additional momentum to the ball.  
 
I'm not going to pretend I fully understand the code, however, I see a couple of things in hitflipper.cpp that I think need to be changed.  From what I can see,

  • SpeedFactor is used to calculate m_anglespeed for the flipper
  • Looking further down the file, anglespeed is set to m_anglespeed for the flipper
  • anglespeed is then used to in the calculation to determine the delta in velocity of ball to the face of the flipper
const Vertex2D dv(
      ballvx - coll.hitvel.x *anglespeed*distance,
      ballvy - coll.hitvel.y *anglespeed*distance); //delta velocity ball to face
I'm assuming this difference in velocity is used to calculate the change in velocity of the ball.  If so, in order to achieve the desired behavior, we'll need to divide anglespeed by the speedfactor for the flipper.  There are a couple of instances where this calculation is made.
 
There are other instances of anglespeed that my also have this impact, I'm just not able to fully follow the code.  If one of the devs would like to walk through it with me, please PM me.
PM sent

#337 Rajo Joey

Rajo Joey

    Pinball Fan

  • Members
  • PipPipPipPip
  • 1,489 posts
  • Location:Niedersachsen

  • Flag: Germany

  • Favorite Pinball: Attack from Mars, Abra Ca Dabra and many old EM-Tables

Posted 28 May 2017 - 08:56 AM

I don't know, if there is a posting; I can't find it.

In the cameramode, I don't see the values, because they are to small.

Can I change the font and make it bigger and is it possible to rotate the settings?

 

Attached File  pf.jpg   262.83KB   23 downloads


Rajo Joey - My front-end-files; Hundreds of Audio- and Videorecordings in high quality for Playfield (4k/60FPS) and Backglass (HD), Wheels & POV-Files: The Media-Post

https://www.facebook...02697096474910/

https://www.facebook...oups/VPAddicts/

https://www.facebook...oups/VPjunkies/


#338 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 28 May 2017 - 10:02 AM

Sorry that's not possible at the moment

#339 tttttwii

tttttwii

    Enthusiast

  • Platinum Supporter
  • 300 posts

  • Flag: Germany

  • Favorite Pinball: Attack from Mars

Posted 28 May 2017 - 04:22 PM

With the latest beta I had unintended breakdowns with Champions League and Attack from Mars. The beta version before worked without any errors. After 10 Minutes of playing I observed random stutter. My cab runs in full screen mode.



#340 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 28 May 2017 - 05:20 PM

Thanks for the updates.  

 

Speedfactor is still imparting additional momentum to the ball.  

 

I'm not going to pretend I fully understand the code, however, I see a couple of things in hitflipper.cpp that I think need to be changed.  From what I can see,

  • SpeedFactor is used to calculate m_anglespeed for the flipper
  • Looking further down the file, anglespeed is set to m_anglespeed for the flipper
  • anglespeed is then used to in the calculation to determine the delta in velocity of ball to the face of the flipper
const Vertex2D dv(
      ballvx - coll.hitvel.x *anglespeed*distance,
      ballvy - coll.hitvel.y *anglespeed*distance); //delta velocity ball to face

I'm assuming this difference in velocity is used to calculate the change in velocity of the ball.  If so, in order to achieve the desired behavior, we'll need to divide anglespeed by the speedfactor for the flipper.  There are a couple of instances where this calculation is made.

 

There are other instances of anglespeed that my also have this impact, I'm just not able to fully follow the code.  If one of the devs would like to walk through it with me, please PM me.

 

The thing is that all these parameters have to be in sync, otherwise the physics engine cannot properly handle the collisions, e.g. balls can drop into/intersect elements if different parts of the engine use different variants of the 'same' parameters.