I’ve been poking at this in Workbench with adv3lite, and wondering if ‘over’ needs some special handling like other prepositions in grammar.t. But then I noticed you see the same behavior in a drop action if you modify the VerbRule like,
VerbRule(Drop)
('put' | 'drop' | 'put' 'down' | 'set' 'down') multiDobj // <-- adding 'put'
| ('put' | 'set') multiDobj 'down'
: VerbProduction
action = Drop
verbPhrase = 'drop/dropping (what)'
missingQ = 'what do you want to drop'
The Starting Location
Add your description here.
You can see a cow here.
>put down
You see no down here.
>put
What do you want to drop?
>
So short of messing with prepositions, what if we give a hint to the parser, like @Harlock said in the original post, but just in one rule?
VerbRule(JumpOver)
([badness 500] 'jump' | 'jump' 'over') singleDobj
: VerbProduction
action = JumpOver
verbPhrase = 'jump/jumping (over what)'
missingQ = 'what do you want to jump over'
dobjReply = singleNoun
>jump
You jump on the spot, fruitlessly.
>jump over
What do you want to jump over?
>jump over cow
It is pointless to try to jump over the cow.
>jump cow
It is pointless to try to jump over the cow.
>jump over
What do you want to jump over?
>cow
It is pointless to try to jump over the cow.
>
If this is actually what’s needed, honestly I’m surprised it hasn’t been done before? Which makes me think I’m not correct ;), but it does seem to work?
However I don’t think this fully answers the original question about a point action, since we still end up with more than one jumping rule. But it seems like multiple VerbRules is how things are done in grammar.t anyway.