In spite of its growing popularity, due to a huge technical evolution in the last years and to the fact that new generations are more literate in games than in books, game-based teaching has been very restrictive in its application to adult education. Most applications are merely simulations built with game technology. In order to apply game-based education in domains that can not readily be turned into simulations, new ways of game design need to be explored. In this paper we describe a new approach using metaphorical worlds, and exemplify its application to teach Computer Science concepts, proposing two possible game designs for a game-based educational system devoted to teach the workings of the Java Virtual Machine.