Erm, that means instead of one point to have the message, or using the easier method, I'd be putting checks in all over the place - plus automatic disambiguation wouldn't work (that's when two objects have the same name dear

).
At the moment I'm kinda stuck on this as I'm sure #quest.lastobject# doesn't actually get set, and I can't /really/ write a parser which will filter the #quest.originalcommand# to grab what the player actually typed.
For instance, it would be GREAT if quest put the last reference into a variable, or #&object# would be able to get back to what the player originally typed in the command:
'kill #@object# with #@thing#'
.. Or even if it was only the last one it's couldn't find.
Let's walk through an example to try and get out of my head what I want to say:
> kill rabbbut with spaed
I can't see the spaed anywhere..
> kill rabbut with spade
I can't see the rabbut anywhere..
> kill rabbit with spade
You swing the spade with all the might you can muster, bringing it colliding with the asphalt and sending you shivering to the floor in a garbled heap...
The rabbit bounces over you cheerfully.
That's what I mean by the last object it couldn't find (quest.error.article perhaps!?).
Now if I could, I would like this:
> kill rabbut with spaed
I can't see a 'rabbut' or a 'spaed' anywhere..
> kill rebbit with spade
I can't see a 'rebbit' anywhere..
> kill rabbit with spade
//as before
And that I /could/ do with a:
#&object# #&thing#
.. Any ideas?