This project was originally made for an arduino, and I am migrating it to Python. Therefore some things are set up in ways that don't really make sense for Python, like a function that just prints out information to the terminal. But I plan to slowly evolve this project into a python-centric project that utilizes the core structure and functionalities of python instead of the core functionalities and architecture of Arduino.
Originally it was an arduino library, hence the library theme. This theme doesn't really hold up with Python "packages" so I'm still working on that. Also, writing a package for all of this might not be the best way to approach it, but I'm simply starting with as close to a 1 to 1 migration from Arduino to python as I can get and then I'm slowly adjusting and improving the code/experience.
Also, there are some comments in this intro that don't really make sense when talking about virtual "locks" instead of physical ones, that's just my humor from having been in a bunch of escape rooms and they always say the same things in the instructions, please humor me :)
If you want to try to solve this escape room for yourself then don't look at the scratchPad.py file, because that is where I am working out the solution order for various things! Ignore that file, and have fun making your own scratch pad of ideas on how to escape!
Welcome to The Library! This is an ArduinoPython-based escape room built by me, Jason! You'll need to use your programming skills to program the included arduino, and use the included library .cpp and .h package files to solve all the challenges and "escape"! I have no idea how easy or hard it will be, nor how long it will take in total. But I hope it's fun!
You were walking along one day downtown when you saw an eclectic looking bookstore. Being curious, you stepped inside to see what it was like. As you entered, a friendly employee at the front desk said "Welcome to The Virtual Library. If you need any help as you're browsing, just find a staff member."
"Oh", you thought, "it's a library. Interesting name." and you meandered to the interior. As you browsed you started seeing lots of code. At first it was just coding books, but soon enough there was code written all over the place, and you felt as if maybe you were turning into code yourself. Weirded out by this, you decide you're all set with this place and you looked for an exit. But you had wandered deeper into the library than you thought and couldn't quickly find a way back to the front. You looked around for an employee, but saw none. You realized that you're stuck in here! You've got dinner plans with friends in an hour so you need to get out by then or they'll all enjoy their lovely dinner without you! Use the library to your advantage to figure out how to get out of here.
You realized that this is a peculiar library, and feel that if you change any of the code you'll end up exiting into a different reality, one full of cheaters and people who give up. And you don't want that! So be sure to not change any of the code in this library. Also, that employee at the front desk looked pretty scary, and you fear their wrath. So don't climb on any of the objects or apply unnecessary force to open locks. If you break anything you'll get beaten up, and then kicked out of the library into the cheater dimension. This library feels like a place that has lots of information and descriptions that will only reveal themselves to you when you are ready. So if you try something and are met with a text response that is all jumbled up and makes no sense, you likely haven't done some necessary requirement for that text to become unjumbled/deciphered. Look around and try something else, and then come back to it and maybe it will be comprehensible english. One last tidbit of information that you saw on a sign as you were entering the library is that if you find any directional locks, be sure to press it twice to clear it before entering a new combination.
Good luck! And hopefully you can escape in time to get to dinner!