Here is my solution, which is basically Jame's solution, but split into
a few files.

You can optionally turn on and off the method_missing trick by choosing
to require or not require "interactive"

adventure.rb (general game functions / direct translation with a couple
extra aliases):

http://stonecode.org/organizations/unh.rb/code/meetings/2005.09.29/adventure.rb

interactive.rb (method missing trick)

http://stonecode.org/organizations/unh.rb/code/meetings/2005.09.29/interactive.rb

game.rb (The wizard game)
http://stonecode.org/organizations/unh.rb/code/meetings/2005.09.29/game.rb

I take no credit for Jame's code, just figured I'd share this for those
of you who wanted to play with what james made without cutting up the
Lisp / Perl file.