Yes, the text in the quotes is just narrative only.
The id of the object is a shorthand for the associated adjective and noun, but specifying explicit adjective and/or noun will override this behaviour.
You can also switch off this entity_id association in the game_settings {} section, but it is on by default, and I think it's a sensible default.
objects { noun : scenery "anytext"; adjective_noun : scenery "anytext"; anything_you_line : scenery "anytext" noun="lump" adjective ="yellow"; }
You can't specify multiple nouns or multiple adjectives per object, but you can create noun groups and adjective groups that the parser will automatically collect together:
vocabulary { : verb / aliases = [pet, stroke] : noun / aliases = [cat, creature, feline] : adjective / aliases = [yellow, golden] }
In the : match "" {} section, you can use any item in a noun group to match on, and it will treat it the same as any other member of the group. That is : match "stroke cat" {} is exactly the same as : match "stroke feline" {}, the player could type STROKE CAT, or STROKE FELINE, or PET CAT, or PET FELINE, and it both these match statement would match all 4 of these inputs.
If you want a completely different noun to represent the same object, but the noun is not a synonym, then you can also chain together nouns in match statements like this:
// You may not want to put "lump" as a synonym for cat, therefore you can just list it as a different match item
: match "stroke cat; stroke lump" { : print "Cat Purrs." }
I'll be using questions in this thread to bolster the documentation so thank you for reminding me I need to improve this.