My Project 8: Rune Puzzle
Updated: Apr 30, 2021
Working as a more logical challenge, this puzzle forces the player to align certain runes stones together, then lock them into a list displayed on a vertical wall. Upon completing the puzzle, a pillar with chest will be activated and the player can loot it's contents, they will be one step closer to closing the final shield.
The rune circles can be activated by standing on a pressure plate at the centre of the puzzle. This allows the player to then move individual circles using the Q and E keys.
Upon lining up a set of runes with an outer symbol they will activate it. It can then be locked into the main rune list by standing on the pressure plate beneath it, seen in the image above.
Whilst beginning simple, the challenge becomes more difficult as the player completes the list, where the player must then line up two sets of runes at once.
Finally, the biggest challenge I faced with this puzzle was determining how to track each of the three rune circles. I decided that creating an array that would shift with each rotation of a circle was the best approach, to find out how to do this I researched methods for array shifting on code forums, finding a few methods from this stack overflow post: https://stackoverflow.com/questions/2381245/c-sharp-quickest-way-to-shift-array/2381397
After looking at these methods, I created my own seen in the code below. When each run circle turns there is a check to see if any of the three arrays have the same runes in a specific position then they are lit, if an outer run is also aligned it is activated and can then be locked in if needed.
Thanks for reading!