hi Jester, welcome to the forum. You're not the only one who has thought text adventures and geocaching are a good combination -- see
http://www.intfiction.org/forum/viewtop ... =19&t=2430 for example. Interesting stuff.
Anyway, for your questions.
I want the option that if they use a command to move they get asked "are you sure that's the direction you wish to go?" But once they are aware of the gps by having looked at it, they can move north.
So you want to block all movement until they've looked at the gps. I think just to make life easier you should go ahead and make the gps an object. You can set it up later so that the player can't get rid of it if you like.
There are a couple of ways you could do this but I think the easiest way (though it might look complicated at first) is to
modify the go command. There is a guide on how to do that here,
http://quest5.net/wiki/Immobilise_the_player. Note that you can do that in the GUI but it's actually easier to do it like the tutorial says. You'll also want to set the attributes that tutorial mentions on your player object. You can do that part in the GUI.
The final piece is to change the player.immobilized flag to false once the player looks at the GPS. To do that, go to the GPS object you made and then the Verbs tab. Create a new verb of 'look', and choose 'run a script'. From there, you can create a new if script that tests if the GPS has been looked at. Here's the general form the code should take:
1) create an attribute of the GPS called 'noticed' and set it to Boolean false.
2) in the script for the look verb, check if the GPS is noticed. If it is, just print its description. If it isn't, set the noticed attribute to true, change the player to mobile, and then print the description (with perhaps another message that tells the player they can move now).
I deliberately left out all the intermediate steps so you'd get more value out of learning this, but if you have any questions don't hesitate to ask

By the way, I accidentally hit the submit button halfway through this, sorry for any confusion.