Where Is My Heart?

(game, twilio, arduino)

Where Is My Heart - The Last Puzzle

One thing I’ve been quite interested in over the past year is the rise of video games like JS Joust, where the computer/console is a very small part of the game experience (in Joust, it’s only there to keep score - all of the game interaction takes place on the PS3 Move controllers and the people playing). Although I haven’t actually played any of them, they do seem quite enjoyable, and I’ve been trying to make a few myself. Where Is My Heart? is my third attempt, and the first one I’ve finished (the other two - Shout To The Top and The Bull Run aren’t quite done yet.).

Where Is My Heart? concerns the tragic tale of KLF-73, a droid returning from deep space only to be raided by Space Pirates. All it wanted was to return home to its companion droid, but the pirates stole its heart module. The task of the players is to receive the incoming messages from KLF-73 and work out the location of the heart, avoiding traps set by the Space Pirates.

At its heart, it’s little more than a simple scavenger hunt; KLF-73 gives out clues which lead to codes, and when all the clues have been found, the final location is revealed. But the method of delivery is slightly different; KLF-73 is actually a piece of code sitting on the Internet, a bot that can respond to questions and sends out SMS messages via Twilio to all the players in the game.

Then there’s the final piece - a trap sprung by the pirates in one last attempt to prevent KLF-73 from getting the heart. In the real world, this presents itself as a box containing an 8x8 LED matrix, an Arduino UNO, and four coloured buttons. The LED matrix responds to button pushes, either displaying an X when an incorrect combination of buttons is pressed, or a flashing heart animation when a player enters the right sequence and completes the game.

Behind the scenes, there’s a rudimentary admin interface that shows a log of all SMS messages sent and received, as well as some buttons to send ‘fluff’ to the players, and a textbox for detailed replies in case the a player asks a question that the bot can’t answer (if it can’t work out what to say, it just sends a message saying ‘Processing’ and leaves it up to the admin to work out a suitable response. This only happened a few times in the course of the game).

It also helps and hinders when it’s snowing heavily. Makes set up annoying, but does add an air of magic to the proceedings. It does make you worry for the fate of the increasingly-sodden electronics package. Initially, the codes decrypted to ‘THEGREENWALL’, but I sent messages for people to come to Blue Coffee Café instead to play the final part of the game.

If anybody is interested, I’ll throw the Ruby and the Arduino code up on GitHub, though I’ll add in advance that I threw it together in a few hours, so both are rough and the bare minimum to get the game going!

I’m hoping to get Shout To The Top and The Bull Run (for the latter, think of a cut-down Knightmare and you’ll have some idea about my plans) as well as a few whisper board games whisper in time for April. Maybe have something fun going on for my birthday…

blog comments powered by Disqus