New-ish Inform writer here. I’m doing a game where the player needs to collect a full octave’s worth of bells for a task. I figured, to be kind to the player, I’d use a C scale, because everyone can remember that one: C, D, E, F, G, A, B.
I began with:
Pitch is a kind of value. The pitches are Aa, B, C, D, E, F, G, and untuned.
(One of the bells is found untuned, and can be tuned later.)
(This was the moment I realized I was in trouble: the note “A” looks like the indefinite article to the parser AND the player. Uh oh.)
A bell is a kind of thing. A bell has a pitch called the tuning. The tuning of a bell is usually untuned.
Ideally, I wanted these bells to be identical, so the user could only tell which was which by listening to them, but I realized that was more torture than it was worth. So I tried to define them this way:
On the workbench is a bell called A-bell with printed name "Bell A". The tuning of A-bell is Aa. On the workbench is a bell called U-bell with printed name "Untuned bell". The tuning of U-bell is untuned.
This gave me the error: Problem. You wrote ‘On the workbench is a bell called A-bell with printed name “Bell A”’, but this seems to give something a name which contains double-quoted text, which is not allowed.
I am baffled, as the examples of using printed name all use quotation marks. What’s going on here?
I’m also making this thread not only about this one error, but to ask: can you forsee any other problems this “Bell A” naming scheme? I’m worried I may have gotten in over my head fighting the parser over this.