Eamon AC - The Eamon RPG steps into a new language!
This webpage is dedicated to the Eamon AC (EAC) project - a
successful port of Eamon to the ANSI C programming language.
EAC is a hybrid system - functionally, parts of Donald
Brown's Classic Eamon and Frank Black Production's Eamon Deluxe have
been integrated, but the system itself was written from scratch
and contains many new features.
Eamon, with its record-oriented structure, is particularly well suited
to the C language (though lack of string support may take getting used
to). Both Basic and C came into widespread use
in the 1970s, and their feature sets overlap somewhat, but they are aimed
at different audiences. Adoption of Basic by hobbyists in the 1980s
contributed to Eamon's popularity as a game development platform.
The C language, on the other hand, was designed as a portable assembly, and
has a fairly steep learning curve. By porting Eamon, many possibilities
open up that have never been explored before. The
expectation is that custom adventure design with EAC will appeal mainly
to advanced users or professional programmers.
The installer includes a Dungeon Designer, a Main
Hall, an Adventure Runtime and The Beginner's Cave (as required
for any true Eamon port). Additionally, a Test Adventure is
included which showcases the system in a more rounded way. The documentation
set typically found in Basic versions of Eamon has been omitted; instead, a
README file is provided. It is assumed you are already familiar with Eamon
as a system and (for designers of custom adventures) comfortable stepping through
it in a debugger to discover its naunces.
Here is a partial feature list for the game:
ANSI C based – highly portable.
Currently Windows is supported, but future versions may
expand on this.
Native 64-bit Windows console apps – state of
the art. These are structured like typical C utility programs
– lots of command line interface flags to control behavior.
Formal high-performance in-memory database
architecture – no array based implementation. The concept of
#s (eg, Artifact #) has been replaced with Uids so you can
create/edit/delete as many records of any type as you want –
dynamically, at run time.
Text and Binary file modes – system runs on
either file type.
Polished text aesthetics – looks more like
modern IF.
Extensive use of #defines throughout code –
minimal use of “magic numbers” make this system fairly easy to enhance.
Each artifact can be up to 4
“types”. For example, this allows artifacts like light source
weapons or wearable containers to exist.
You can configure each adventure with how many
save slots it has, from none (Classic Eamon) to N. It
defaults to 5 which is typical.
Adventure game state is defined by a
GAME_STATE record which can be any size and contain any type of
data. You can even build complex game states spanning
numerous save game files.
Control over game state cleanup is delegated
to the adventure itself, making complex game states possible.
An Intellect stat has been added which
affects, among other things, spell casting (The Beginners Cave also
puts it to use).
The Dungeon Designer has an Analyse Record
Interdependencies menu option that can catch a variety of logic errors like dangling
references, invalid artifact types, etc.
To play Eamon AC, you should have a Windows computer capable of
running Visual C++ Redistributable for Visual Studio 2015 RC
(x64). Here are the system requirements for this redistributable.