Eamon AC
Eamon in ANSI C
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:
Features
- 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.
Playing Eamon AC
To play Eamon AC, you should have a Windows computer capable of running Visual C++ Redistributable for Visual Studio 2015 RC (x64).
To develop the Eamon AC system, or build custom adventures for it you should use Visual Studio 2015 Community Edition RC.
And finally here is the Eamon AC v1.0 installer with full source code. This installer is all you need to play EAC and build non-customized adventures.
For inquiries, bug reports or further assistance please email firstmethod@hotmail.com and include EAMON AC in the subject line!