If a particular verb has two different grammar lines associated with it, each using a [text] token but one also appending a prepositional phrase, the one with the prepositional phrase take priority when reading the player's command. The parser will automatically attempt to match a second noun from the player object's environment even when the simpler grammar line does not require this.
In the provided example, at least the final "yell hello" command would be naively expected to match the yelling specifically action. Instead, the parser generates an answering yourself that action.
Steps to reproduce :
"Example" by "Otis"
Place is a room.
Other Place is east of Place.
Bob is a man in Place. "Bob is here, straining as usual to hear you through his ancient but serviceable earhorn."
Yelling specifically is an action applying to one topic. Understand "yell [text]" as yelling specifically.
Report yelling specifically:
say "Your yelling goes unnoticed."
Understand "yell [text] at/to [someone]" as answering it that (with nouns reversed). [This doesn't work as intended because its grammar line was compiled ahead of the one for yelling specifically, and this one is grabbing any command that would match the yell specifically format.]
After answering Bob that something:
say "Bob mutters to himself. '['][topic understood in sentence case]?['] What kind of nonsense is that?'"
test me with "yell hello / actions / yell hello / e / yell hello / showverb yell"
Additional information :
I did not find any sections of the current documentation that explain why this should be or indicate that this is a limitation by design. If this is working as intended, please construe this report as a request for clarified documentation, instead.
Reported by : otistdog
Description :
If a particular verb has two different grammar lines associated with it, each using a [text] token but one also appending a prepositional phrase, the one with the prepositional phrase take priority when reading the player's command. The parser will automatically attempt to match a second noun from the player object's environment even when the simpler grammar line does not require this.
In the provided example, at least the final "yell hello" command would be naively expected to match the yelling specifically action. Instead, the parser generates an answering yourself that action.
Steps to reproduce :
Additional information :
I did not find any sections of the current documentation that explain why this should be or indicate that this is a limitation by design. If this is working as intended, please construe this report as a request for clarified documentation, instead.
imported from: [Mantis 1477] Understand lines using [text] token compete in unexpected ways