Skip to content

OmniCache Mystery Cache

Hidden : 2/1/2013
Difficulty:
4 out of 5
Terrain:
1.5 out of 5

Size: Size:   other (other)

Join now to view geocache location details. It's free!

Watch

How Geocaching Works

Please note Use of geocaching.com services is subject to the terms and conditions in our disclaimer.

Geocache Description:

A programming puzzle in Perl with an easy physical hide.

My first placed cache.  I wanted something that represented me, so I chose a computer programming puzzle.  The bug itself is one that drove me nuts thanks to a coworker so I decided to share my pain with others.  Computer-related puzzles also seem rare so I thought I'd put one out there.  The guys at the nearby APL should hopefully enjoy it.  The hide itself should be fairly easy for experienced cachers but is also an homage to the first of this type of cache I found when I starting geocaching.  The difficulty is purely because of the domain knowledge required to solve the puzzle.  The cache name is named after my place of work, also near by.  And the puzzle contains a nod to one of my favorite local cache creators :)  Enjoy.

Warning: Hint provides clues for both the puzzle and the hide.

==================================


# This perl 5 program is pretty well documented, but contains a bug that keeps it from doing
# what it says it should be.  Finding and fixing the bug will cause the output to correctly print
# out the last 3 digits of the 
west coordinate
 
# Take scalars, concatenate them in reverse order to get a bit string (1s and 0s) 
# Turn that bit string into an integer, and XOR it for the answer
sub pandasAreSneaky {
  my ($a, $b, $c, $d, $e, $f, $g, $h) = reverse @_;
  my $string = $a . $b . $c . $d . $e . $f . $g . $h;
  $integer = unpack("N", pack("B32", substr("0" x 32 . $string, -32)));
  print "The last three digits of the west coordinate are: ".  ($integer ^ 669) . "\n";
}  
 
# Map over a list of integers.  The map should return a list of 1s and 0s.
# 1s for evens or 0s for odd numbers. Lastly pass in a raw "1" character
pandasAreSneaky( map { 0+!($_ % 2); } qw(2 3 4 5 6 7 8), "1" );
 
# Once you have the west coordinate you can XOR it with 546 and get the last three of the north


You can check your answers for this puzzle on GeoChecker.com.

Note: Fixed GeoChecker link. I had the coords entered backwards, doh! Thanks to mmammel for discovering this. Also grats to mmammel for FTF :) 3/1/13 - Bumped difficulty up to 4 since there's only been 1 find.

Additional Hints (Decrypt)

Chmmyr: Guvf pna or svkrq jvgu n fvatyr cnve bs cneragurfvf. Uvag: Zntargvp

Decryption Key

A|B|C|D|E|F|G|H|I|J|K|L|M
-------------------------
N|O|P|Q|R|S|T|U|V|W|X|Y|Z

(letter above equals below, and vice versa)