Wecoc
Pinball Wizard
- Joined
- Dec 7, 2021
- Messages
- 81
- Reaction score
- 124
- Points
- 40
- Favorite Pinball Machine
- Cirqus Voltaire
Future Pinball has a model called the Vari Target. If you've ever experimented a bit with it, I'm sure you realized this object is more limited than others.
Vari Targets are a useful object since they have a movable collision box that recedes based on how the ball collides with it, therefore has a unique behavior.
That being said, these problems make it pretty unusable:
- If you try loading more models, you can't change it since it only "reads" the default one
- You can't place it over surfaces/playfields
- It has a bug: when retrieved using SolenoidPulse, the Hit event is called.
- The interaction with the ball may not be very realistic.
- Export the default Vari Target model
- Change its properties (model, collision...) with FPM-Editor.exe and save it with another name
- Import the new Vari Target
- Delete the default Vari Target and name the new one Target-Vari-T1
Swapping vari target models, you could make the "variable push target" from Ripley's Believe It or Not
Then, you can imitate it with a Toy, that either rotates or moves back. This Toy changes its rotation/position based on the current fpEventID of the invisible Vari Target. Optionally, you can use BAM to read the ball's speed and make the Toy's speed more accurate based on that.
I made a Demo that contains new types of Vari Target using this concept, see at the end of this post.
With this you can also make the Williams version of the Vari Targets like this one seen in Bad Cats. My demo includes one.
Finally, you may get to a point where you want something that goes back similarly, but you can't use a Vari Target for it. Maybe it's something that goes back in an angle, or maybe the maximum of 10 steps offered by Vari Targets is just not enough. For those cases, a more complex BAM code can make the trick. You can use either triggers or targets, make a Mini-Playfield with them (similar as before), and when the target is hit, read the Ball Speed and move/rotate the Mini-Playfield according to that. In other words, you can get a Vari Target effect without Vari Targets by cleverly moving the collision boxes, in a similar way that Zipper Flippers work.
You can make the rotational "Power Targets", like in Chicago's pinball Action. My demo includes one.
I hope this post is useful and makes you feel a bit more love for those poor Vari Targets, the weird cousin of the Leaf Targets we all adore
Vari Targets are a useful object since they have a movable collision box that recedes based on how the ball collides with it, therefore has a unique behavior.
That being said, these problems make it pretty unusable:
- If you try loading more models, you can't change it since it only "reads" the default one
- You can't place it over surfaces/playfields
- It has a bug: when retrieved using SolenoidPulse, the Hit event is called.
- The interaction with the ball may not be very realistic.
Solving the default Vari Target problems
Here's the catch: The FP Editor, for some reason, can only read a Vari Target FPM when it's called exactly Target-Vari-T1 on the Models list. That means you can only have one type of Vari Target model in your table, but it doesn't have to be the default one.- If you try loading more models, you can't change it since it only "reads" the default one
- Export the default Vari Target model
- Change its properties (model, collision...) with FPM-Editor.exe and save it with another name
- Import the new Vari Target
- Delete the default Vari Target and name the new one Target-Vari-T1

Swapping vari target models, you could make the "variable push target" from Ripley's Believe It or Not
On BAM, you can fix this with a Mini-Playfield. Place the Vari-Target outside the table and make a Mini-Playfield that moves it wherever you want.- You can't place it over surfaces/playfields
Code:
' This function is the same used for Zipper Flippers!
Function CreateMiniPlayfield(ByRef item, Z, H)
Dim X, Y : X = item.X : Y = item.Y : Const e = 0.2
Dim MP : Set MP = xBAM.CreateMiniPlayfield(X-e, X+e, Y-e, Y+e, Z-e, Z+H+e, X, Y, Z)
MP.MoveTo X, Y, Z, 0, 0, 0, 1, 0
Set CreateMiniPlayfield = MP
End Function
Dim VariTargetMiniPlayfield
Set VariTargetMiniPlayfield = CreateMiniPlayfield(VariTarget, 0, 32)
VariTargetMiniPlayfield.PhysicsMove = True
VariTargetMiniPlayfield.Position.X = 425
VariTargetMiniPlayfield.Position.Y = 128
VariTargetMiniPlayfield.Position.Z = 32
This is the easiest one to fix. When resetting the Vari Target, activate a Timer only enabled while the SolenoidPulse is active. On the Hit event, you can use this.- It has a bug: when retrieved using SolenoidPulse, the Hit event is called.
Code:
Sub VariTarget1_Hit()
If (VariTarget1Timer.Enabled = True) Then Exit Sub
' Here do whatever happens when you hit the Vari Target
End Sub
Again, BAM can save the day with this one. The XML files include a row for Vari Targets.- The interaction with the ball may not be very realistic.
Making other types of Vari Targets
You can change your default Vari Target model to an Invisible model, which only preserves the collision and a hidden box, so you can place it on the Editor.Then, you can imitate it with a Toy, that either rotates or moves back. This Toy changes its rotation/position based on the current fpEventID of the invisible Vari Target. Optionally, you can use BAM to read the ball's speed and make the Toy's speed more accurate based on that.

I made a Demo that contains new types of Vari Target using this concept, see at the end of this post.


With this you can also make the Williams version of the Vari Targets like this one seen in Bad Cats. My demo includes one.
Finally, you may get to a point where you want something that goes back similarly, but you can't use a Vari Target for it. Maybe it's something that goes back in an angle, or maybe the maximum of 10 steps offered by Vari Targets is just not enough. For those cases, a more complex BAM code can make the trick. You can use either triggers or targets, make a Mini-Playfield with them (similar as before), and when the target is hit, read the Ball Speed and move/rotate the Mini-Playfield according to that. In other words, you can get a Vari Target effect without Vari Targets by cleverly moving the collision boxes, in a similar way that Zipper Flippers work.

You can make the rotational "Power Targets", like in Chicago's pinball Action. My demo includes one.
I hope this post is useful and makes you feel a bit more love for those poor Vari Targets, the weird cousin of the Leaf Targets we all adore

Attachments
Last edited: