I had a strange bug happen with a TADS game. I typed this by accident:
,l
Live footage showing how this bug happened
Anyway, the game threw an error about accessing properties of nothing or no one and crashed.
I thought it was just that game, but I opened up another game (Jim Nelson’s IFComp game) and tried the same thing. It threw the same error, but didn’t crash due to some fancy code Mr. Nelson had.
Someone on discord suggested this was due to the game thinking you were addressing a non-existent person, but also suggested I post this here so others are aware of it.
Sounds like a parser bug in adv3Lite. I can take a look, but @Eric_Eve will probably have an easier time of it.
This is something I’ve been toying with to see if it holds up. So far, it’s been helpful. If it survives the comp, I’ll package it up and see if anyone else wants to use it.
Does it ever make sense to begin a command line with punctuation? On the assumption that it doesn’t the easiest fix is probably to add a StringPreParser that strips it out. A quick test suggests the following does the job.
adv3 catches this kind of input with a message similar to “You seem to have left out some words…”
There is a simpleNounPhrase(empty) grammar (with badness 600) whose resolveNouns calls emptyNounPhrase on the ResolveResults object, which throws a ParseFailureException leading to the above message…