Jump to content

Flasher And Gi Illumination Scripting - Some New Routines


Recommended Posts

  • Content Provider

I guess this is mostly for authors.  Looking for some ideas and feedback on this approach to simplify some of the GI/Flasher image swapping that people are doing now to improve the table lighting when GI or a flasher is turned on/off.  

 

I have early version of items 1 and 2 in the Mystery Castle table.  Item 1 is just for better lighting control.  Item 2 is to make image swapping and flasher intensity changes more synchronized.  Mystery castle likes to strobe the GI bulbs, and when I was toggling the flipper images between on and off, they look totally out of sync with the GI (GI still bright, flipper was dark).  The FlashGIIMage sub, only swaps the flipper image if the GI intensity drops below a certain value, so now its synced. There is also image collection support so swapping images on multiple items can be done with one line of code (MC had a ton of plastic ramp objects to toggle on and off)

 

 

Here are the descriptions and examples.  I am working on item 3 since I have seen frenetic's approach for using 3 flipper images for better lighting effect.  I will post the code when I have it working

1) FlashVal and FlashValm subs
  Same as Flash and Flashm but you can specify the max brightness that the flasher goes to (instead of hardcoded to 255).  This allows you to have 2 GI bulbs tied to the same event but they can have different intensities.
  With the different intensities, I needed to change the Fade up/ fade down speed to use a percentage instead of fixed steps, so they fade up/down at the same rate
 
2) FlashGIImage and FlashGIImageCollection subs
  For those of you that swap out flipper, ramp, plastic images when GI or Flashers turn on or off, this is supposed to make swap the images based on the state of a flasher.
  For swapping images on a single item like left flipper, use FlashGIImage
  For swapping images on all plastic ramp objects or wire ramps, use FlashGIImageCollection
  
3) FlashGI3Image and FlashGI3ImageCollection subs
  Same as FlashGIImage but switches between 3 images instead of 2.  For example if you have a flipper that uses 3 images based on state of GI and a nearby flasher
 
Example:  Changing GI for plastic ramps, wire ramps, plastics, flippers and a big toy that you swap images on based on GI state
Left sling flasher is 21
Right sling flasher is 22
Spotlight flasher is 23
GI is solenoid 24
 
FlashVal  21, f21, 255 'Left Sling Flasher
FlashVal  22, f22, 255 'Right Sling Flasher
FlashVal  23, f23, 255 'Spotlight Flasher
FlashValm 24, f24upper, 100) 'Lighting a outlane plastic with different brightness levels
FlashVal  24, f24lower, 255)    'Lighting a outlane plastic with different brightness levels
 
'Flasher effects
FlashGIIMage  23, primitiveToy, "Toy_Illuminated", "Toy_Dark", 125 'Swap toy image when spotlight flasher is above or below 125
FlashGI3Image 24, lfLogo, "LFlipperOn", "LFlipperOff", 125, 21, "LFlipperRed" 'Left Flipper can be white, dark or red based on GI(24) and L Flasher(21) status
FlashGI3Image 24, rfLogo, "RFlipperOn", "RFlipperOff", 125, 22, "RFlipperRed" 'Right Flipper can be white, dark or red based on GI(24) and R Flasher(22) status
 
'General GI effects
FlashGIImageCollection 24, aPlasticRampCollection, "!TransRamp", "!TransRampDark", 125 'Plastic ramp illumination
FlashGIImageCollection 24, aPlasticRampLIpCollection, "!TransRampLip", "!TransRampLipDark", 125 'Plastic ramp lip illumination
FlashGIImageCollection 24, aWireRampCollection, "chrome", "chromeoff", 125 'Wire ramp illumination
FlashGIImageCollection 24, aPlasticsCollection, "plasticsOn", "plasticsOff", 125 'Swap plastics images
 
 
 
If you got this far without falling asleep, thanks for reading ;)
Link to comment
Share on other sites

  • Content Provider

Currently using flipper subs, flipperon_sub, flipperoff_sub kind of stuff (if changing both flippers at the same time), and then just tie it in to the flasher solenoid sub. This looks like it could replace the need for actually having a flasher solenoid sub, so I can just use SolCallback(24) = "SetFlash 124," and then use these variables

 

so currently i have SolCallback(22) = "LeftSlingFlash" 'left slingshot flasher

Sub LeftSlingFlash(Enabled)
	If Enabled Then
		SetLamp 122, 1
		SetFlash 132, 1
		LFLogo.image = "flipper-l2red"
	Else
		SetLamp 122, 0
		SetFlash 132, 0
		if GI_TroughCheck < 4 then LFLogo.image = "flipper-l2" else LFLogo.image = "flipper-l2off"
	End If
End Sub

Then that brings up - what about having setflash and setlamp tied to the same lamp number? It would be helpful to have, as part of the setlamp script, something that tells it if setflash 126 is on then setlamp 126 is on...as you can see in my script above I use both sometimes and have to assign them different numbers

Link to comment
Share on other sites

  • Content Provider

Yep, it would handle that automatically.  Setflash could be combined with Setlamp - some tables do this

 

added to the list:

4) Move setflash support into the setlamp and the lamptimer routine

5) MIght as well support 4 step fading also

Link to comment
Share on other sites

  • Content Provider

You know, to go even further, it would be nice to have an explanation of your GI routine as well. I mostly understand it (except when it came to indiana jones) but other people could use a good copy/paste GI routine, what code to add to drain and ballrelease etc, along with some tips on how to turn it on/off or flash it when you hit certain events on the table?

Link to comment
Share on other sites

  • Content Provider

demo table with items 1-4 working.  There is many ways to do this, this is just another way...hopefully easier :)

VP99 image fading routines.zip

 

I will write up the trough check routine, but basically you just set it up to check all the switches where a ball can be locked or sits like in a trough.  You call the check routine when ever a ball enters that lock or trough and after it leaves that ball or trough

Link to comment
Share on other sites

  • Content Provider

Nice indy plastics!

I'm sort of on the fence about how to do the plastics GI... it's nice to change the texture on/off of course but the method I used on indy was new (for me), that is that I photoshopped in the lamp light. I think it turned out great but the other method I am using on Verne's World. I have a lower (below plastics) flasher image that goes to 255, and one above the plastics and is half the alpha of the lower one flasher. The thing is, since I will need to have an off and on image anyways, maybe I should just photoshop it, I have a little more control over it, or I could do them both together. I won't get the fading steps if I just photoshopped it. I'd have to see how it looks. A project for later today, perhaps...

 

Link to comment
Share on other sites

  • 3 weeks later...

This is an interesting subject- nice work on the demo, too. I agree with frenetic that some tutorials on this subject would be really helpful. I'd like to step up my flasher game and am not entirely sure where to start (i can trigger them, can switch out textures on primitives, etc, but can see that what you all are doing is leaps and bounds beyond that!)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...