Skip to content
Lymm edited this page Nov 9, 2025 · 7 revisions

This is a work in progress, I still have a lot to add. So far I've just been filling out the pages I expect to have, though not all of them will have equally long explanations.

The general idea is that this is supposed to be a wiki that explains the history and progress on the eye messages, while also being a more general reference for the group-based ciphers that have been invented along the way and have an extremely rich space of possibilities for interesting puzzles. Because of this, there is some information here which is not really related to the eyes at all and is just to help explain what groups and permutations are, since I know it's not a commonly taught topic. Even for me, the extent of my formal education in group theory was maybe a couple of college courses.

By presenting this information as a wiki (rather than the monolithic 100+ page document it was on a course toward being), I hope you can browse and jump between pages as needed to understand the topics.

Recommended starting points (though note these are still WIP):

  • Timeline for a historical overview of the progress points
  • Generation for how the eye messages are placed in the world, and a link to the tool to help find them in your game
  • Trigrams and Reading Orders if you still don't know how eyes translate into numbers
  • Substitution Cipher for an overview of why the eyes can't be a monoalphabetic substitution cipher, and what kinds of substitution ciphers they can be
  • Isomorphs (Gap Patterns) for the main unusual property the eyes have which has helped us narrow things down a lot
  • Message Features for the key properties/features of the messages which will be useful for narrowing things down
  • Isomorphic Cipher Hierarchy for the final result of the chain of steps that led toward creating ciphers that reproduce all the properties of the eyes

Despite this, the eyes still aren't solved yet! It's a hard puzzle!

Our current best guess is that the eyes use something equivalent to a group autokey (GAK) cipher, with the underlying group being the symmetric group $S_{83}$, consisting of all permutations of an alphabet of 83 symbols. The most likely implementation of this used by Petri was some kind of deck cipher, where there is a deck of 83 labeled cards where each plaintext letter causes the deck to get shuffled in a particular way.

The bad news is that there are a lot of possible ways of shuffling a deck this large, and we don't know how large the plaintext alphabet is (so how many distinct shuffles we would need to determine), and we also don't even know the language of the plaintext. The good news is that there is some evidence that the content of the eye messages narrows the options down to deck permutations which are "not too complicated".

In any case, we could still use some help.

Messing around with the idea of a graph of the wiki structure... Felt fun, might delete later because it will probably end up being too hard to follow. (Plus generating it manually is kind of silly)

graph TD
  Generation-->SharedSections
  SharedSections<-->MessageStarts
  SharedSections-->Trigrams
  MessageStarts-->Trigrams
  Trigrams<-->ReadingOrders
  NoDoubles-->Isomorphs
  NoDoubles-->ReadingOrders
  FrequencyAnalysis-->ReadingOrders
  FrequencyAnalysis-->Trigrams
  FrequencyAnalysis-->Isomorphs
  Groups
  click Generation "https://github.com/Lymm37/eye-messages/wiki/Generation"
  click SharedSections "https://github.com/Lymm37/eye-messages/wiki/Shared-Sections"
  click MessageStarts "https://github.com/Lymm37/eye-messages/wiki/Message-Starts"
  click Trigrams "https://github.com/Lymm37/eye-messages/wiki/Trigrams"
  click ReadingOrders "https://github.com/Lymm37/eye-messages/wiki/Reading-Orders"
  click NoDoubles "https://github.com/Lymm37/eye-messages/wiki/No-Doubles"
  click Isomorphs "https://github.com/Lymm37/eye-messages/wiki/Isomorphs-%28Gap-Patterns%29"
  click FrequencyAnalysis "https://github.com/Lymm37/eye-messages/wiki/Frequency-Analysis"
  click Groups "https://github.com/Lymm37/eye-messages/wiki/Groups"
Loading

Clone this wiki locally