Jump to content



Photo
- - - - -

Updating Fullscreen Tables to Use the Nanotech Plunger


  • Please log in to reply
67 replies to this topic

#41 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 16 May 2012 - 03:50 AM

i'll try that method first, and see how that works. I'll still need to add the plunger, change the stroke, timer and add those 2 lines to the end of the keyup and keydown lines, right?
Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#42 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 16 May 2012 - 04:06 AM

QUOTE (CaptainNeo @ May 15 2012, 10:50 PM) <{POST_SNAPBACK}>
i'll try that method first, and see how that works. I'll still need to add the plunger, change the stroke, timer and add those 2 lines to the end of the keyup and keydown lines, right?


Yeah, the rest of the method still applies, the only change is with that specific Sub by replacing the for loop with different code because of the lack of a collection called PlungerWalls.

#43 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 16 May 2012 - 04:14 AM

so I still have to add the other code box of info somewhere in there as well. So there will be 2 code boxes of text..adding the plunger and adding the 2 lines. Got it.

smile.gif

thanks a bunch.
Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#44 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 16 May 2012 - 04:21 AM

QUOTE (CaptainNeo @ May 15 2012, 11:14 PM) <{POST_SNAPBACK}>
so I still have to add the other code box of info somewhere in there as well. So there will be 2 code boxes of text..adding the plunger and adding the 2 lines. Got it.

smile.gif

thanks a bunch.


2 code boxes? No, instead of the first, you use the second. The first was just for a reference showing the original code... For the sake of being fully understood, you will want to do the following...

Wall Technique
1. Add following code into table script
CODE
Dim PlungerPos, oPlungerPos
Sub Plunger_Timer()
    Plungers(oPlungerPos).IsDropped=1
    PlungerPos=INT(Plunger.position/2)
    Plungers(PlungerPos).IsDropped=0
    oPlungerPos = PlungerPos
End Sub


2. Add :Plunger.TimerEnabled=0 to the end of the PlungerKey line in the KeyDown Sub
3. Add :Plunger.TimerEnabled=1 to the end of the PlungerKey line in the KeyUp Sub
4. Add Plunger object with a stroke length of 130 called Plunger, uncheck Visible, check Enable Mechanical Plunger, check Enable Timer, set Interval to 40. Be sure the plunger hits the ball!

#45 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 16 May 2012 - 09:05 AM

worked like a charm. Thanks, that was much easier to understand.
Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#46 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 23 May 2012 - 06:43 PM

I noticed if I add plungers to Wall type formats (havn't noticed if the others do this), if someone uses the button launch instead, it gets a error message of undefined plunger, and crashes the system. Is there a way to take out the button plunger? is there a line I can ' to stop the crashes if someone accidently uses the launch button?
Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#47 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 23 May 2012 - 06:50 PM

What error are you getting? It shouldn't effect the button operated plunger at all.

Also list your "if keycode=PlungerKey" parts under the KeyDown and KeyUp sections, as that is what controls what is done when the plunger key is pressed.

Edited by koadic, 23 May 2012 - 06:51 PM.


#48 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 23 May 2012 - 07:34 PM

box pops up says

Line:172
Variable is undefined, "plungers"

then this is in red in the script.

Dim PlungerPos, oPlungerPos
Sub Plunger_Timer()
---(this is red)----> Plungers(oPlungerPos).IsDropped=1
PlungerPos=INT(Plunger.position/2)
Plungers(PlungerPos).IsDropped=0
oPlungerPos = PlungerPos
End Sub

these are my key up and key down lines for black pyramid..but does it for every game i've converted

Sub BlackPyramid_KeyDown(ByVal Keycode)
If keycode = PlungerKey Then PlungerIM.Pullback:Pcount = 0:PTime.Enabled = 1:plunger.Timerenabled=0
'If Keycode = KeyReset Then LampTimer.Enabled = 0: AllLampsOff():UpdateGI 0:End If
If vpmKeyDown(keycode) Then Exit Sub
End Sub

Sub BlackPyramid_KeyUp(ByVal Keycode)
If vpmKeyUp(keycode) Then Exit Sub
If keycode = PlungerKey Then PlungerIM.Fire:PTime.Enabled = 0:Pcount = 0:PTime2.Enabled = 1:Plunger.Timerenabled=1
End Sub

Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#49 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 23 May 2012 - 09:28 PM

QUOTE (CaptainNeo @ May 23 2012, 02:34 PM) <{POST_SNAPBACK}>
box pops up says

Line:172
Variable is undefined, "plungers"

then this is in red in the script.

Dim PlungerPos, oPlungerPos
Sub Plunger_Timer()
---(this is red)----> Plungers(oPlungerPos).IsDropped=1
PlungerPos=INT(Plunger.position/2)
Plungers(PlungerPos).IsDropped=0
oPlungerPos = PlungerPos
End Sub


This means there isn't an array named Plungers in that table...

QUOTE
these are my key up and key down lines for black pyramid..but does it for every game i've converted


Looking at what is available, the only Black Pyramid in FS I see is the NM by UW. And upon downloading the table and taking a look, it doesn't use walls... it uses a reel instead. In other words, you need to modify the code you added as the 'wall' code won't work. First, the reel is named Plunger, so you will have to name the Analog Plunger something different, like Plunger1. Then add the RED parts to the original script...

CODE
Sub BlackPyramid_KeyDown(ByVal Keycode)
If keycode = PlungerKey Then Plunger1.TimerEnabled=0:PlungerIM.Pullback:Pcount = 0:PTime.Enabled = 1
'If Keycode = KeyReset Then LampTimer.Enabled = 0: AllLampsOff():UpdateGI 0:End If
If vpmKeyDown(keycode) Then Exit Sub
End Sub

Sub BlackPyramid_KeyUp(ByVal Keycode)
If vpmKeyUp(keycode) Then Exit Sub
If keycode = PlungerKey Then Plunger1.TimerEnabled=1:PlungerIM.Fire:PTime.Enabled = 0:Pcount = 0:PTime2.Enabled = 1
End Sub

dim PCount:Pcount = 0

Sub PTime_Timer
If Pcount < 13 Then
Pcount = Pcount + 1
Plunger.Setvalue(Pcount - 1)
End If
End Sub

Sub PTime2_Timer
Select Case Pcount
Case 0:Plunger.SetValue(0)
Case 1:Plunger.SetValue(3)
Case 2:Plunger.SetValue(0)
Case 3:Plunger.SetValue(2)
Case 4:Plunger.SetValue(0)
Case 5:Me.Enabled = 0
End Select

Pcount = Pcount + 1
End Sub

Dim PlungerPos
Sub Plunger1_Timer()
PlungerPos=INT(Plunger1.position/2)
Plunger.SetValue(PlungerPos)
End Sub


#50 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 23 May 2012 - 11:19 PM

ahhh, I didn't know there was a forth type of plunger. That must be the same for simpsons Party pinball as well. how did you find another plunger to click on? i clicked around in that area trying to find something and couldn't find diddly.


EDIT: just tried it out, worked like charm. How can I tell this Reel method over the wall method? So I know how to tell the difference between the two?

Edited by CaptainNeo, 23 May 2012 - 11:29 PM.

Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#51 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 24 May 2012 - 12:06 AM

The Plunger.SetValue(x) used in the code below is a good indicator of a reel...
CODE
    Sub PTime_Timer
        If Pcount < 13 Then
           Pcount = Pcount + 1
           Plunger.Setvalue(Pcount - 1)
        End If
    End Sub


Another way is to go into the backdrop view and you should see any reels that are included in the table.

#52 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 24 May 2012 - 12:32 AM

gotcha. Just tried that technique on other tables. Worked for Space invaders, but didn't work for Simpsons party pinball. Said


Dim PlungerPos
Sub Plunger1_Timer()
PlungerPos=INT(Plunger1.position/2)
Plunger.SetValue(PlungerPos) <--------------this plunger line is undefined.
End Sub

What's that line asking for, so when I run into this, what do I look for in the script so I know what to link it to?
Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#53 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 24 May 2012 - 12:42 AM

In Simpsons Pinball Party, the reel is called 'PReel' and not 'Plunger', so the line would have to be PReel.SetValue(PlungerPos).

#54 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 24 May 2012 - 12:57 AM

didn't work, now it doesn't know what Preel is. maybe it is a wall technique?

here's the plunger section

dim PCount:Pcount = 0
dim Plungers:Plungers = Array(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13)

Sub PTime_Timer
If Pcount <12 Then
Pcount = Pcount + 1
Plungers(Pcount - 1).Isdropped = 1
Plungers(Pcount).Isdropped = 0
End If
End Sub

Sub PTime2_Timer
Select Case Pcount
Case 0:ResetPlungers
Case 1:Plungers(0).Isdropped = 1:Plungers(2).Isdropped = 0
Case 2:Plungers(2).Isdropped = 1:Plungers(0).Isdropped = 0
Case 3:Me.Enabled = 0
End Select

Pcount = Pcount + 1
End Sub

Sub ResetPlungers
For x = 1 to 12:Plungers(x).Isdropped = 1:Next
Plungers(0).Isdropped = 0
End Sub

Sub SolRelease(Enabled)
If Enabled Then
bsTrough.ExitSol_On
vpmTimer.PulseSw 15
End If
End Sub

Sub Auto_Plunger(Enabled)
If Enabled Then
PlungerIM.AutoFire
End If
End Sub

Edited by CaptainNeo, 24 May 2012 - 01:01 AM.

Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#55 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 24 May 2012 - 01:45 AM

I was going off of the Night Mod, so that must be different in the regular version. Going by what you have above, it should use the standard wall technique, was it not working with it? and if so, where was the error.

#56 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 24 May 2012 - 01:52 AM

plunger would work, it's just when you accidently tried using the button launcher, it would crash it, but that was the night mod one, I havn't tried the wall tech with the normal version yet. Figured they were the same with just different visuals.

Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#57 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 24 May 2012 - 01:57 AM

well, I had to regrab the one available here... 'STERN - The Simpsons Pinball Party - MEGAPIN_V1.1FSNM.vpt' as I think the other is available on the HyperPin site... I know that this one uses reels, but I can't look at my originals because I have already modified many of them to replace the original plungers with the alpha ramp version.

I'll be in chat for the next 30-45 minutes or so if you want realtime interaction and help - http://vpforums.org/VPFChat

Edited by koadic, 24 May 2012 - 02:02 AM.


#58 CaptainNeo

CaptainNeo

    Pinball Fan

  • Platinum Supporter
  • 782 posts
  • Location:Burlington, WI

  • Flag: United States of America

  • Favorite Pinball: Cirqus Voltaire

Posted 24 May 2012 - 02:11 AM

wall tech totally worked on this version. I have the night version too, so now i'll know how to modify that one when needed. Thanks for all the help.

smile.gif

Noah might want to include the easier Wall version and the Reel versions to his header for easy ref.

smile.gif

Edited by CaptainNeo, 24 May 2012 - 02:12 AM.

Visit my site, www.pinballrestorations.com for Pinball Playfield restoration services.
VP FS Wishlist {SafeCracker, Atlantis (redo), Defender, Arena, Champion Pub, Pinball Circus}

#59 rooter

rooter

    Enthusiast

  • Members
  • PipPipPip
  • 111 posts

  • Flag: United States of America

  • Favorite Pinball: Theater of Magic

  • 360 Gamer Tag: root88

Posted 24 June 2012 - 06:37 PM

Is there a way to make a plunger release acts as a launch button on VP tables that don't have a normal plunger? I just want a plunger pull and release to act as if the enter key has been tapped. Having one control to launch the ball in all games will keep things simple for my users.

#60 koadic

koadic

    Pinball Fan

  • VIP
  • 1,363 posts
  • Location:Omaha, NE, USA

  • Flag: United States of America

  • Favorite Pinball: Addams Family/Fish Tales/Medieval Madness



Contributor

Posted 24 June 2012 - 07:24 PM

QUOTE (rooter @ Jun 24 2012, 01:37 PM) <{POST_SNAPBACK}>
Is there a way to make a plunger release acts as a launch button on VP tables that don't have a normal plunger? I just want a plunger pull and release to act as if the enter key has been tapped. Having one control to launch the ball in all games will keep things simple for my users.


Sure, but you will have to edit the script in the tables you want to change...

I assume you don't want to disable the analog features, just use the plunger as a launch button when the table requires....

Instructions:
Add a plunger object named 'Plunger' to the table you want to mod, and place it somewhere off of the table. Set the timer interval to 40 and make sure you enable it.
Open the script in the editor, scroll to the very bottom after the last 'End Sub', and add the following:
CODE
Dim PlungerPos, PlungerPos2

Sub Plunger_Timer
    If Plunger.Position = 0 and PlungerPos2 > 5 Then PlungerIM.AutoFire : PlungerPos = 0
    PlungerPos2 = PlungerPos : PlungerPos = Plunger.Position
End Sub


This will allow to not shoot the ball with a slow release of the plunger (in case it was pulled by mistake, say by the wrong player), but allow a fire if pulled back 20% and released quickly.

Of course, this is only theory as I have not tested it, but it is adapted from my version of the analog plunger utilizing an impulse plunger, so I have no reason to believe it won't work.

EDIT: Another option is to utilize the MagnaSave buttons if you have them and use those as a plunger button, then just go into the script and find the 'keydcode=plungerkey' in the keydown and keyup subs, and replace it with 'keycode=leftmagnasave or keycode=rightmagnasave'

Edited by koadic, 24 June 2012 - 07:36 PM.