Welcome, Guest. Please login or register.

Author Topic: Home(made) Buzzers and Lockout Systems  (Read 1354 times)

chrisholland03

  • Member
  • Posts: 1020
Re: Home(made) Buzzers and Lockout Systems
« Reply #15 on: December 02, 2019, 10:36:22 AM »
I always thought it was interesting that Blockbusters locked out the opposing contestant's podium lights, but allowed the sfx for both podia through.

dazztardly

  • Member
  • Posts: 629
Re: Home(made) Buzzers and Lockout Systems
« Reply #16 on: December 02, 2019, 12:58:10 PM »
Quote
how did those TV prop professionals get the podium on the real show so black when it's inactive?

With a sheet of 1/4" smoke Plexiglas. See TPIR Race Game.

Quote
I know that scrim fabric is used quite often with eggcrate displays.

The best use of scrim was on the set of CBS Match Game. The contestant score readouts were faced with scrim which was then painted (yes, painted) either red or green, giving white numerals on a colored background. Years later, they did a MG pilot where the set was way out of scale and they couldn't figure out how to achieve this effect, so they used lighting gel.

The late Kathleen Ankers, a contemporary of Ted Cooper at NBC New York, used painted scrim in her set for David Letterman. Lit from the front, you saw whatever was painted on the scrim. Darken the front and light behind it and you see what's behind. The scrim seems to become transparent.

I once worked at a TV station that decided to have a BINGO movie. Someone found one of these stashed away in the scene dock:

https://www.walmart.com/ip/American-Mercantile-Bingo-Board-Wood-Sign/905950567?wmlspartner=wlpa&selectedSellerId=1172&adid=22222222227287049156&wl0=&wl1=g&wl2=c&wl3=345443889589&wl4=aud-430887228898:pla-713526791480&wl5=9030963&wl6=&wl7=&wl8=&wl9=pla&wl10=8453398&wl11=online&wl12=905950567&veh=sem&gclid=CjwKCAiA5o3vBRBUEiwA9PVzasq-V1WB06kKK9MP0kNUq_Ds0mp-niICgN52VzxdrCci9ltpF9jnnBoCfAMQAvD_BwE

I hid it behind a sheet of blue Plexiglas. It was a big improvement because you didn't really see the numbers that hadn't been called (light turned off) but could see the numbers which had been called (light turned on).

Chris,
    Thanks for the cool information! With the Feud podium, did they just use colored gels behind the tinted plexi?

-Dan

chris319

  • Executive Producer
  • Posts: 9622
Re: Home(made) Buzzers and Lockout Systems
« Reply #17 on: December 02, 2019, 04:20:00 PM »
Quote
With the Feud podium, did they just use colored gels behind the tinted plexi?

The Ray Combs version? Not sure.

chris319

  • Executive Producer
  • Posts: 9622
Re: Home(made) Buzzers and Lockout Systems
« Reply #18 on: December 03, 2019, 01:35:05 PM »
Here is a simple lockout program which runs on PureBasic. It may run on the free version of PureBasic (haven't tried).

https://www.purebasic.fr/english/viewtopic.php?f=12&t=74152

https://www.purebasic.com/download.php

nowhammies10

  • Member
  • Posts: 148
Re: Home(made) Buzzers and Lockout Systems
« Reply #19 on: December 03, 2019, 02:26:03 PM »
Amazing, Chris.  It runs just fine on the free version.  I added a couple lines of code that lock the buzzers without registering a player having buzzed in (useful for Jeopardy! or other games where you don't want the players to be able to interrupt).

Add the following:

Quote
AddKeyboardShortcut(1,#PB_Shortcut_0,#PB_Shortcut_0)

to the cluster of AddKeyboardShortcut commands to enable the "0" key, and add this line:

Quote
If shortcut = #PB_Shortcut_0 And locked = #False: locked = #True: SetGadgetText(2,"Buzzers Locked"): EndIf

to the cluster of "If shortcut =" lines to use the "0" key to lock the buzzers.

chris319

  • Executive Producer
  • Posts: 9622
Re: Home(made) Buzzers and Lockout Systems
« Reply #20 on: December 03, 2019, 07:12:48 PM »
The players are locked out when one buzzes in. Besides enabling all players, the only other thing the space bar does is to clear the "name" of the last player to buzz in. I would hate to have a stagehand forget to do a two-step reset, leaving the system disabled when play resumes and the players are pushing dead buttons.

I'd think it preferable to put the names on a timer which clears the "names" automatically. You would still press the space bar one key to enable the system.

Source code to follow.

chris319

  • Executive Producer
  • Posts: 9622
Re: Home(made) Buzzers and Lockout Systems
« Reply #21 on: December 03, 2019, 07:33:45 PM »
Here it is with Delay() statements to clear the player names after 3 seconds.

I don't own any buttons to see how this would work with actual buttons.

;LOCKOUT.PB
;CREATED ON 12/3/2019 by chris319
;LOCKOUT PROGRAM FOR GAMES REQUIRING PLAYERS TO "BUZZ IN" SUCH AS JEOPARDY!
;ACCOMODATES UP TO 3 PLAYERS BUT CAN BE EXPANDED TO ACCOMODATE MORE
;SHOWS WHICH PLAYER BUZZED IN FIRST, LOCKING OUT OTHER PLAYERS UNTIL RESET BY PRESSING SPACE BAR
;CUSTOMIZABLE IN ALL SORTS OF WAYS YOU CAN ADD SOUND EFFECTS AND SCORING
;YOU WILL NEED BUTTONS WHICH SEND NUMERIC KEY CODES TO THE COMPUTER
; https://www.compuphase.com/usbkey/usbbutton_en.htm

InitKeyboard()
LoadFont (1,"arial",24)
#H = 360: #W = 640

OpenWindow(1,0,0,#W,#H,"")
TextGadget(1, 50, 50, 400, 40,"",#PB_Text_Center):SetGadgetFont(1,FontID(1)):SetGadgetColor(1,#PB_Gadget_FrontColor, #White):SetGadgetColor(1,#PB_Gadget_BackColor, #Blue)
SetGadgetText(1,"Enabled")

TextGadget(2, 50, 100, 400, 40,"",#PB_Text_Center):SetGadgetFont(2,FontID(1)):SetGadgetColor(2,#PB_Gadget_FrontColor, #Black):SetGadgetColor(2,#PB_Gadget_BackColor, #Yellow)

AddKeyboardShortcut(1,#PB_Shortcut_1,#PB_Shortcut_1)
AddKeyboardShortcut(1,#PB_Shortcut_2,#PB_Shortcut_2)
AddKeyboardShortcut(1,#PB_Shortcut_3,#PB_Shortcut_3)
AddKeyboardShortcut(1,#PB_Shortcut_Space,#PB_Shortcut_Space)

Repeat:
event = WaitWindowEvent()
   
If event = #PB_Event_CloseWindow: CloseWindow(1): End :EndIf

If event = #PB_Event_Menu ;KEYBOARD INPUT
shortcut = EventMenu()

      If shortcut = #PB_Shortcut_1 And locked = #False: locked = #True: SetGadgetText(2,"Player 1"):  Delay(3000):SetGadgetText(2,""):EndIf
      If shortcut = #PB_Shortcut_2 And locked = #False: locked = #True: SetGadgetText(2,"Player 2"):  Delay(3000):SetGadgetText(2,""):EndIf
      If shortcut = #PB_Shortcut_3 And locked = #False: locked = #True: SetGadgetText(2,"Player 3"):  Delay(3000):SetGadgetText(2,""):EndIf
     
      If shortcut = #PB_Shortcut_Space: locked = #False: EndIf ;SPACE BAR UNLOCKS PLAYERS
     
      If locked = #True:SetGadgetText(1,"Press space bar to reset")
        Else: SetGadgetText(1,"Enabled"):EndIf
   
EndIf

ForEver

chris319

  • Executive Producer
  • Posts: 9622
Re: Home(made) Buzzers and Lockout Systems
« Reply #22 on: December 03, 2019, 07:44:17 PM »
It would get more complicated if you tried to do scoring with it, as you would need a way to steer the scoring to individual players and to enter a question value. Maybe have "+" and "-" buttons on screen for each player. For each player you would click "+" or "-" to add or subtract the question value to/from that player's score.

chris319

  • Executive Producer
  • Posts: 9622
Re: Home(made) Buzzers and Lockout Systems
« Reply #23 on: December 03, 2019, 08:09:25 PM »
Here I have roughed in some score displays:

If you project this, you don't want it to look clittered, so I have kept the design simple.

;LOCKOUT.PB
;CREATED ON 12/3/2019 by chris319
;LOCKOUT PROGRAM FOR GAMES REQUIRING PLAYERS TO "BUZZ IN" SUCH AS JEOPARDY!
;ACCOMODATES UP TO 3 PLAYERS BUT CAN BE EXPANDED TO ACCOMODATE MORE
;SHOWS WHICH PLAYER BUZZED IN FIRST, LOCKING OUT OTHER PLAYERS UNTIL RESET BY PRESSING SPACE BAR
;CUSTOMIZABLE IN ALL SORTS OF WAYS YOU CAN ADD SOUND EFFECTS AND SCORING
;YOU WILL NEED BUTTONS WHICH SEND NUMERIC KEY CODES TO THE COMPUTER
; https://www.compuphase.com/usbkey/usbbutton_en.htm

InitKeyboard()
LoadFont (1,"arial",24)
#H = 360: #W = 640

OpenWindow(1,0,0,#W,#H,"")
TextGadget(1, 50, 50, 400, 40,"",#PB_Text_Center):SetGadgetFont(1,FontID(1)):SetGadgetColor(1,#PB_Gadget_FrontColor, #White):SetGadgetColor(1,#PB_Gadget_BackColor, #Blue)
SetGadgetText(1,"Enabled")

TextGadget(2, 50, 100, 400, 40,"",#PB_Text_Center):SetGadgetFont(2,FontID(1)):SetGadgetColor(2,#PB_Gadget_FrontColor, #Black):SetGadgetColor(2,#PB_Gadget_BackColor, #Yellow)

TextGadget(3, 50, 250, 100, 40,"",#PB_Text_Right):SetGadgetFont(3,FontID(1)):SetGadgetColor(3,#PB_Gadget_FrontColor, #White):SetGadgetColor(3,#PB_Gadget_BackColor, #Black)
TextGadget(4, 250, 250, 100, 40,"",#PB_Text_Right):SetGadgetFont(4,FontID(1)):SetGadgetColor(4,#PB_Gadget_FrontColor, #White):SetGadgetColor(4,#PB_Gadget_BackColor, #Black)
TextGadget(5, 450, 250, 100, 40,"",#PB_Text_Right):SetGadgetFont(5,FontID(1)):SetGadgetColor(5,#PB_Gadget_FrontColor, #White):SetGadgetColor(5,#PB_Gadget_BackColor, #Black)

SetGadgetText(3,"0"):SetGadgetText(4,"50"):SetGadgetText(5,"100")

AddKeyboardShortcut(1,#PB_Shortcut_1,#PB_Shortcut_1)
AddKeyboardShortcut(1,#PB_Shortcut_2,#PB_Shortcut_2)
AddKeyboardShortcut(1,#PB_Shortcut_3,#PB_Shortcut_3)
AddKeyboardShortcut(1,#PB_Shortcut_Space,#PB_Shortcut_Space)

Repeat:
event = WaitWindowEvent()
   
If event = #PB_Event_CloseWindow: CloseWindow(1): End :EndIf

If event = #PB_Event_Menu ;KEYBOARD INPUT
shortcut = EventMenu()

      If shortcut = #PB_Shortcut_1 And locked = #False: locked = #True: SetGadgetText(2,"Player 1"):  Delay(3000):SetGadgetText(2,""):EndIf
      If shortcut = #PB_Shortcut_2 And locked = #False: locked = #True: SetGadgetText(2,"Player 2"):  Delay(3000):SetGadgetText(2,""):EndIf
      If shortcut = #PB_Shortcut_3 And locked = #False: locked = #True: SetGadgetText(2,"Player 3"):  Delay(3000):SetGadgetText(2,""):EndIf
     
      If shortcut = #PB_Shortcut_Space: locked = #False: EndIf ;SPACE BAR UNLOCKS PLAYERS
     
      If locked = #True:SetGadgetText(1,"Press space bar to reset")
        Else: SetGadgetText(1,"Enabled"):EndIf
   
EndIf

ForEver