What a crappy entry to come back into the blogging world with. But deal with it.

I’ve been working hard lately on coming up with ideas for new types of geocaches. Clever hides, good places, fun challenges, and mostly new technology that could be brought into geocaching. My best idea, or the or I’m most proud of, so far came on Shallow Esophagus which I’ll describe more in a later entry.  My most recent idea came from Momma-Cache: a concentration / memory game puzzle.

As soon as she mentioned it I loved it.  Nothing too hard.  Something everyone understands and in theory, can do.  I started working on the basic of the game a few nights ago and struggled mightily to get it to match the idea I had in my head.  In the end though, thanks to some javascript, and a lot of help from some great jquery plugins it is finally complete.

This whole thing was surprisingly easy from a technology standpoint.  Once I found the great JQuery Flip! plugin and understood the intricacies and quirks of it I progressed pretty quickly.  The biggest thing I had to overcome with the plugin is that I couldn’t get the “revertFlip” method to work properly for me.  I’m not sure if this is because I was not initializing my boxes fully, or because I’m a puttz.  Either way I found a work around by just calling the flip method again and setting the content back to blank.  No big deal.

Other things I envisioned when I pictured this in my head included the pulsating/flashing timer that would grow in intensity as time ticked away.  Once again a simple JQuery pulse plugin and liberal use of the javascript setTimeout method let me accomplish this effect.  The set.Timeout also came into play with the cards changing colors every some many seconds.  This frequency also get more frantic as time runs out.  Just a little something to add to the drama.

My last fear was that someone would be able to look at the javascript source and find the image that I’m using to display the final coordinates.  My workaround for this was to submit to a php page that would check the refferrer.  If the referrer, and another hidden variable, were correct then the image containing the coordinates would be returned.  Otherwise and image telling them they were cheating would be displayed.  Not the most secure implementation, but if someone wants to take the time to spoof the referrer and figure out the hidden field and value rather than have fun with the puzzle good for them.  Either way is the same amount of work probably.

All told I’m pretty happy with the final outcome of the project.  I wish it was a little prettier, but I’m not a UI designer so I did as good as I could with as little effort as possible.

If you would like to know more about the specifics of the implementation, or have ideas for other fun games/puzzles I could implement into a cache let me know.

If you wanna play the game click the screen shot below.  Who am I kidding…everyone wants to play the game.