I have a game that relies heavily in the early stages on gathering information. You do this by reading about stuff and asking people about stuff. In this context, ‘stuff’ is a noun. The noun can refer to (a) an object that exists somewhere in the game (has_not_created returns false), (b) an object that has not yet been created (has_not_created returns true), or (c) something that doesn’t exist anywhere in the game. For (c), I get this to work by adding dictionary words for the nouns I want to use in the vocabulary section. This is working well.
I am using commands like ASK <character> ABOUT <topic> and ASK ABOUT <topic>, where the first command diverts to the second using set_sentence "ask about $2". This part works flawlessly.
I am using the new Beta 65n with the new experimental_new_parser = true in game_settings. This works a treat and verb, preposition1 and noun1 are always correctly identified. The problem is that the subject s1() does not appear to be identified in scenario (b). I have tried printing s1(), but it always prints ‘unknown’, even for known objects, yet s1_has_trait works for scenario (a), but not for scenario (b). I have found a workaround for scenario (b) by putting all non-created objects in a dummy room, but that means making extensive changes elsewhere in the code, as I can no longer use has_not_created and destroy.
Can you explain what’s going on regarding how Adventuron identifies the subjects s1() and s2(), how I can print them and why s1_has_trait doesn’t work in scenario (b) without doing the workaround?