I have been struggling with trying to set up a room which can have dimensions (length and width) and internal coordinates, so that each step the player takes in a specified direction inside the room moves the player closer to (or further away from) one of the four walls of the room and the objects which appear on the walls.
The distance and exact position of the player in relation to a specified wall should trigger certain things appear or disappear on the wall. However, I don’t need to have a map printed (so Room & Dimension by Sebastian Rahn doesn’t really work).
I would be very grateful for any help!
I suppose that the simplest way is to make the room a region full of smaller rooms, arranged in a grid fashion.
Middle of the Room is a room. West wall is a room. (and so forth)
You could rewrite the “going” rules so that it modifies the internal coordinates, but you may be doing a lot of programming here.
Considering that some in-room movement is assumed in certain actions (examining sometimes assumes that you can touch an object, or entering a bath tub moves you over to and into the tub), you’ll have to be extra aware of that. How far away can you push the button from, etc. Rooms are usually used without such coordinates on purpose for simplicities sake.
Likewise when turning on a water faucet we don’t usually require the player to specificy to what degree (out of 360) he is turning the faucet and thus determine the relative flow of water.
The only reason I bring this up is that the position in the room should be required for the puzzle (to a greater extent than “stand on rug”), and the player should be aware that he can do this in advance (since it’s unusual for the genre).