📖 Pattern Recognition

The skill to recognize and understand a pattern.

Pattern recognition is the player skill to both recognize that a pattern exists and determine what the pattern is. These two aspects of pattern recognition imply that there are necessarily two aspects to any puzzle that uses it.


Pattern Detection

Before a player can analyze the algorith of a pattern they have to recognize a pattern exists. While it's easy to recognize patterns in isolated text and graphics, it can be difficult to recognize patterns in a rich environment.

Reverse Engineering

Once the player detects a pattern they need to reverse engineer the algorithm that produces it. While the algorithm can often be expressed mathematically, the output can modify any of the qualities of a puzzle piece, and often it can be reasoned about in a non-mathmetical sense.

For example, given this moon pattern:

  • 🌑️ 🌒️ 🌓️ 🌔️ 🌕️ 🌖️

This doesn't use any numbers, and we can intuitive to get to the next symbol 🌗️, even if we don't have a mathematical model of what is happening. We may not have even considered that there is an algorithm here, as our brain simply filled in the blank for us. These intuitive patterns are good for creating rewarding easy puzzles.

As the pattern gets harder, working out the algorithm becomes more difficult. Not having a mathematical base can actually make it harder, if the player does not have a mental framework to describe what is happening.

Progressively increasing the complexity of patterns can help alleviate the framework problem. By building on a core set of rules, adding new elements over many puzzles, you can train the player on how to solve them.

But, as a general rule, reverse engineering is hard. Even minor increases in difficulty can block many players from solving the puzzle.

Feedback on Working Draft

If you have any questions, need an example, or want clarification, then let me know. Ask on Discord or Twitter.

Assume everything in this reference is a working draft, there's prone to be some mistakes and inconsistencies. I figure it's best to publish and get feedback rather than write for years in secret. The terms will change, the structure will shift, and the bugs will be chased out. It'll take a while.