Jump to content



Photo
* * * * * 40 votes

The VP 10.7 beta thread


  • Please log in to reply
4027 replies to this topic

#621 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 13 July 2020 - 03:30 PM

Toxie, Fuzzle,
Would it be possible to have a "screen space reflections" enable/disable switch added to walls, ramps, prims?

Afaik it's not possible but Toxie has added this feature so he can give you a more detailed answer here.

Toxie, Fuzzle,
I have been playing a lot of VP recently and there is still a shortcoming that IMO, is greatly impacting game play. We have talked about this before, but I dont think it has been re-visytied recently. Could be wrong though. The issue is with "double-drops" or lack there of with drop target  banks. I now have a fully restored real Black Knight, and I have been playing Bord's BK in VP quite a bit. I have fine tuned Bords table and it plays very close to the real thing, except that a double-drop on a DT bank can not occur. Its just amazing how much longer it takes and how much harder it is to drop a 3-DT banks when double-drops are not possible. 
 
On my personal tables as well as many others from other authors tables with DT banks, we have added hacks that will allow a double-drop, and it works quite well. But ultimately I think we need have this double-drop function added to the engine if and  when its possible to do so.
 
Is it possible to take another look at this for 10.7? Or is it still very much out of scope and will have to be kicked down the road? I think if there were a list created with the most issues that truly impact gameplay, this issue would be near the very top. Just wondering if others agree.
 
Thanks :)

Can say about that until I checked the workaround

#622 wrd1972

wrd1972

    Authoring Padawan

  • Platinum Supporter
  • 2,265 posts
  • Location:Central KY. USA

  • Flag: United States of America

  • Favorite Pinball: Funhouse

Posted 13 July 2020 - 03:47 PM

Take a look at my Dr. Dude table for the DT double drop hack.

https://www.vpforums...&showfile=11886

 

Basically there is a very tiny wall between the normal sized drop targets, and if that tiny wall is hit by the ball, then the two adjacent targets get dropped together. Of course there is complex scripting to make this happen. I think ultimately if we can get the drop targets to be configured through the object properties and not through the custom complex scripting, then we can have a method of adding the tiny double drop wall, and simply linking it to the required drop targets through the object properties.

 

Just throwing that idea out there. to get the gears turning.


My VP Pincab /MAME Arcade  Specs: Dell T3400 workstation with Core2 Quad core 3.0GHZ (Q9650) CPU - 8GB of RAM - Nvidia  GTX 970

40" PF Sony gaming LED TV, Dual 21" Dell monitors in the backbox - Pinscape dual boards - Full DOF - Full MAME arcade support.


#623 Schlabber34

Schlabber34

    Enthusiast

  • Members
  • PipPipPip
  • 311 posts

  • Flag: Germany

  • Favorite Pinball: High Speed

Posted 13 July 2020 - 09:08 PM

I remember a thread about letting the ball travel through the target instead of bouncing back on contact! That would allow the ball to also hit the next target on the same shot. When bouncing back on contact, the side of the ball will never touch the neighbour target.

Makes sense to me!

Gesendet von meinem SM-G955F mit Tapatalk

#624 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 14 July 2020 - 12:25 PM

 

Toxie, Fuzzle,
Would it be possible to have a "screen space reflections" enable/disable switch added to walls, ramps, prims?

Afaik it's not possible but Toxie has added this feature so he can give you a more detailed answer here

 

Not with the current approach, no..  :/

 

To be revisited as we will touch graphics in a major fashion again. SSR was added as a very fast to render, dirty approximation, so not much to configure there at the moment.  :/


Basically there is a very tiny wall between the normal sized drop targets, and if that tiny wall is hit by the ball, then the two adjacent targets get dropped together. Of course there is complex scripting to make this happen. I think ultimately if we can get the drop targets to be configured through the object properties and not through the custom complex scripting, then we can have a method of adding the tiny double drop wall, and simply linking it to the required drop targets through the object properties.

 

Just to better understand: The double drop happens in real life because actually both are hit (as the targets are not as solid as in VP, so they can bend a bit), or because of the nearby collision the other target also "thinks" it was hit due to the impact/vibration/etc.?



#625 wrd1972

wrd1972

    Authoring Padawan

  • Platinum Supporter
  • 2,265 posts
  • Location:Central KY. USA

  • Flag: United States of America

  • Favorite Pinball: Funhouse

Posted 14 July 2020 - 02:47 PM

The real double-drop is from the ball contacting both targets in the same strike. Yes the real ones can "deflect" backwards just a bit and that certainly can contribute to the double drop scenario scenario. From what I have gathered in VP. The DT object is "hard" and produces an immediate rebound and can not technically contact an adjacent drop trarget .

 

Again throwing ideas out for consideration.

 

  • The ball needs to push through DT objects.
  • The current DT object would no longer be collidable. It would now behave as a "trigger".
  • The ball would go "through" a pair of drop target objects, and those targets (triggers) would change state and now register as being "dropped".
  • The ball would then rebound from the wall behind the targets which should be have like a rubber. One Con - Likely would not be able to have unique physics for DTs and that rubber, but IMO that's a very acceptable trade-off.
  • Once the DT is in the "dropped" state, then they would not be able to register a second time.
  • Once the bank resets, the trarget (triigers) would change state to "raised"

Also lets not forget about that stand-up targets can double-hit as well. This happens as the ball strikes the two at the same time. So if we want to try to address this. Lets consider a process that can cover stand-ups as well.

 

Obviously we should look for a backwards compatible solution if its feasible to do so. So might the above get those gears turning a bit?


My VP Pincab /MAME Arcade  Specs: Dell T3400 workstation with Core2 Quad core 3.0GHZ (Q9650) CPU - 8GB of RAM - Nvidia  GTX 970

40" PF Sony gaming LED TV, Dual 21" Dell monitors in the backbox - Pinscape dual boards - Full DOF - Full MAME arcade support.


#626 bord

bord

    Pinball Fan

  • Members
  • PipPipPipPip
  • 603 posts

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

  • Favorite Pinball: Star Gazer, Whirlwind, Frontier

Posted 14 July 2020 - 03:15 PM

Flight 2000 is a perfect example of where wrd's proposal makes sense. The right bank of drops can be swept with a single spinner shot, knocking all three down at once. The rules specifically award points for sweeping the targets this way. Currently in VP this can't be done without faking it via script.

#627 cyberpez

cyberpez

    Enthusiast

  • Silver Supporter
  • 394 posts

  • Flag: United States of America

  • Favorite Pinball: Back to the Future

Posted 14 July 2020 - 03:24 PM

I used triggers for the "kicking" targets on Haunted House and it worked well.  I used the trigger to initiate the animation of the switch, then a wall with sling back a little bit to initiate the actual switch hit.  

 

I'd think if you could have the target, whether Drop or Standup, register two hits...  One to start the process, then a second to make the actual rebound.  Maybe you could calculate ball velocity to see if the target is grazed, or actually hit?  

 

By doing two hits you could trigger multiple targets before the ball was rebounded by either.  The one downside I see to the current "wall in the middle hack" is that the two targets get trigger and drop at the same time.  In theory if the left got hit first it would start to drop just before the right target.  

 

Not sure how feasible any of that is, but just my thoughts.



#628 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 14 July 2020 - 03:46 PM

Hmm I guess the problem is the inner physics logic. A ball has a momentum that is compared against the threshold you define in the editor. If the momentum is higher than the threshold the target will fire a hit event. So if a ball hits two targets more or less the same time the momentum is slightly lower the threshold of one of the two targets and therefore only one target fires a hit event.
Playing with the threshold won't work here because a target shouldn't fire a hit event as soon as the ball just touches the target.
Attaching multiple targets to each other could be a solutions to identify this special situation but I don't have a clue how to wire that in the editor.

Edited by fuzzel, 14 July 2020 - 03:47 PM.


#629 wrd1972

wrd1972

    Authoring Padawan

  • Platinum Supporter
  • 2,265 posts
  • Location:Central KY. USA

  • Flag: United States of America

  • Favorite Pinball: Funhouse

Posted 14 July 2020 - 04:18 PM

Good discussion guys. :)

 

Fuzzle,

Can the DT object be given the logic of a trigger like I mentioned above? then two DTs could be tagged as the ball goes through them.


My VP Pincab /MAME Arcade  Specs: Dell T3400 workstation with Core2 Quad core 3.0GHZ (Q9650) CPU - 8GB of RAM - Nvidia  GTX 970

40" PF Sony gaming LED TV, Dual 21" Dell monitors in the backbox - Pinscape dual boards - Full DOF - Full MAME arcade support.


#630 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 14 July 2020 - 06:00 PM

Good discussion guys. :)
 
Fuzzle,
Can the DT object be given the logic of a trigger like I mentioned above? then two DTs could be tagged as the ball goes through them.

Sure it's doable but not the best way in my opinion. We would then have something that we already have but with less scripting. If we try to solve that problem then I would like to do it in the best possible way.
We now have a much better UI control of the properties so I'm thinking of adding a list to the DTs properties where you can attach other elements to it.
If the ball hits more than one of these elements in the list a special threshold handling must be used to fire multiple hit events.
But this is just a rough idea. I don't know if that will really work.

#631 ronaldvg

ronaldvg

    Enthusiast

  • Members
  • PipPipPip
  • 104 posts

  • Flag: Netherlands

  • Favorite Pinball: VP

Posted 14 July 2020 - 09:49 PM

Wanted to report a little bug (I think). With 10.7 I cannot seem to even load the Mustang tables from Stern. Tried the Pro and the LE. Loading indicator goes about 10 percent and then VPX quits.

 

With 10.6 loading and playing the table(s) is no problem.



#632 BorgDog

BorgDog

    We come in peace.. shoot to kill.. shoot to kill.

  • Members
  • PipPipPipPip
  • 1,427 posts
  • Location:Leavenworth, WA

  • Flag: United States of America

  • Favorite Pinball: Alien Star, TNA



Posted 15 July 2020 - 01:27 AM

 

Good discussion guys. :)
 
Fuzzle,
Can the DT object be given the logic of a trigger like I mentioned above? then two DTs could be tagged as the ball goes through them.

Sure it's doable but not the best way in my opinion. We would then have something that we already have but with less scripting. If we try to solve that problem then I would like to do it in the best possible way.
We now have a much better UI control of the properties so I'm thinking of adding a list to the DTs properties where you can attach other elements to it.
If the ball hits more than one of these elements in the list a special threshold handling must be used to fire multiple hit events.
But this is just a rough idea. I don't know if that will really work.

 

 

here is the beginning of the discussion in the 10.5 beta thread about this same issue if anyone wants to re-hash history, not much has changed.  https://www.vpforums...=13#entry400667



#633 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 15 July 2020 - 06:35 AM

Wanted to report a little bug (I think). With 10.7 I cannot seem to even load the Mustang tables from Stern. Tried the Pro and the LE. Loading indicator goes about 10 percent and then VPX quits.

 

With 10.6 loading and playing the table(s) is no problem.

This has already been fixed internally, next beta will fix it for you then, thanks!



#634 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 15 July 2020 - 06:45 AM

 

Good discussion guys. :)
 
Fuzzle,
Can the DT object be given the logic of a trigger like I mentioned above? then two DTs could be tagged as the ball goes through them.

Sure it's doable but not the best way in my opinion. We would then have something that we already have but with less scripting. If we try to solve that problem then I would like to do it in the best possible way.
We now have a much better UI control of the properties so I'm thinking of adding a list to the DTs properties where you can attach other elements to it.
If the ball hits more than one of these elements in the list a special threshold handling must be used to fire multiple hit events.
But this is just a rough idea. I don't know if that will really work.

 

I wonder if we'd need even a special physics element for this? So instead of having separate targets, have a special target bank?

Then the collision handling could be specialized depending on the state of the contained drop targets.



#635 ronaldvg

ronaldvg

    Enthusiast

  • Members
  • PipPipPip
  • 104 posts

  • Flag: Netherlands

  • Favorite Pinball: VP

Posted 15 July 2020 - 08:12 AM

 

Wanted to report a little bug (I think). With 10.7 I cannot seem to even load the Mustang tables from Stern. Tried the Pro and the LE. Loading indicator goes about 10 percent and then VPX quits.

 

With 10.6 loading and playing the table(s) is no problem.

This has already been fixed internally, next beta will fix it for you then, thanks!

 

Thank you for the reply and double thank you for all the work you and the others put into VPX and the creation of all the great tables. Hobby would not be the same without you all.



#636 wrd1972

wrd1972

    Authoring Padawan

  • Platinum Supporter
  • 2,265 posts
  • Location:Central KY. USA

  • Flag: United States of America

  • Favorite Pinball: Funhouse

Posted 15 July 2020 - 02:48 PM

 

 

Good discussion guys. :)
 
Fuzzle,
Can the DT object be given the logic of a trigger like I mentioned above? then two DTs could be tagged as the ball goes through them.

Sure it's doable but not the best way in my opinion. We would then have something that we already have but with less scripting. If we try to solve that problem then I would like to do it in the best possible way.
We now have a much better UI control of the properties so I'm thinking of adding a list to the DTs properties where you can attach other elements to it.
If the ball hits more than one of these elements in the list a special threshold handling must be used to fire multiple hit events.
But this is just a rough idea. I don't know if that will really work.

 

I wonder if we'd need even a special physics element for this? So instead of having separate targets, have a special target bank?

Then the collision handling could be specialized depending on the state of the contained drop targets.

 

Seems logical to me considering the unique needs that drops require. As I mentioned earlier, double hits can occur with stand-up targets as well. Might consider a special bank that might be switchable between drops and stand-ups. Then there is the question of making it backwards compatible with existing tables. From reading the tea leaves here, that seems to be difficult task. Hope I am wrong. However if it requires revising current table, I will certainly do mine and I imagine that most other authors would do so as well.

 

I would be very eager to help out with this in any way I can. :)


My VP Pincab /MAME Arcade  Specs: Dell T3400 workstation with Core2 Quad core 3.0GHZ (Q9650) CPU - 8GB of RAM - Nvidia  GTX 970

40" PF Sony gaming LED TV, Dual 21" Dell monitors in the backbox - Pinscape dual boards - Full DOF - Full MAME arcade support.


#637 GInsonic

GInsonic

    Enthusiast

  • Platinum Supporter
  • 188 posts

  • Flag: Austria

  • Favorite Pinball: Addams Family

Posted 15 July 2020 - 03:37 PM

Not sure if it's a bug per se, but it has happened on my machine with the 10.7 betas, and doesn't appear to have happened on 10.6 final.  I switched between the two .exe's to test.

 

When I exit out of a table, I sometimes, but not always, get a message saying "Table 'XXXX' has changed.  Do you want to save changes before exiting?"

 

It then gives Yes, No, or Cancel options.  But I have not made any changes, just played the table.

 

This occurs when using a front end or directly through VPX.

 

Same here, it randomly appears when exiting tables out of play mode (-play -exit)!



#638 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 15 July 2020 - 04:59 PM

 

 

Good discussion guys. :)
 
Fuzzle,
Can the DT object be given the logic of a trigger like I mentioned above? then two DTs could be tagged as the ball goes through them.

Sure it's doable but not the best way in my opinion. We would then have something that we already have but with less scripting. If we try to solve that problem then I would like to do it in the best possible way.
We now have a much better UI control of the properties so I'm thinking of adding a list to the DTs properties where you can attach other elements to it.
If the ball hits more than one of these elements in the list a special threshold handling must be used to fire multiple hit events.
But this is just a rough idea. I don't know if that will really work.
 
I wonder if we'd need even a special physics element for this? So instead of having separate targets, have a special target bank?
Then the collision handling could be specialized depending on the state of the contained drop targets.
 
Seems logical to me considering the unique needs that drops require. As I mentioned earlier, double hits can occur with stand-up targets as well. Might consider a special bank that might be switchable between drops and stand-ups. Then there is the question of making it backwards compatible with existing tables. From reading the tea leaves here, that seems to be difficult task. Hope I am wrong. However if it requires revising current table, I will certainly do mine and I imagine that most other authors would do so as well.
 
I would be very eager to help out with this in any way I can. :)
I think I found the reason why a double hit doesn't work. It seems that the collision detection only handles the first hit and ignores nearby elements. I thought the engine could handle multiple parallel hits but it's not the case or it's a bug somewhere.
I'm not 100% sure as the physics engine is really a mess but I'll will dig deeper :)

#639 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 15 July 2020 - 06:51 PM

It's not really a bug (depending on how you look at it ;)). The physics engine can only handle non-deformable objects. So it will take only the closest hit found and then bounce off of that object 'immediately'.

So unless one would have the case where the ball hits multiple objects at the exact(!) same point in time, it would always just report that one hit anyway.

And then after that, it all depends if nearby objects can be hit by the bounced off ball. (i.e. unlikely for a common target bank)

 

One could think of various hacks though (making the physics engine even more whacky ;)), especially when wanting to have backwards compatibility

a) if a hit with a drop target was found, handle that one as usual, BUT also follow the route the ball would have taken (within a length depending on velocity) and check all other drop targets on the table for a collision

b) similar to a), but instead of checking for collisions, have a user defined radius where nearby drop targets within that radius get automatically triggered, too

 

I think b) sounds good and would be not-that-super-whacky IMHO



#640 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 15 July 2020 - 09:08 PM

rev4224 is up:

 

- cleanup internal resource handling

- cleanup script files

- fix recent table file menu issue

- fix loading tables with image names > 128 length like Black Belt
 


Edited by fuzzel, 15 July 2020 - 09:10 PM.