Not very "use"-ful

jaynabonne
24 Aug 2012, 08:55
A minor gripe.

The default implementation of "use" in the editor and game seems to me to be quite a pain. I've been implementing my first "real" room, adding both scenery and real objects. Once, I tried "use" on one of the objects (one I wanted to implement "use" for), and it brought up a "on what" list. I had seen that in some other games, but hadn't realized it was a default thing.

Then I discovered that it happened for all of my objects, even the scenery ones. So, I thought, well, I'll just go turn that off, but there is no handy way to do that. The current system forces you to implement "use" for everything, whether it makes sense or not.

I've been having fun going into various games and trying "use me" to see if I can get sneaky lists of room objects...

I like the way other verbs have default messages that amount to "You can not", with behaviors disabled by default. That way, you only need to turn on what you actually want to enable for an object. But "use" is not only the other way around (no default message), but the default behavior is something I think almost nobody would actually want to have happen, since it just gives you a blanket list of objects (not even necessarily a constrained list of actually usable ones). It could be said that that aids players, but I think it's the other way around. If the player types "use X" and it gives them a list of options, and *none* of the options actually work, then it just gives the user a red herring to chase, since it seems the game is offering some clue or constraint (it implies "use" has meaning when it might very well not).

Most well designed games I've seen here have managed to cut that off. I assume it's either by making some sort of "non-usable" type to inherit from, or by going to each object and implementing some sort of message. While those are both possible, it seems a lot of work for budding game authors to have to go through just to disable a feature they didn't want to begin with.

I personally would love to see "use" handled like room descriptions: make the pop up list an option, but by default have it print a "You can't use that." message.

That's my take, anyway. Perhaps there is a reason for it. But I wanted to vent a bit... :)

sgreig
24 Aug 2012, 09:00
Quest has a few little quirks like that, but it gets better with each release. Perhaps mentioning this on the bug tracker would help Alex to remember to add some kind of a fix for that in a future version? Unfortunately, I can't remember off the top of my head what the link to the bug tracker is, so maybe someone like Pertex or even Alex would be kind enough to post the link? Perhaps searching the forum might reveal the link as well.

As I think about it, maybe the feature suggestion and bug tracker links should be made into a sticky. Hmm....

Pertex
24 Aug 2012, 14:07
You can found the links in the developer forum "Useful Links" :D

Pertex
24 Aug 2012, 14:09
jaynabonne wrote:
Then I discovered that it happened for all of my objects, even the scenery ones.

scenery objects will be excluded in Q5.3

cdutton184
24 Aug 2012, 15:24
I found that a pain in my games so my solution was as follows:

1) Click on Filter in the bottom left of the editor and then 'tick' the Show Library Elements.
2) Go back up the 'tree' list to Commands and Copy the Use command so you can edit it.
3) In the script at ELSE, open it up and delete the whole of this part of the script - nothing else.
4) Add a new script 'Print a message' in the ELSE section and make it an Expression and type:

"Use the " + object.name + " how?"

This indicates to the player that the Use command can only be:

'USE <object1> with <object2>' and not 'USE <object>'