[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Changing Subjects: IFML
- To: idrama@flutterby.com
- Subject: Re: Changing Subjects: IFML
- From: "Mark 'Kamikaze' Hughes" <kamikaze@kuoi.asui.uidaho.edu>
- Date: Sat, 11 Jun 2005 10:05:04 -0700
- In-reply-to: <42A9BF49.7030909@disobey.com>
- References: <42A9BF49.7030909@disobey.com>
- Reply-to: idrama@flutterby.com
- Sender: owner-idrama@mail.flutterby.com
- User-agent: Mutt/1.4.2.1i
Fri, Jun 10, 2005 at 12:26:49PM -0400 in <42A9BF49.7030909@disobey.com>,
Morbus Iff <morbus@disobey.com> spake:
>Anyone familiar or have opinions on:
> Interactive Fiction Markup Language
> http://ifml.sourceforge.net/
>It's an XML dialect for marking up interactive fiction. It seems like a
>dead project (last update 2002), the parser is in Java, not something I
>know anything about, and the XML is kinda "naive" (ie., telling the user
>to use [p] instead of <p> within a CDATA, etc.).
>Have there been any other attempts at something like this? I found this
>along the way while investing QML, a Choose-your-own-Adventure dialect:
> http://www.questml.com/
>I know the new Erasmatron's Deikto is going to be XML-based too.
>Thoughts, comments, other examples?
My own Aiee! <http://kuoi.asui.uidaho.edu/~kamikaze/Aiee/> and
GameScroll <http://kuoi.asui.uidaho.edu/~kamikaze/GameScroll/> both use
XML markup to write IF.
In both cases, the intent is to make the simple case appear to be
purely descriptive:
Aiee!:
<look><text>You are in a maze of twisty passages.</text></look>
GameScroll:
<text>You are in a maze of twisty passages.</text>
If you need to use more complex logic, you discover that they're
actually procedural scripting languages.
Aiee!'s world model is more complex, so it needed a more complex
language, but IMO GameScroll's vastly more pleasant to work with, and
better suited to telling interactive fiction[0]. It's more of a
"Fighting Fantasy Gamebook" system than a mere "Choose Your Own
Adventure", in that it supports state, randomization, and automated
decision-making.
You'd have to do more work to get an equally open set of actions in
any scene with GS as Aiee!, but good interactive storytelling requires
knowing when to pare down options, not just providing endless options.
A lot of the possible actions in a large Aiee! game, like any
Infocom-style text adventure, would be fairly dull--pick up item, drop
it here, etc. A GameScroll game has to focus far more on the broader
strokes of the story.
My reason for using XML wasn't so much to let people write their own
source code in XML, though. XML's great virtue is that it's more or
less human-readable, and also very easily read and written by a standard
parser. The XML markup let me bootstrap the game system, and then move
on to my real goal of making a GUI editor, and then with my finished
tools being able to write the adventure designs I have on paper right
now. Aiee!'s editor turned out to be exceedingly hard to build (I'm not
sure now if I'll abandon hope or take a different stab at it later), but
GameScroll's editor is almost done.
[0] In the real sense of the term, not just "text adventures which are
exact duplicates of Infocom's games".
--
<a href="http://kuoi.asui.uidaho.edu/~kamikaze/"> Mark Hughes </a>
"I think [Robert Heinlein] would take it kindly if we were all to refrain from
abandoning civilization as a failed experiment that requires too much hard
work." -_Rah, Rah, RAH!_, by Spider Robinson