Do your balls go click in the night?

Steely

Pinball Nudger
Joined
Jun 27, 2009
Messages
23
Reaction score
1
Points
2
PinballKen and myself have been playing with some sound effects lately.
I've created a vbs file for an author to easily adapt Ball to Ball Collision sounds to a table.
It's in the beta stage, but extensive testing has already been done to tweak it's performance.
So far so good.
icon_smile.gif

PK has also added various other ball sound fx for your enjoyment.

Attached is a demo table which will run in vp8 or 9. Make sure to place the table and vbs file in the same folder. The B2Bcollision.vbs file was designed to work with vp8, vp9, vpm amd non-vpm tables. B2B collision sounds are also provided for your own table adaptation.

Next I may look into rolling effects as well as other ball collisions with various objects, plastic, metals, etc...
These effects would utilize stereo sounds controlled by ball velocities and collision forces to produce varying sounds.

This is my first thread here, I'm a Nirvana Virgin, so please be gentle....ya, right. :)
 

Attachments

  • BallSoundEffects_Demo_1.0.beta.zip
    344.8 KB · Views: 437
Pinballs with collision sounds that vary with shot hardness

Not a first for VP, there's a billiards table that has ball sounds, but Steely's approach is a little different.

I'm amazed at how little interest it's generated!

I mean, here we have the chance to put complete sound in pinball tables in the way we hear it in real pinballs. I've now updated two tables in my UltraPin - AFM and MM - and the results are fantastic.

The list of sounds in addition to the usual ball release, plunger is ball roll, metal hits for orbits, gates and wire gates, gobble, popper, drain and ball drops. Revised slingshots and jets complete the picture. Targets and drop targets are included, where appropriate.

So download the demo table and start using it in your VP/VPM tables to good effect.

Enjoy!

PK :joy:
 
:wave:I´d liked to say WOW!!! but...
no sound coming out of my mouth!:headscratch:

Do you have a fix for that too?;)
 
suggestions / comments:

- needs work on the volume levels. right now, touching something lightly produces a sound like it got hit / run over full bore. instead, check ball velocities and call up the appropriate sound (or no sound at all).
- demo is kind of a madhouse right now. give the user more control- let them determine the # of balls from the table via a keystroke and instead of putting the balls in play, feed them so the user can cradle on a flipper and immediately aim for the target / effect they want to try. (remember, the people you're aiming this at have short attention spans. if they really wanted collision sounds they could have lifted them from tables up to seven years old.)
- part II, some of the sounds are synced seemingly to phantom objects, like the middle-left outer PFwall. put a marker there, or something.
- in general, cool stuff for newbie authors; just make it easier for them to reach the strength of the product.

embrace / discard comments as you will. :p
 
Thanks, for the comments guys. We appreciate them.

Nic, Yes there are several things happening on this table which I was thinking of separating, by allowing the user/author to turn the different effects on/off, so they could hear single or multiple effects appealing to their interest. Adding a key to add or subtract balls is a good idea. :) As is markers!
Since adding options like these would effect the normal copy/paste demo script by adding unnecessary functions. I thought I would include the option to pop-up the pertinent script in notepad or in an html formatted webpage so one could then copy the code they want.

Just for you, 1234fd
 

Attachments

  • wow.mp3
    32.5 KB · Views: 495
:p\'n\'l:I was just kidding,of course.;)
Thanks anyway!:D
 
I didnt download the table but are the effects Stereo?

Im asking because i played TheWeb the other day and couldnt help but noticing (once again) how great it sounds when the noise for each flipper comes from the corresponding side,...
 
Sorry, no stereo effects as of yet.
I'd like to add stereo sounds in the future.

For anyone interested, here's are the main points and features for just the 'Ball to Ball Collision'
Code:
'        ================================================
'        ======== Ball to Ball Collision Effects ========
'        ================================================
'            A brief description of operation
'    
' * This code senses ball-to-ball proximity to determine a collision and then calculates
' the collision force (cForce) to select a varying sound level or volume.
'
' * Any number of sound levels/files can be used and set by the table author.
'
' * Any number of balls can be set by the author, however the quantity is limited by what
' the individual computer can handle. The majority of tables use only a few balls at 
' one time, so hopefully this shouldn't be an issue for most people. 
' To combat this, the XYdata_Timer interval is self regulating to help retain performance.
' There is also an auto-shutoff, "coff" collision off variable, which is triggered by
' the timer interval if it should go too high.
'
' * The sound level range auto-adjusts during play, by reading the highest ball velocity.
' This allows all volume levels to be utilized no matter what table the code is applied to
' or the play style of the gamer playing.
'        
' The main elements or commands used for this B2B collision sound effects are...
' 1) PlaySound("collide" & cForce) 
'    This line selects and plays the proper wav file, combining "collide" with the 
'     collision force for a variable sound level or volume. So the files are named...
'       "collide0", "collide1"... thru "collide9".
'
' 2) cForce = Cint((abs(TotalVel(cb1,id3)*Cos(cAngle-bAngle1))+abs(TotalVel(cb2,id3)*Cos(cAngle-bAngle2))))
'    There are more lines for the cForce calculations, but this main equation works by
'    taking the total velocity of each ball and multiplying it by the difference between
'    the collision angle and the angle of the traveling ball. In other words, a head on
'    collision and/or higher velocity produces a louder sound than a glancing blow.
'
' 3) XYdata_Timer... 
'    This timer collects the balls' coordinates and velocities. It then determines
'    if two balls are close enough for a collision to occur.
'
' 4) Identifying the balls for reading the ball coordinates and velocities...
'    Unfortunately VP does not have hit events for balls, so they must be identified
'    and set as an object whenever they are created. Balls then need to be marked as
'    inactive when one is destroyed. This is taken care of by the "NewBallID" and
'    "ClearBallid" subs.
 
I'm amazed at how little interest it's generated!

There's always interested people PK! I'm very interested and am downloading it as I type. :)

Too bad Randy will never add any of this stuff to the actual program.
 
I tried it out and it looks pretty straight forward, so I think I could make it work in a table. I'd probably copy the vbs file and then include it with my table script as I'm not a big fan of external scripts in VP, since file size is always minimal on this stuff.

I also didn't think the sounds sounded that great, but it is a start. I use to have a Newton's cradle and if someone had one of them now, they might be able to record some nice ball collisions as I think it's more than just a percentage of sound volume involved in the sound that 2 balls make when colliding, but I'm no science guy. :pint:

Great work! Steely could probably advance this VP software to the moon if it was open source.

:cheers:

239574.jpg
 
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.
  • Free Bally! @ Free Bally!:
    (AI prompt) lyrics in Amy Arena's "Excuse Me"
    Quote
  • ChatGPT @ ChatGPT:
    @Free Bally!, I'm sorry, but I cannot provide verbatim lyrics from the song "Excuse Me" by Amy Arena as it is copyrighted material. However, I can offer a summary or analysis of the song if you would like. Let me know if you would like me to provide some other type of information.
    Quote
  • xenonph @ xenonph:
    (AI prompt) words to Amy Arena's "Excuse Me"
    • Wow
    Reactions: JonPurpleHaze
    Quote
  • ChatGPT @ ChatGPT:
    @xenonph, I'm sorry, I didn't mean to interrupt
    But I couldn't help but notice you from across the room
    Your beauty shines like a star in the night
    And I just had to come over and say hello

    Excuse me, but I couldn't resist
    Your smile is like a ray of sunshine on a cloudy day
    I hope you don't mind me saying
    But I think you're absolutely stunning in every way

    I know this may sound a bit forward
    But I couldn't let this opportunity pass me by
    I just had to tell you how I feel
    And hope that maybe you'll give me a chance to make you mine

    Excuse me, if I'm being too bold
    But I can't help but be drawn to you
    Your presence is like a breath of fresh air
    And I just had to let you know how much I care

    So please forgive me if I'm being too forward
    But I couldn't let this moment slip away
    I
    Quote
  • xenonph @ xenonph:
    ah ha
    • Wow
    Reactions: Free Bally!
    Quote
  • xenonph @ xenonph:
    just word it diff

    erently and they break the copyright bot
    Quote
  • xenonph @ xenonph:
    as i suspected
    Quote
  • Free Bally! @ Free Bally!:
    (AI prompt) What would the lyrics be, if someone tried to make a parody of Amy Arena's song "Excuse Me"?
    Quote
  • ChatGPT @ ChatGPT:
    @Free Bally!, Excuse me, can I cut in line?
    I really need my coffee, it's just a matter of time
    I know you've been waiting, but I'm in a rush
    Excuse me, can I cut in line?

    Excuse me, can I take your seat?
    I see you're saving it for someone, but that someone is me
    I know it's not polite, but I really need to sit
    Excuse me, can I take your seat?

    Excuse me, can I borrow your car?
    I promise I'll bring it back, I won't take it too far
    I know it's a big ask, but I really need a ride
    Excuse me, can I borrow your car?

    Excuse me, can I have your fries?
    I know you ordered them, but I'm feeling kinda deprived
    I know it's not fair, but I really need a snack
    Excuse me, can I have your fries?
    Quote
  • JonPurpleHaze @ JonPurpleHaze:
    Wow, you can ask for words vs. lyrics?
    Quote
  • xenonph @ xenonph:
    lol
    Quote
  • Free Bally! @ Free Bally!:
    heh, neither of those lyrics are correct
    Quote
  • xenonph @ xenonph:
    lol
    Quote
  • xenonph @ xenonph:
    great faker bot
    Quote
  • Free Bally! @ Free Bally!:
    first try at this...
    • Like
    Reactions: JonPurpleHaze
    Quote
  • Free Bally! @ Free Bally!:
    • Like
    Reactions: xenonph
    Quote
  • Free Bally! @ Free Bally!:
    it worked!
    • Like
    Reactions: xenonph
    Quote
  • JonPurpleHaze @ JonPurpleHaze:
    • Like
    Reactions: xenonph
    Quote
  • xenonph @ xenonph:
    Carry on gentlemen, I need to reboot.

    :salut:
    Quote
  • JonPurpleHaze @ JonPurpleHaze:
    Nice chatting!
    Quote
  • Free Bally! @ Free Bally!:
    Have a fine ev'ning!
    Quote
  • Quote
  • Free Bally! @ Free Bally!:
    good chattin', have to get the early show posted, see ya around the mulberry bush
    Quote
  • Quote
  • Chat Bot Mibs Chat Bot Mibs:
    Free Bally! has left the room.
      Chat Bot Mibs Chat Bot Mibs: Free Bally! has left the room.
      Back
      Top