Jump to content

Bally Nudgy


Recommended Posts

Several years ago I went to the Chicago Pinball Expo and saw a 1947 Bally Nudgy table that was really well restored.  The cool thing about the table is that it has no flippers but rather has a handle on the right side that can be rotated forwards and backwards to nudge the entire playfield forward and the back again.  Here's a video of me playing a ball on it from the expo.

 

 

I was talking with Bord about making this table but it will present quite a few challenges.  As best I can tell VP's native nudging has two components to it, a physical nudge and a visual nudge.  The visual nudge is not smooth enough to mimic this table and I'm not sure if the physical aspect could be used?

 

One option would be to make all of the table elements primitives, that way they can be moved in the y axis when a nudge is implemented.  Unfortunately when you do that it seems that the physical primitive stays in the same x/y location and only the visual moves. 

 

I made a series of five primitives in a row and stacked them up with only the bottom one visible and collidable.  I then set the elasticity of the primitives to be greater with each one as it moves to the top and then the topmost primitive had a slightly lower elasticity than the one below it.  This way the ball will rebound greater as it hits a primitive further up the table but the top one has a slight drop off since it can't move any higher.  I also made a timer loop that will cycle the primitives to animate them moving forward and backwards.   The collidablities were also cycled with the visibility.

 

Here's a proof of concept video of the process.

 

 

 

If anyone has ideas for making this better or has other ideas of how to do this, I'd love to hear them.

Link to comment
Share on other sites

  • Content Provider

Hm.  My first thought was to have everything actually change Ypos on a timer, but I don't know if that'd work with the bumpers and non-primitives.  But you could set up the "velocity" of the ball to be reversed and multiplied on hit by the falloff, elasticity, and a sine value (or a rough equivalent) with the positive peak of the multiplier at 1/4 of the movement, no multiplier at 1/2 (the dropoff pint you described), and a divider/reduction as it moves back.  Hope I described that well enough.

Link to comment
Share on other sites

Good idea!  I hadn’t thought about decreasing the elasticity if the primitive was moving away from the ball.   There’s no way to do that with my method since I don’t think that elasticity can be changed via script.  One problem could be figuring out how to implement this.  I think that the active ball data can only be gotten after the hit event has occurred?

 

There are only  dead bumpers, rubber bands and walls on the table so I think primitives could be used for all the objects.  The kickers will also have to be primitives.  Bord said that we could use a primitive playfield to get the of graphics to move.  

Link to comment
Share on other sites

  • Content Provider

Yeah, would be a bit hack-y.  Would probably have to have a timer triggered by the hit, so there would be some ms delay before the ball got any extra acceleration.

Link to comment
Share on other sites

I’m thinking that having two sets of primitives could work.  One with increased elasticity for the way up and one with decreased on the way back.  Use collections to move everything  (all dead bumpers, rubber bands and saucers) all at once with a single timer.

Link to comment
Share on other sites

  • 4 weeks later...

Here's a video showing the current physics set up which will need to be tweaked.  I've also got scoring in place for the bumpers.  One interesting thing about the scoring is that all scores are multiples of five and if you look at the bumpers they all read "5000 Points When Lit" which is true.  The game has all of the bumpers (except the diamonds) lit and once you hit one all of the lights go out until the score motor reaches the index position, at which time they all come back on.

 

https://youtu.be/HASGBnCEZQw

 

@Onevox has agreed to redraw the playfield so with Bord and Onevox onboard, you know this table will look killer!  Now I've got to make it play killer...

Link to comment
Share on other sites

Yes. Ok now. Interesting. Nudge is something I think could get some more attention in vp, so, this project alone is good in that regard. From the preview, the rubber bands in the lower half at least seems to be too dead to be able to get the ball up back to the upper part of the table where I expect most of the scoring to be. I don't know this machine so maybe that would not be possible either on the real machine, and that there is only 10 or low scoring on the bottom.

Link to comment
Share on other sites

Here's a video that I shot at the Chicago Pinball Expo years ago to show how this table plays.  Like I mentioned I just got the code written to score and nudge so the physics will need work.  This is more of a proof of concept at this stage.

 

 

Here's another video of game play by a guy who likes to stick his head into the center of the shot.

 

https://www.facebook.com/watch/?v=332595597456120

Link to comment
Share on other sites

Further updates on the table.  Now the saucers grab balls, score and kick them back out.  The ball trough pours balls into the lifter trough and the table plays a 5 ball game.  Lastly the first draft of Onevox's playfield has been used to show that the moving playfield can be projected on the game.  All in all coming along really well for something that has never been tried before in vpx.

 

 

Link to comment
Share on other sites

Today's Nudgy update shows that the DT version now has a graphical lighting score output.  Unfortunately it is hard for me to work with VP's desktop display.  I usually use reels to get sharp images of can play, player up, tilt, game over and other back glass information but working with lighting to display scores is sketchy at best.  A decal could be a good solution but you can only have one, it is not named and cannot be changed via script so it is useless for this.  You could try using lighting but unlike B2S editor you cannot place snippets that can be turned on/off so the best that I can come up with is to use wonky shaped lights that get turned on/off by the script.

 

The good news is that since I've got the score parsed out into 5000, 10k and 100k values, driving the B2S will be a breeze.  I've also got all of the scoring snippets ready to go so the B2S should only take a few hours to make.

 

 

Link to comment
Share on other sites

Onevox sent the playfield with text today and it looks really nice! 

 

I made a B2S and tested the table on my cab and had some issues with balls getting stuck in meshes.  I added some invisible walls around the perimeter of the saucers to help keep balls from entering the edges of the playfield primitives.  This helps with keeping the balls out of the walls while nudging with a ball in a saucer.   I did manage to get a ball partially stuck in a playfield mesh when I nudged while the ball was ejecting so I'll add some code to prevent ball ejection during forward nudges .  Backwards should be fine because the mesh would be moving away from the kick.

 

Here is an example of current game play.

 

Link to comment
Share on other sites

At :56 in the video you get this great diversion when the ball hits the lip of the saucer and completely changes course. That is exactly the kind of stuff you want to see in a simulation like this. Really impressive!

Link to comment
Share on other sites

Ok this is about as far as I can take the table till the graphical aspects are done.  I've got lights that sort of shine through the bumpers and the scoring logic is now complete.  There are physics tweaks that are needed as well but pending those this is pretty close to done except for the usual beta testing.    PM me if you want a link to the table and B2S to be a tester

 

.

 

 

Link to comment
Share on other sites

Graphical aspects are underway. All art assets have been beautifully redrawn by @Onevox. I modeled everything in Blender Cycles, textured in Octane for Blender and am nearing the point of no return for rendering textures and bringing it all into VPX for completion by @scottacus . A really talented team to be a part of!

render2.thumb.jpg.3ac83509c41bf3e512a02f39f53a9469.jpg

 

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...