TABLE OF CONTENTS

     1.    PREFACE

     2.    EFFECT RECORD CHAINING

     3.    EAMON CS PROGRAMMING EXAMPLES: SAMPLE ADVENTURE

1. PREFACE

[Note:  this document is a work in progress]

2. EFFECT RECORD CHAINING

It would be useful to describe how Effect record chaining works in Eamon CS. This is a mechanism borrowed from Eamon Deluxe and expanded to include strings both stored as Effects and dynamically calculated by C# methods (the latter available only in custom games). Effect record chaining in Eamon CS is very powerful and allows text output to be changed based on a game's current state. There are many examples of this scattered throughout the collection of completed games.

3. EAMON CS PROGRAMMING EXAMPLES: SAMPLE ADVENTURE

While there are many Eamon CS adventures available to look at for inspiration or ideas when building games of your own, they can be somewhat overwhelming when examined as a whole. Sometimes it is better to take a step back from the complexity and interconnectedness of an entire game and look at specific examples of special behaviors implemented in isolation. The Eamon CS game called Sample Adventure is for just this purpose.

The Eamon-CS-Misc repository has a directory called SampleAdventures, which contains various examples of Eamon CS programming techniques. Under this directory are sub-folders named roughly according to the special behavior they implement; inside of THOSE are SampleAdventure folders that can be copied verbatim into the Eamon CS Adventures directory (overwriting any existing SampleAdventure) and recompiled. Then you can send a character into Sample Adventure to test the new behavior as you usually would. Using the Visual Studio debugger to step through the code is possible if you compile the game in Debug mode.

As time goes on, hopefully, this SampleAdventures directory will supplement the as-yet-unwritten Eamon CS Dungeon Designers Manual and fill up with many examples that demonstrate how to use Eamon CS to build customized games. If there are special requests for behaviors or effects, please let me know, and I will try to accommodate that. Game designers can use _Unmodified\SampleAdventure as a basis for building new Sample Adventures, to experiment with customized behaviors, or tinker with the Eamon CS system and familiarize themselves with it. Please feel free to use any Sample Adventure code in your games as you see fit; submissions of interesting new behaviors in the form of Sample Adventures are also welcome and encouraged.

Sample Adventure usage:

1. Ensure any character adventuring in Sample Adventure returns to the Main Hall
2. Delete the Adventures\SampleAdventure folder
3. Copy the desired SampleAdventures\*\SampleAdventure folder into the Adventures directory
4. Open Eamon.Desktop.sln in Visual Studio 2022+
5. Right-click on top-level Solution node Eamon.Desktop
6. Choose context menu item Batch Build => Select All => Clean
7. Right-click on top-level Solution node Eamon.Desktop
8. Choose context menu item Build Solution (use Debug mode if you wish to step through the game using the Debugger)
9. Send a character into Sample Adventure using an EamonMH .bat or .sh file (EnterMainHallUsingAdventures or EnterMainHallUsingCatalog)