Ghost

Hello, all. The comic was posted a bit late last night. The comics are normally posted by the server automatically at midnight. However, I apparently typo’d when I last edited the queue, and I’m on vacation away from the net so davean had to fix it manually. My bad.

Moving on:

I’ve solved Ghost. I’m not the first person to do this, according to Wikipedia, but I think I’m the first to solve it on an airplane. The result: using the wordlist that ships with Ubuntu, it’s a win for the first player, but only if he plays H, J, M, or Z. The other letters are all wins for the second player (I hear if you use the Scrabble wordlist, it’s always a win for the second player).

Ghost is a word game that my brother and I learned as kids from the show Ghostwriter. It’s unusual in that it’s the only nontrivial, non-physical game I know how to play without any game pieces, paper, or anything else — all you need is communication (I never got the hang of blindfold chess — somehow the board always ends up with the wrong number of squares and I find mysef with three bishops). We’d play Ghost, whispering letters back and forth, when we had to sit quietly at formal events.

To play Ghost, you alternate saying letters. The first person to either (a) spell a word, or (b) create a string that cannot be the start of a word, loses. So you alternate building a word, and you have to always be working toward a word, but you can’t be the one to end it. Sample games, with players one and two alternating letters:

G-A-M-E — Player 1 loses by spelling “Game”

A-B-S-O-R-B — Player 2 loses by spelling “ABSORB”

B-Z-”Challenge” — Player 1, seeing “Z”, says “Challenge.” meaning “I think you’re not building toward a word. Name a word that starts with ‘BZ’ and prove you’re not just making stuff up.” Player 2 can’t, and loses. If he could, he’d win.

Note: We don’t count proper nouns or words under three letters.

I’ve often thought about how easy it would be to solve Ghost. We already knew a few simple winning plays — if the first player plays L, you can reply with another L, forcing them to spell “LLAMA”. On a plane trip with my family this week I decided to work out the full solution. I only had an hour or two of battery life left, and I’m still new to Python, so it was a race against the clock. It’s not too bad a problem in itself, but I wanted an optimal solution with only a few things to memorize, which meant pruning the tree carefully. My battery meter read “0% charge” as I scribbled the winning wordlist onto a sheet of paper.

Here are the words you can spell towards to force a win:

First player:

[hazard, haze, hazily, hazy, heterosexual, hiatus, hock, huckster, hybrid]
[jazz, jest, jilt, jowl, just]
[maverick, meow, mizzen, mnemonic, mozzarella, muzzle, muzzling, myth]
[zaniness, zany, zenith, zigzag, zombie, zucchini, zwieback, zygote]

Second player responses:

a :: [aorta]
b :: [black, blemish, blimp, bloat, blubber]
c :: [craft, crepe, crept, crick, crozier, crucial, cry]
d :: [dwarf, dwarves, dweeb, dwindle, dwindling]
e :: [ewe]
f :: [fjord]
g :: [ghastliness, ghastly, gherkin, ghost]
h :: There are no winning responses.
i :: [ilk, ill]
j :: There are no winning responses.
k :: [khaki]
l :: [llama]
m :: There are no winning responses.
n :: [nylon, nymph]
o :: [ozone]
p :: [pneumonia]
q :: [quaff, quest, quibble, quibbling, quondam]
r :: [rye]
s :: [squeamish, squeeze, squeezing, squelch]
t :: [twang, tweak, twice, two]
u :: [uvula]
v :: [vulva]
w :: [whack, where, whiff, who, why]
x :: [xylem]
y :: [yield, yip]
z :: There are no winning responses.

It’s satisfying to have the tree, but my brother is sad because I ruined our game. Wikipedia suggests a few variants on Ghost. Can anyone suggest any other replacement games playable by voice and memory only?