Parser games need abbreviations

I’d say it probably should detect a full-stop and the word THEN as beginning a new command (and hence a place for verb substitutions).

People mentioned TAB completion, and I think an interpreter could get quite far by itself (without explicit help from the game code) if it (a) did common verbs at the start of a command, and (b) completed based on words that are “on the screen” or have been printed “recently” for the noun-y parts of a command.

2 Likes

That’s what i do with “TAB”.

Here, try it out with “Advent”;

Advent

Press tab to;

  1. empty line → re-edit/again
  2. type single letter → suggest verb
  3. type start of word → word complete

Press TAB again to cycles in-place suggestions. Completion works without knowledge of the game by “reading” the text. Proximity is used as priority.

3 Likes

FWIW, ‘x’ works in Gargoyle. Must be a terp thang.

> x lawn
The lawn is well manicured.

> version
DEADLINE: An INTERLOGIC Mystery
Copyright 1982 by Infocom, Inc. All rights reserved.
DEADLINE and INTERLOGIC are trademarks of Infocom, Inc.
Release 27 / Serial number 831005

2 Likes

Yeah, that’s this feature. Sometimes useful, sometimes very confusing!

2 Likes

It’s likely that feature originally confused me, but it must have been some time ago. About 6 years ago I switched from Gargoyle to SDL Frotz for all Z-code games. Frotz has that option, but it’s not the default.

1 Like

It does detect full stops! No THEN at the moment, I’m afraid.

But here’s something: These interpreter-provided abbreviations are currently used only for Infocom version 1-4 games. However, when I originally implemented them, it was for all games. That, I imagine, is the main reason I limited it to the start of the line: less of a chance of screwing up some arbitrary game out there. I only later limited it to specific games.

With the Infocom v1-4 limitation in place, it may be feasible to replace all instances of these abbreviations. The only reason not to is if there is an Infocom game which requires the use of x, z, g, and/or o during gameplay, but does not have that single-letter word in its dictionary (Bocfel will not do a replacement if the abbreviation is in the dictionary).

So, does anybody know if there are any Infocom v1-4 games which require being able to type in one of these abbreviations, without it being in the dictionary? Something reminiscent of Zarf’s Starcross-like example of COMPUTER, X is 135 where, I suppose, the game isn’t using the dictionary but is instead parsing manually, for some reason.

Because if a wholesale, anywhere-in-the-input replacement of these abbreviations won’t break any Infocom v1-4 game, then I see no reason to limit it to the start of a line/sentence anymore.

It could cause weird behavior in Spellbreaker if you decide to name your cubes with single letters, but even then parsing wouldn’t break, only the description of the cubes in your inventory.

Not quite the same, but in Bureaucracy, there’s a scene in an airplane where you refer to SEAT A or D or whatever. Is that what you meant?

1 Like

Nice example, yeah; since it’s not likely to be run into, and as you note, not hugely problematic in any case, it may well not be a blocker for this feature, but I’ll have to think about it.

Yes, this is exactly the kind of thing I’m thinking of. Thankfully, in the case of Bureaucracy, we’re safe: it supports abbreviations itself so Bocfel wouldn’t step in and cause issues.

2 Likes

Won’t there need to be either a full stop or a then in order for another verb abbreviation to be changed?

(As an aside, I would hope that nobody treats that ZX Spectrum list seriously. It was just created by user scores added to the database and is definitely not a curated list. There’s a lot of crap on there. And I’m speaking as the actual author of a couple of games I can see appear near the top! :wink: )

3 Likes

I can see the focus here is on single letter abbreviations, but vintage players sometimes have random parser demands.

I remember a good few hours of attempted bug fixing when I was working with John Wilson on a game. He kept telling me something wasn’t working for him but for the life of me I couldn’t replicate the bug.

It turns out that, because he exclusively wrote and played 4-letter parser games, he had always typed just EXAM for EXAMINE. The parser we were using was 5 letters and, although it would accept EXAMINE, X, and even EXAMI, I hadn’t actually added a synonym for the truncated EXAM.

(As a slight digression, if you get annoyed with a parser game not having your favourite abbreviation, you’d be extremely frustrated with a lot of old-school adventures that don’t implement both GET and TAKE. :slight_smile: )

2 Likes

Petr has written a lot of adventures for the Spectrum. Spectrum Computing - ZX Spectrum games, software and hardware / https://petrkain.pohroma.de/

He’s not using a system I recognise (such as GAC, Quill, or PAW) so I presume it’s his own code.

In game, the command VOCABULARY will list all the commands & abbreviations it uses.

3 Likes

I had one tester who would always default to GRAB, so now I’ve been implementing that into all my Dialog games. There are really so many ways to say TAKE in English!

3 Likes

Yoink! :grin:

2 Likes

I would never type TAKE unless the game doesn’t accept GET.
TAKE is 25% worse than GET.

3 Likes

You mean 33.3%, right? There’s room for a really pointless argument here!

5 Likes

I always type TAKE, extra character be damned.

agree. GET can be used in hundreds of different ways and, in my little brain, is inherently ambiguous.

1 Like

Yes! Might just be me but TAKE has a greater sense of autonomy while GET seems like I’m just receiving something.

2 Likes