Exult is a Free Software reimplementation of the Ultima VII game engine.[1]
It enables play of Ultima VII: The Black Gate and Ultima VII Part 2: Serpent
Isle, and their corresponding expansion disks Forge of Virtue and Silver Seed,
on modern machines.[2] In order to play these games, data files from the
original games are needed. Exult itself is distributed under GNU General Public
License.
Exult is included in many free *nix distributions, such as Debian and FreeBSD.
History
Exult originally started as Ultima VII map viewer for the X Window System, but
later, as the reverse engineering efforts became more fruitful in finding
explanation on the Ultima VII scripting files, the project expanded to become a
complete reimplementation of the Ultima VII runtime engine.
Before the project came to fruition, there was a demand for a new implementation
of Ultima VII. Original Ultima VII executables started to show their age: they
were rather difficult to get working on the systems of even their own era due to
their memory management configuration, and in new versions of Windows, the
MS-DOS support in general is getting less and less viable. According to an
anecdote by Serpent Isle project leader Bill Armintrout, Origin Systems has lost
the source code to both "Serpent Isle" and its add-on "The Silver Seed"[3], and
Electronic Arts is not planning on any kinds of rewrites for modern systems. The
game, however, still has many fans who would like to play the game on their
current systems.
Operating system support
Exult has, over time, grown to be almost exact reimplementation of Ultima VII
engine, with some notable improvements. The system has been written in C++ with
32-bit architectures in mind. The current graphics code uses the SDL library,
which has led to Exult being ported for Mac OS, Microsoft Windows, Sharp Zaurus,
Microsoft Windows Mobile, and other operating systems aside from the original "free
*NIX" platforms (such as FreeBSD and GNU/Linux).[2] Formerly, Exult was also
supported on BeOS. Unofficial ports exist for GP2X, Xbox and the PSP[4].
Enhancements over original games
Aside of portability and ability to run on modern operating systems, there are
also number of enhancements over original games, such as
Start screen with game selector - only one executable is needed to play both
games. The upcoming version also has the ability to add customised games to the
menus, and also add mods as suboptions to each game. Mod savegame and game state
data are managed separately from the data of the unmodded game.
unlimited number of savegame slots,[2]
many usability fixes, including numerous new key shortcuts,
ability to use Serpent Isle portraits and character paper dolls in Black Gate,
optional statusbar that displays party member health,
In-game notebook (in upcoming version),
Support for increased display resolutions (not necessarily recommended, as it
may lead to unexpected problems in game), with high-quality display scalers
(2xSaI family and others),
ability to use digital samples instead of MIDI sounds, and digital music in Ogg
Vorbis format instead of MIDI music (Hardware MIDI is supported in Win32;
upcoming version also supports ALSA), and support for MIDI software synthesis (through
TiMidity; Upcoming version also supports OPL3 emulation and FluidSynth).
Exult also includes a comprehensive cheat system, similar to the original Ultima
VII.
Exult team members have contributed a large number of custom artwork for the
game, primarily to make it possible to use all of the items in Black Gate in a
consistent way with the Serpent Isle paper doll graphics.
The upcoming release may also include gameplay fixes to the game usecode itself;
effort is underway to fix some of the most troublesome originally unimplemented
things in Serpent Isle.
Exult Studio
This section does not cite any references or sources. Please help improve this
article by adding citations to reliable sources. Unverifiable material may be
challenged and removed. (August 2008)
Exult also optionally includes Exult Studio, which is slowly growing into a very
complete and complex tool for modifying the game - even while the game is
running. Also included are many command-line tools for manipulating game files.
The editor is built as a separate program that can interface with a running
instance of Exult. Changing data files is done in Exult Studio window, while the
game world - everything from terrain to objects, creatures and their schedules -
can be changed directly through game view.
Also included are compiler, assembler and disassembler (the latter is not built
by default) for the "usecode" script file. This file drives the actual game
logic. There are also tools that can be used to 'rip' data sections from the
file; this is particularly of interest for people who wish to change the name
and dialogue sections of the game.