Mark Damon Hughes  | Aiee! An Interactive Environment Engine  

Aiee!

Version 0.3, released 2004Oct19

   Aiee! allows you to design and play text adventures, or "interactive fiction". Aiee! adventures are written in a simple XML-based format, without the need for any programming experience. Aiee! adventures can even include illustrations and sound.

Screenshots:


Download & Installation

  1. You must have the Java Runtime Environment (JRE), version 1.4 or later.
    Windows and Linux users will find the latest versions there.
    MacOS X users already have Java installed.
    MacOS 9 or lower cannot run Aiee!.
  2. Download and unzip aiee03.zip (133K)
    (you can unzip it anywhere).
  3. Now start the game:
    Unix:
    Run ./aiee.sh
    Windows:
    Double-click on aiee.jar
    MacOS X:
    Double-click on aiee.jar

    If you want to play in text mode, change the size of the window, or send logging to a file other than default.log, you can call Aiee! from the command line:
    ./aiee.sh -?
    or
    java -jar aiee.jar -?
    shows the command-line options (java must be in your path; Windows users will need to append ;WHATEVER to My Computer|Advanced|Environment|PATH, where WHATEVER is the dir containing java.exe).

  4. Enjoy!


News

2004Oct19
Released version 0.3! This is mostly a bugfix release, but there's one important new feature:
  • Take all! Multiple direct objects are now supported by all commands where they make sense. "take dagger, armor, and torch" works, as does "drop all", and so on.
  • Improved text wrapping. You shouldn't have to manually format text anymore. You can still force newlines with \n escapes.
  • Differentiated between "r" (ready/remove toggle), "ready", and "remove".
  • Encumbrance is listed in "inv".
  • Container contents don't count against your weight limit, only the container's weight does.
  • Fixed the bug where exits declared "visible" weren't being listed.
  • Adventure file list is now sorted for your convenience.
  • Fixed scoring. $(_scorebase) now contains the permanent score, not counting any items with <points> tags, and $(_score) has the current score.
  • Fixed bug that made menus show up in uppercase but not take uppercase options.
  • Preparation for the GUI adventure generator; right now, the only visible result is if you use -dump to print out the adventure when it's loaded, it generates a valid XML adventure, identical to the input.
2004Oct13
Released version 0.2! Yes, it's been a while, between adding many features and working. What's new?
  • Graphical client! Adventures can now display images and play sounds or background music. The classic text-only console game is still available, started with `java -jar aiee.jar -text`, and runs all adventures (images and sounds are simply listed, not played).
  • Actors enter the stage! NPCs can now be written, and they can react to a player's actions with <observe>, have conversations with <ask>, and receive gifts with <give>.
  • Combat! The fight routine can be coded specific to an adventure, and a standard fight routine is given in dungeoncrawl.xml. The player and actors have hit points, and die when they reach 0. A <hurt> routine on actors, and a <die> routine on player and actors will handle special effects, reactions, etc.
  • Equipment can be readied and removed. Armors can cover any or all of five "elements": physical, air, earth, fire, and water, so monsters can be vulnerable to one element but not others.
  • Items and actors can have a specific indefinite article ("a torch", "an orc", etc.), so text reads more like real English.
  • Better error-checking in adventures.
  • <istype> test in <if> and variable $(_who) make multi-purpose functions more useful.
  • <output> displays text only if $(_who) is player.
  • <hasitem> can now test for whether or not an item is equipped.
  • Long text is now broken up with [MORE] prompts.
  • <set> has new operators: "name" gives the name of an item, "aname" gives the indefinite article and the name, "thename" gives the definite article and the name, and "input" reads a line from the user.
  • $(_maxscore) now holds the maximum score defined for the adventure.
  • "Invisible" items are listed when contained in inventory.
2003Jan19
Released version 0.1


The Future

Aiee! has three central goals.

  • The first goal is to simplify the text adventure user interface. Complex command parsers are a lot of fun--for parser programmers. But they just encourage "guess the verb" puzzles, which are no fun for the players. They're also very verbose--after a while, you really get tired of typing out full commands. This goal is almost complete now.
  • The second goal is to work across a wide range of devices:
    • Fully-graphical iconic interface
    • Lightly-graphical text interface
    • Line-oriented console interface
    • Minimal-typing PalmOS interface

       Aiee 0.1 only has the console interface. I'll be writing the other interfaces next.

  • The third, longer-term, goal is to write an adventure generator.


Legal Stuff

Aiee! is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software.

Aiee! is freeware, for personal use only. You are permitted to download and use it at no charge. You may not redistribute it without the author's express written permission.

Adventures you have written belong to you--you may distribute them under any terms you like. You may not bundle Aiee! with them, instead you should provide a link to the Aiee home page
<http://markdamonhughes.com/Aiee/>.

Last modified: 2004Oct19
Version 0.3

Copyright © 2007 by Mark Damon Hughes  |  email