There's another version I found online, but it's the DOS version. In that version, it only used the first three letters.
Typing JOYOUS CELEBRATION
would be understood as JOYSTICK
.
The DOS version, however, is different than the CPC version.
While the source needs to be analyzed to get the actual algorithm (I think they rolled their own), it is possible to analyze the behaviors to get a better understanding. (Clicking the pause button in the lower left brings up something. I haven't been able to actually get anything meaningful from it however.)
[A]ny one missing letter or an extra letter still allows the command to be understood
This isn't 100% true. When the command is five letters or less, it will refuse to recognize the command when the first letter is replaced with the second. In other words, QQUIP
fails to be recognized as EQUIP
. The command would still be recognized if any other character is substituted instead. If the command is six letters or longer, it will recognize the command either way (AAUNCH
is recognized as LAUNCH
).
This strange behavior can be triggered in longer words if there is another mistake. For example XTATU
is fine, but TTATU
fails.
A similar thing happens with the last and second to last characters. When the second to last character is substituted with the last character, the command fails. PDD
and HEPP
are not recognized, but POD
and HEMP
are fine. Interestingly enough, this does not affect 5 letter words, since EQUPP
is accepted.
(I suspect these two anomalies are bugs, but they do give insight into how it works.)
Longer words can usually be recognized even when more than one character is wrong, but only in some circumstances. IIGHTS OND
is recognized, but GTHS ON
fails. SSIGHTSOND
is recognized too.
Working from your image, I found that PUSS
, and PUS
pause the game. It seems that it is possible to omit two characters from a word of 5 or more letters if no extra characters are added, and each letter is no more than 1 place away from its original position.
Again, the behavior of longer words shows that letters that are slightly misplaced are more often understood than random letters. For example, E=ACTOR
is understood, but MMACTOR
is not.
Another strange fact is that leading spaces are ignored, but trailing (and inter-word) spaces are not. When they are not ignored, they are counted as any other wrong character is. That means ␠␠␠␠␠␠␠PAD
is recognized, but PAD␠␠
and P␠A␠D
are not. Like POD
, P␠D
will pass. Omitting a space (in SIGHTS ON
or SIGHTS OFF
) counts as a wrong character.
It is interesting to note that SIGHTS
and SIGHTS␠
are accepted, but SIGHTS␠␠
is not.
Periods are strange; .
is understood as HELP
, L.
is understood as LAUNCH
. I think .
is like a wildcard, and the list seems to be scanned left to right top to bottom (RODS
before REACTOR
). Note that it ignores anything after the first .
; .MAP
is the same as HELP
.
Another interesting thing I noticed is that SIGHTS ONF
,SIGHTS O
, and SIGHTS OF
are accepted as commands. I think they all may map to SIGHTS ON
, but I have no clue how to check that.
LU
is not close enough to match.UNCH
isNOT UNDERSTOOD
butUANCH
(L
missing,A
andU
the wrong way around) launches the skimmer.