So I had an idea for a Trunk or Treat game and I had to build it. Inspired by the game Operation with enhancements for multiple faults before a game over, lots of gameplay sounds, and LED blinking patterns.

I joked with the other parents in our den that I wanted to go to "The Nationals" for Trunk or Treating. I don't think that exists, but the game does!

Each of the bones is for one of the 12 words in the Scout Law: Trustworthy, Loyal, Helpful, Friendly, Courteous, Kind, Obedient, Cheerful, Thrifty, Brave, Clean and Reverent.

It was a heck of a lot of work, but it's been a really fun process getting carried away with imagination and learning a lot along the way: wiring and coding up an Arduino, designing and building a PCB in KiCad, and a lot more.

As a software engineer, I have to admit the code itself is pretty gross, but it mostly does the trick. There is room for improvement!

Playthrough:

LEDs quickly cycle through lighting up each of the 12 bone boxes one at a time, randomly stopping on one.

Play a recording of one of our Scouts reciting the Scout Law word corresponding to the lit up bone.

Start playing a randomly selected Halloween themed song.

The player uses the attached metal tongs to try to remove the lit up bone.

Each time the player touches the edge of the bone box, a randomly selected warning sound is played. These sounds are recordings of our Scouts making spooky sounds. Change the color of the nose to correspond to the warning level (green, orange, blinking orange).

After playing the warning sound, resume playing the theme song.

If the player gets 3 warnings, the game is over. Turn the nose red and play a short game over song. Start a new game.

If the player successfully removes the bone, trigger a separate switch to play the win game song and have all the LEDs light up. Start a new game.