Haley, one of characters in Rich Burlew’s Order of the Stick, has recently been suffering from a psychological problem which scrambles her speech. For example, in Wednesday’s page, she attempts to say “Elan, I’m in love with you,” but actually says, Yrhw, N’u nw rdjy mnck vdg.
That example is significant, because it’s the first time I can recall seeing Haley’s dialogue in scrambled and unscrambled form. Looking at that page, some part of my brain which is evidently devoted to unscrambling ciphertext realized that the W’s in Yrhw and nw both corresponded to N’s. There was an excellent chance that Haley’s speech was being scrambled with a simple letter-substitution cipher.
Here’s the ciphertext and the plaintext, lined up for readability:
Yrhw, N’u nw rdjy mnck vdg. Elan, I’m in love with you.
Using these, we can construct a partial mapping of cipher-characters to real characters,
Now we can apply this mapping to the rest of Haley’s dialogue and see we get any further clues. This can be done by hand, but it’s pretty easy to write a program to do the decoding. Or you could be lazy like me and use
For reference, Haley’s dialogue is:
- Yrhw, N’u nw rdjy mnck vdg. Lduzrycyrv nw rdjy.
- Rdjy, rdjy, rdjy, rdjy!
- Uv ehe nb aynwp kyre fhwbdu av hw yjnr enlchcdf.
- N’u wdc fyhrrv nw cky Cknyjtb’ Pgnre hwvudfy.
- N lkyhc hc bdrnchnfy.
- N khjy h chccdd vdg’jy wyjyf byyw.
- N tnbbye h pnfr dwly.
- DT, DT, udfy ckhw dwly!
- Yrhw, nc cgfwb dgc N uhv wdc ay yqhlcrv mkhc vdg mdgre lhrr—
This descrambles to,
- Elan, I’m in love with you. _om_letely in love.
- Love, love, love, love!
- My _a_ i_ _ein_ hel_ _an_om _y an evil _i_tato_.
- I'm not _eally in the Thiev__’ _uil_ anymo_e.
- I _heat at _olitai_e.
- I have a tattoo you’ve neve_ _een.
- I _i__e_ a _i_l on_e.
- O_, O_, mo_e than on_e!
- Elan, it tu_n_ out I may not _e e_a_tly what you woul_ _all—
We’re almost done! (Fortunately for us, our initial text contained the six most frequent letters in English.) At this point, several more words become obvious. Lduzrycyrv is “completely” (thus L → C and Z → P), wyjyf byyw is “never seen” (F → R, B → S), and so forth. Eventually, we can determine the final mapping:
The three gaps correspond to F, Q, and Z, none of which occur in Haley’s dialogue on that page.
Here’s the final translation:
- Elan, I’m in love with you. Completely in love.
- Love, love, love, love!
- My dad is being held ransom by an evil dictator.
- I’m not really in the Thievks’ Guild anymore.
- I cheat at solitaire.
- I have a tattoo you’ve never seen.
- I kissed a girl once.
- OK, OK, more than once!
- Elan, it turns out I may not be exactly what you would call—
Note the “Thievks”. I’m not sure whether this is a misspelling on Mr Burlew’s part or a deliberate bit of obfuscation.
At first, I thought this might be the key to all of Haley’s dialogue, but it was not so. Haley’s dialogue on Page 303, the next most recent where she appears, consists mostly of laughter, “Ha ha ha!”, which is given as Gv gv gv, not Kh kh kh. This means that each page must be deciphered individually.
Deciphering page 285
I kept my intermediate guesses for page 285, so I’ll walk you through my deductive process.
The ciphertext is, Rst azq’e tqmgowezqm kg, ws hge kg xtwe wzr efze rst’og z couyum lueaf zqd rsto efuyfw hssp cze uq efze zokso. Unlike the previous example, we have no textual clues to go on.
I started by guessing that azq’e descrambled to “don’t”. Applying this to the rest of the sentence, I got:
___ don’t _n____ton_ __, __ __t __ ___t _o_ t_ot ___’__ o ______ __td_ on_ ____ t_____ ____ _ot _n t_ot o____.
Not particularly helpful, so I tried another guess. Since an apostrophe followed by two letters is almost always “’re”, I added that to my mapping.
___ don’t _n_er_ton_ _e, __ _et _e ___t _o_ t_ot ___’re o _r____ __td_ on_ ___r t_____ ____ _ot _n t_ot or__r.
At this point, I noticed the single-letter word “o” in my output (corresponding to “z” in the input). The only single-letter words in English are “I” and “a”, so “z” must be “a”. I quickly retranslate azq’e as “can’t” and see what that gets.
___ can’t _n_er_tan_ _e, __ _et _e ___t _a_ t_at ___’re a _r____ __tc_ an_ ___r t_____ ____ _at _n t_at ar__r.
Much better. Now it’s clear that the third word is “understand”.
__u can’t understand _e, s_ _et _e _ust sa_ t_at __u’re a _r___d __tc_ an_ __ur t____s ____ _at _n t_at ar__r.
So “t_at” has to be “that”:
__u can’t understand _e, s_ _et _e _ust sa_ that __u’re a _r___d __tch an_ __ur th__hs ____ _at _n that ar__r.
The “__u” is “You”:
You can’t understand _e, so _et _e _ust say that you’re a _r___d __tch an_ your th__hs _oo_ _at _n that ar_or.
The “_e” is “me”, the “_et” is “let”, and the “_ust” is “just”:
You can’t understand me, so let me just say that you’re a _r___d __tch an_ your th__hs loo_ _at _n that armor.
Since Haley is clearly insulting Miko, “th__hs loo_ _at” is probably “thighs look fat”:
You can’t understand me, so let me just say that you’re a frigid _itch an_ your thighs look fat in that armor.
Presto, we get “frigid” for free. And it’s pretty clear what sort of frigid thing Miko is:
You can’t understand me, so let me just say that you’re a frigid bitch an_ your thighs look fat in that armor.
Now we hit a snag. The final partially-scrambled word is “zqd”. The only word that makes sense in the context is “and”, but we’ve already established that D is encoded as M, not D. This is probably another misspelling.
This, incidentally, is why people don’t use letter-substitution ciphers for actual security purposes. Even playful judges use harder ciphers.