JZuul FAQ ($Revision: 1.4 $)

Copyright © 2004 JZuul.org All Rights Reserved.
This documentation may be distributed and/or modified under the terms of the FDL.

  1. What is JZuul
  2. Why?
  3. Why Java
  4. Is JZuul an acronym
  5. What does Zuul mean?
  6. How do I translate the Engine/the GDK/a Game.

1. What is JZuul

As the main page states, JZuul is a Textadventure Engine. A Textadventure is a game based on text commands to interact with a world which is described as text. To get an impression, you can try the Demo or the Game live on this page. Wikipedia has a definition of Textadventures or so called Interactive Fiction.
Some additional information about Adventure Games:

2.  Why?

JZuul started as a example in an Univerity class about Object Oriented software development. As it is fun creating your own world, it got quite fast out of controle. Fortunately our professor got a feeling for what we were doing and allowed us to work on this project as a class target. Therefore JZuul is a mixture between must do and spare time work.

3. Why Java

As Java is at the moment the state of the art language at  least for German universities, Java was the language of choice for the class. As it is still university related and got a quite big codebase by now, we will keep it that way, trying to make JZuul as compatible as possible with free VMs.

4. Is JZuul an acronym

No. Just like JDBC or JDOM are not officially acronyms, neither is JZuul. This ensures we comply with Sun's trademark policies as explained at http://www.sun.com/policies/trademarks.

5. What does Zuul mean?

We don't know. The example JZuul is based on was named Zuul by Michael Kölling and David J. Barnes. As the "mother of all textadventures" is called Zork, the name Zuul seems to be somehow related to that.
Our Professor collected additional information about the name:

6. How do I translate the Engine/the GDK/a Game

JZuul has three language files, two for the engine and one for the GDK. The Engine files are called engine.properties and commands.properties. The commands files specifies the I18N information for the commands, the engine file for the engine. The command names (like go, take) can not be changed at the moment. All other messages that are hardcoded in the engine can be changed by copying the .properties file and renaming it to engine_XX.properties and commands_XX.properties where XX is the two digit acronym for your language. The same applies to the GDK, the file is called gdk.properties. You don't even need to touch the sources, the new files will be loaded automatically.

To translate a game you can do mostly the same. The Engine first tries to find a file that is called like the file you told it to load but ending on _XX with the name of your current language. If this file is not found the default file is used. You can translate a game by copying the gamefile to the new name and changing the strings with the game editor.



Last Updated: $Date: 2004/07/25 21:51:33 $ by $Author: marcus $