A | 00000 |
---|---|
B | 00001 |
C | 00010 |
D | 00011 |
E | 00100 |
F | 00101 |
G | 00110 |
H | 00111 |
I | 01000 |
J | 01001 |
K | 01010 |
L | 01011 |
M | 01100 |
N | 01101 |
O | 01110 |
P | 01111 |
Q | 10000 |
R | 10001 |
S | 10010 |
T | 10011 |
U | 1010 |
V | 1011 |
W | 1100 |
X | 1101 |
Y | 1110 |
Z | 1111 |
On the Subject of Pokémon Sprite Ciphers
Because memory on the Nintendo Game Boy is at a premium.
This module contains 3 screens, a keyboard, 2 arrows, and a submit button that displays the current page you’re on.
Pressing the left or right arrow takes you to the previous or next page. There are 2 pages.
To disarm the module, decrypt a word using the following five steps. Once you have the decrypted word, type it in using the keyboard. When you start typing, the screens go blank and the bottom screen will show what you are typing.
To clear your input, click one of the arrows.
Once you are satisfied with your input, press the button labeled “SUB” to submit your answer.
Step 1: Encrypted Binary Retrieval
For this step, use the letters from the top, middle and bottom screens on page 1 and the top screen on page 2. Concatenate them in this order and convert this encoded string to binary by replacing each letter with a binary code from the table on the right.
Step 2: Run-Length Encoding Decryption
First, remove the first bit. If it’s a 1 bit, you will start in raw mode; otherwise, in RLE mode. Afterwards, the two modes simply alternate.
Raw mode: Read pairs of bits until you encounter a 00 pair. Leave these bits intact, but remove the 00 pair.
RLE mode: Let n be the number of 1-bits from the current position, plus one. (Note that if the next bit is 0, then n = 1.) Form a binary number from the next n bits (this will consist of all 1-bits plus a single 0-bit), and another number from the n bits following that. Add those two binary numbers. Add one. Multiply by 2. Then replace all of these 2n bits with that many 0-bits.