The Free Interactive Fiction FAQ
version 1.1, 2003-03-16
Copyright (c) 2003 Benjamin Fan
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts. A copy of the license is included in the section
entitled "GNU Free Documentation License".
For excerpts of this FAQ which omit the full text of the GNU Free
Documentation License, the license text can be found at
http://www.gnu.org/licenses/fdl.html
Certain specially-marked sections are used under the Open Publication
License.
_________________________________________________________________
Table of Contents
1. Free Software and Interactive Fiction
1.1. What is free software?
1.2. What is interactive fiction?
1.3. Why was this FAQ written?
2. Free Interactive Fiction Projects
2.1. Free Game Systems
2.2. Other Free Software
2.2.1. Compilers
2.2.2. Interpreters
2.2.3. Integrated Development Environments
2.2.4. Miscellaneous
2.3. Projects Still Under Development
2.4. Projects Just Starting Up
2.5. Abandoned Projects
3. Free Interactive Fiction Games
3.1. What games are free?
3.2. Which games have source that is Free but contain restrictions on
the "Artistic Work"?
4. Meta Information
4.1. About this FAQ
4.2. Changelog
A. Gnu Free Documentation License
_________________________________________________________________
1. Free Software and Interactive Fiction
1.1. What is free software?
This section was excerpted from the Debian web site.
Many people new to free software find themselves confused because
the word "free" in the term "free software" is not used the way
they expect. To them free means "at no cost". An English dictionary
lists almost twenty different meanings for "free". Only one of them
is "at no cost". The rest refer to liberty and lack of constraint.
When we speak of Free Software, we mean freedom, not price.
Software that is free only in the sense that you don't need to pay
to use it is hardly free at all. You may be forbidden to pass it
on, and you are almost certainly prevented from improving it.
Software licensed at no cost is usually a weapon in a marketing
campaign to promote a related product or to drive a smaller
competitor out of business. There is no guarantee that it will stay
free.
Truly free software is always free. Software that is placed in the
public domain can be snapped up and put into non-free programs. Any
improvements then made are lost to society. To stay free, software
must be copyrighted and licensed.
...
While free software is not totally free of constraints (only
putting something in the public domain does that) it gives the user
the flexibility to do what they need in order to get work done. At
the same time, it protects the rights of the author. Now that's
freedom.
The preceding text was exerpted from the Debian web site, section
"What Does Free Mean? or What do you mean by Free Software?",
Copyright 1997-2001 SPI. It is used under the terms and conditions of
the Open Publication License. The location of the original document
can be found at http://www.debian.org/intro/free The excerpted
material may be distributed only subject to the terms and conditions
set forth in the Open Publication License, Draft v1.0 or later (the
latest version is presently available at
http://www.opencontent.org/openpub/).
1.2. What is interactive fiction?
In the context of this FAQ, interactive fiction commonly refers to
computer-based text adventure games. These games involve a single
player typing text at a prompt and receiving text responses from the
computer. Different responses are returned depending on the player
input given in order to provide a simulacrum of reality. These games
often involve solving puzzles and fulfilling quests in order to meet a
goal.
For more information on interactive fiction, please see the
rec.arts.int-fiction FAQ, found at
http://www.ifarchive.org/if-archive/info/rec.arts.int-fiction.FAQ.htm.
1.3. Why was this FAQ written?
The source code to a lot of interactive fiction games and software has
been made publically available. However, much of it is not Free. For
those people for whom Free Software is important, it is difficult to
determine exactly what is free. This document tries to provide that
information.
For the purposes of this FAQ, a game or piece of software is
considered t be free if it complies with the Debian Free Software
Guidelines (DFSG) http://www.debian.org/social_contract#guidelines .
It also includes games in the public domain (which also fall under the
DFSG).
_________________________________________________________________
2. Free Interactive Fiction Projects
2.1. Free Game Systems
* JACL JACL is an interpreted language for creating HTML- based
games. The JACL interpreter can be used with Apache and
mod_fastcgi or can be compiled to serve HTTP requests directly.
The project lead is Stuart Allen. http://jacl.sourceforge.net/ The
latest version 1.10.15 was released 2002-02-14. GNU General Public
License.
* Cog Engine Project The Cog Engine Project is aimed at simplifying
the creation of online video games. The goal is to create a
flexible and powerful online gaming engine whose format is simple
enough for use by individuals with no programming experience. The
project lead is Steven M. Castellotti.
http://cogengine.sourceforge.net/ The latest version 1.1.6 was
released on 2002-07-14. GNU General Public License.
* Interactive Fiction Mark Up Language The purpose of this project
is to develop an engine for running web based Interactive Fiction
(also known as text adventures) and to develop a XML based
Interactive Fiction Markup Language (IFML). The project lead is
Jenny Schmidt. http://sourceforge.net/projects/ifml/ Development
status: Beta released 2002-05-11. zlib/libpng license
2.2. Other Free Software
2.2.1. Compilers
* No free IF compilers are available!!!
* vbccz is a patch written by David Given which allows C code to be
compiled into Z-code. Unfortunately, it requires the use of the
non-free VBCC compiler. The patch itself is free and probably
could be used as the basis of a new entirely-free compiler.
http://www.cowlark.com/vbcc-z-compiler.html
2.2.2. Interpreters
* SCARE SCARE is an ANSI/ISO C Adrift interpreter port of jASEA.
Simon Baldwin is the project lead.
http://www.geocities.com/legion_if/scare.html GNU General Public
License.
* jetty jetty is a TADS2 interpreter which runs as a Java applet. It
was written by Dan Shiovitz.
http://www.drizzle.com/~dans/if/jetty/ jetty is released under a
DSFG-compatible license.
* zeal zeal is a z-code interpreter capable of running version 1-5
and 7-8 story files, written by Jeremy Condit. It was written from
scratch in C++ and uses the GLK interface.
http://www.bantha.org/~jcondit/zeal/ GNU General Public License.
* jASEA jASEA is a Java interpreter for Adrift written by Mark
Tilford. It is released under the GNU General Public License.
http://sourceforge.net/projects/jasea
* Zoom Zoom is a z-machine interpreter written by Andrew Hunter. It
was written from scratch using an interesting optimization
technique called "specialization". Although it produces a larger
executable, Zoom runs 50% faster than Frotz.
http://www.logicalshift.demon.co.uk/unix/zoom/ Zoom plays version
3, 4, 5, 6, 7 and 8 z-machine files. GNU General Public License.
* Glulxe Glulxe (for "Glulx Execute") is a Glulx interpreter written
by Andrew Plotkin. http://www.eblong.com/zarf/glulx/ Glulxe is
released under a DFSG-compatible license.
* Nitfol Nitfol is an interpreter for z-machine games. It includes a
built-in debugger. Nitfol was written by Evin Robertson.
http://plover.net/~thumper/nitfol/ GNU General Public License.
* ZPlet: A Z-Machine for Java ZPlet is an interpreter for programs
using the Z- Machine virtual machine invented by Infocom for their
interactive fiction. Runs under Java. The project lead is Matthew
Russotto. http://sourceforge.net/projects/zplet/ Development
Status: Beta. The Beta software was released 2001-11-15. Artistic
License. To do: find out what z-machine versions ZPlet supports.
* Frotz Frotz is a z-machine interpreter originally written by
Stefan Jokisch and now maintained by David Griffith.
http://www.cs.csubak.edu/~dgriffi/proj/frotz All current versions
and derivatives of Frotz (starting with version 2.40) are licensed
under the GNU General Public License.
* zip/xzip/jzip Zip was a z-machine interpreter in the public
domain. Several free ports including xzip (for X Windows) and jzip
(for shell console) were developed and released under other free
licenses. http://sourceforge.net/projects/jzip/ BSD License.
2.2.3. Integrated Development Environments
* YonkYonk is an IDE for developing Inform games on the MacOS
platform. It was written by Scott Forbes.
http://www.ravenna.com/~forbes/yonk/ GNU General Public License.
2.2.4. Miscellaneous
* IF Builder IF Builder is a programmer's code editor for
Interactive Fiction for the MS Windows platform. It was written by
Jeff Nyman. http://ifbuilder.cjb.net/ GNU General Public License.
GLK GLK is an API and specification for a common input/output
library used for interactive fiction. Andrew Plotkin maintains this
specification. Several free implementations also written by Andrew
Plotkin are found here. http://eblong.com/zarf/glk/ The GLK libraries
are released under a DFSG-compatible license.
Inform Warehouse A warehouse of utilities and story source-code for
Inform-based interactive fiction stories. Include simple examples of
how to write inform, to libraries of useful utilities and objects, to
full game source-code. The project lead is Matt Albrecht.
http://sourceforge.net/projects/inform-warez/ GNU General Public
License and public domain.
inform-mode inform-mode is an Emacs mode used to edit Inform games.
It is maintained by Rupert Lane. http://rupert-lane.org/inform-mode/
GNU General Public License.
Inform code written by Stuart "Sslaxx" Moore and licensed under the
GNU General Public License can be found at
http://www.sslaxx.demon.co.uk/resources/InformCode.tar.gz .
2.3. Projects Still Under Development
* Gnusto Gnusto is a z-code interpreter in development which runs in
the Mozilla browser. It is currently in alpha release. Thomas
Thurman is the project lead. http://gnusto.mozdev.org/ GNU General
Public License.
* IF# IF# will be a language syntax and set of class libraries that
compile to the .NET Framework or Mono. Using the Glk-Dotnet
control for the user interface, a programmer will be able to
implement text-based (but allow for graphics, sound, and HTML)
adventure games. IF# is in the planning stages and will be written
in C#. David Cornelson is the project lead.
http://sourceforge.net/projects/if-sharp/ Intel Open Source
License.
* Glk.NET Glk.NET will implement the Glk specification as a .NET
control library for use in Interactive Fiction games or platforms
built in the .NET framework. David Cornelson is the project lead.
Glk.NET is in the planning stages and will be written in C# and
C++ http://sourceforge.net/projects/glk-dotnet/ Intel Open Source
License.
* JIGSAW is the Java Interactive Game System Authorship W, written
by Benjamin Fan. It is library of IF world and game classes that
allow games to be written directly in Java and run by the Java VM.
http://www.geocities.com/bfan2/if.html GNU General Public License
version 2.
* BlueSphere IF Authoring System The purpose of this project is to
build interactive fiction authoring software that is both easy to
use and incredibly powerful. Unlike other IF authoring systems,
the BlueSphere user interface will focus on content creation - not
programming. http://sourceforge.net/projects/bluesphere/
Development status: Pre-alpha released 2002-04-29. It appears that
the parser was developed. GNU General Public License. This entry
will be moved to the abandoned section on 2003-03-01.
* Python Universe Builder Python Universe Builder (PUB) is an
Interactive Fiction module for Python. It provides a programming
environment similar to that of Inform or TADS but runs under any
Python interpreter. Present goal is to document the code.
http://sourceforge.net/projects/py-universe/ Development status:
Version released 2002-11-21. GNU Lesser General Public License.
2.4. Projects Just Starting Up
* AGATE AGATE (Adventure Game Authoring & Testing Environment) is an
interactive fiction IDE. It is intended to do away with the
traditional interactive fiction development cycle of
code-compile-test by allowing you to develop the game as it runs.
http://sourceforge.net/projects/agateif/ Development Status:
Planning Stage, project started 2002-10-14. GNU General Public
License. This entry will be moved to the abandoned section on
2003-05-01.
* Furry Ice Project Furry Ice is a modular technology for developing
story-based interactive media, such as adventure games,
edutainment, interactive fiction, hyperstories, interactive
stories, interactive tutorials and interactive corporate
presentations. http://sourceforge.net/projects/furryice/
Development Status: Planning stage, project started 2002-10-04.
Zope Public License. This entry will be moved to the abandoned
section on 2003-05-01.
* pyzzy: a Python Z-Machine pyzzy is a Z-Machine implementation
written in pure Python. It doesn't aim for performance, but rather
for code clearness and availability of handy tools for z- code
in-depth analyzis. http://sourceforge.net/projects/pyzzy/ Status:
Planning stage, project started 2002-06-04, last updated
2002-06-09. Some files were produced. Python Software Foundation
License. This entry will be moved to the abandoned section on
2003-05-01.
* Viola Viola is an interpreter for Z-Machine games, like those
created by Infocom, written in Python. It will have full support
for all eight Z-Machine versions, and the blorb resource format.
http://sourceforge.net/projects/viola/ Development Status: Alpha,
project last updated 2002-04-02. Some files were produced. GNU
General Public License. This entry will be moved to the abandoned
section on 2003-05-01.
2.5. Abandoned Free Projects
Projects which are abandoned.
* Heroes of Suroden Some source code is available.
http://sourceforge.net/projects/suroden/ BSD license.
* MAGE Adventure Game Engine Some source code is available.
http://sourceforge.net/projects/mage/ GPL license.
_________________________________________________________________
3. Free Interactive Fiction Games
3.1. What games are free?
* The Magic Toyshop, by Garret Rees,
http://www.ifarchive.org/if-archive/games/source/inform/magic-toys
hop.inf, GPL2
* Night at the Computer Center, by Bonni Mierzejewska,
http://www.ifarchive.org/if-archive/games/source/inform/night.tgz,
all rights given away, except for some notes about attribution.
* Space Station, by David Ledgard,
http://www.ifarchive.org/if-archive/games/source/inform/spacest2.z
ip, Public Domain.
* Chateu Le Mont, by Paul Panks,
http://www.ifarchive.org/if-archive/games/source/basic/chateu.zip,
Public Domain
* The Magic Flute, by Paul Panks,
http://www.ifarchive.org/if-archive/games/source/basic/magicflu.zi
p, Public Domain
* Pirate Adventure (Hugo), by Julian Arnold,
http://www.ifarchive.org/if-archive/games/source/hugo/pirate_src.z
ip, Public Domain
* Golden Skull, by Neil K. Guy,
http://www.ifarchive.org/if-archive/games/source/tads/goldsrc.zip
* The Dungeons of Thuria, by Brian Lingard,
http://www.ifarchive.org/if-archive/games/source/thuria.zip,
written in C.
* Mansion, by James Garnett,
http://www.ifarchive.org/if-archive/games/source/mansion-19.2.tar.
gz, written in C and Fortran.
* Napoleon, by Pete Chown
http://www.ifarchive.org/if-archive/games/source/napoleon-1.02.tar
.gz, written in C.
* Battlestar, by Brian Douglas Smith,
http://www.ifarchive.org/if-archive/games/source/batlstar.zip,
written in C, BSD license.
3.2. Which games have source that is Free but contain restrictions on the
"Artistic Work"?
These games specify that the source code can be used, but modified
versions of the artistic work cannot be produced. Normally, these
would be considered non-Free under the Guidelines, but I believe that
it may be possible to separate the source code from the underlying
artistic text.
* The Plant, by Michael Roberts,
http://www.ifarchive.org/if-archive/games/source/tads/plantsrc_2.z
ip
* Shade, by Andrew Plotkin.
http://www.ifarchive.org/if-archive/games/source/inform/shade-src.
tar.Z. The "source code" portions can be freely used, but the
"story" and "game text" portions cannot.
* Common Ground, by Stephen Granade,
http://www.ifarchive.org/if-archive/games/source/tads/Ground_src.z
ip. The source code can be freely used, but there is a prohibition
against "creating a new version of Common Ground".
* Arrival, by Stephen Granade,
http://www.ifarchive.org/if-archive/games/source/tads/arrsrc.zip.
The source code can be freely used, but there is a prohibition
against "creating a new version of Arrival".
* Losing Your Grip, by Stephen Granade.
http://www.ifarchive.org/if-archive/games/source/tads/gripsrc.zip.
The source code can be freely used, but there is a prohibition
against "creating a new version of "Losing Your Grip".
_________________________________________________________________
4. Meta Information
4.1. About this FAQ
4.2. Changelog
* Version 1.0, 2002-12-21. Original release.
* Version 1.1, 2003-03-16. Corrected Frotz information and web site.
Added Stuart Moore's GPL Inform source code. Removed "almost-free"
games section. Added zeal interpreter. Added jetty interpreter.
Added JIGSAW system under development. Added SCARE interpreter.
Added IF Builder. Added Gnusto. Added IF#. Added Glk.NET. Edited
abandoned projects. Added deadlines for startup projects.
--
To get my current email address, concatenate these three strings:
1. "benjamin_fan" 2. "_2002a" 3. "@yahoo.com"
It will look a lot like: xxxxxxxx_yyy_zzzzz @ yahoo . com
I see you don't know Paguaglús yet, do you? It's a free software PAW to Glulx
compiler (although it uses glulxa assembler, which I don't know it's license).
It's homepage is:
http://paguaceta.sourceforge.net
> (...)
>3. Free Interactive Fiction Games
>
> 3.1. What games are free?
Some games (maybe a lot) are missing, for example:
* Ocaso Mortal, by Daniel Garrido,
http://www.geocities.com/lashojascaidas/juegos/ocaso.htm, GPL
All of the games written by Enrique D. Bosch, such as: Sin rumbo, Con rumbo,
Declinación Mortal, Currículum Vitae, PAEE, SAEE, ...,
http://bbs.eui.upv.es/~presi/av/
Hmm... This link isn't currently working, but you can see it at Google's
cache:
http://216.239.53.100/search?q=cache:nS1CaY8P2akC:bbs.eui.upv.es/~presi/av/+en
rique+d.+bosch+presi+aventuras&hl=es&ie=UTF-8
> 3.2. Which games have source that is Free but contain restrictions on the
> "Artistic Work"?
>
> These games specify that the source code can be used, but modified
> versions of the artistic work cannot be produced. Normally, these
> would be considered non-Free under the Guidelines, but I believe that
> it may be possible to separate the source code from the underlying
> artistic text.
I think my games fall under that situation, they are:
* El gorrón del tren
* Churro patatero
* Nada en absoluto
And you can find it here:
http://www.geocities.com/jmfo1982
PS: All the games I've mentioned are written in Spanish.
Regards,
Morgul
-=-=-=-=-*#*-=-=-=-=-
Miembro del Club Español de Aventuras AD (CAAD): http://caad.mine.nu
Página web personal aventurera http://www.geocities.com/jmfo1982
Usuario registrado de Linux nº 196150 en http://counter.li.org