A MANUAL FOR EAMON ADVENTURE DESIGNERS


IBM-PC Version


By Donald Brown


and John Nelson



EAMON is the computerized fantasy role-playing game developed by Donald Brown. This manual has been written for those stalwart people who are tired of having their characters killed in the many adventures written for the system, and want revenge by creating their own death traps. It is assumed that you are already familiar with the gaming system and the information included in the Player's manual.

Most of the adventures that are written for the Eamon system have been similar to the "Adventure" game thatwas created by Don Woods and Willie Crowther of MIT, such as the Beginner's Cave included on the master diskette.

This manual will both help you design your own scenarios in that type of game but will also permit you to meld any other type of game with the system that you wish.


HOOKING UP WITH EAMON


or


SENDING ADVENTURERS TO THEIR DEATH FOR
FUN AND PROFIT


Under the Eamon rules, it takes only a few numbers to completely describe a character. Between adventures, all of the player characters, (or adventurers) that the Master system knows about are stored in a file on the Master that is called "CHARACT". It is a random- access file with a length of 256.

Record 1 holds the number of records used in the file, and all subsequent records may hold one character. If the first 5 characters of the name is *DEAD then the character in that record has been deleted and the record may be reused to store a new character.

The data held in each record is :

* A string that has the name

* The next numbers store the abilties

These are, in order:

* Primary stats

Player Hardiness, Agility, and Charimsa.

* Four Spell Abilities

Blast, Heal, Speed, and Power.

* Five Weapon Abilities

Axe, Bow, Club, Spear, and Sword.

* Armour Expertise

* Player's Sex

Contained as a "M" or "F".

* Gold Pieces Carried

* Gold Pieces in the Bank

* Armour Class

Leather=2, Chain=4, Plate=6, with one added for a shield.

* Player's Weapons

For each of the players four weapons:

* Name

* Type

* Damage Dice

* Sides per Die

If a player does not have four weapons, his weapons will be first, and all other weapon names will be "NONE".

Except for strings, and gold in hand and the bank, all of the information is stored as an integer number, with all probability numbers stored as percentages (perfect=100).


When a player leaves the Main Hall to go on an Adventure, first his character is deleted from the CHARACTERS file, and then the player is prompted to change diskettes. The program then tries to read a program name from the file EAMON.NAM on the adventure disk. If this name is found, a file called "MEAT" is opened on the disk and the data that was in the record of the CHARACTERS file is written into that file, preceeded by the record number that the character previously resided in. Finally, the program given in the EAMON.NAM file is run.

Once the adventure is over, control must be returned to the main Eamon programs. If the adventure ended in the character's death, all that must be done is deleting a file called "ADVENT" from the master diskette and running MAIN HALL. (You may instead run MASTER or WORLD and then do not have to delete the ADVENT file. If the character survives your adventurer, you will have to recreate him into the CHARACTERS file. The Main Program logic is already writing the character his own character record now, but you may want to change this if you have a special reason for it. Normally this is simply writing in the new information of the character into the old record given in MEAT. However if your program has the ability to quit for a while and come back later, it is possible for a new character to be stored in the old record. In this case you should search the "CHARACT" file for a free record to store the character, and write it in there (for an example of how this is done, list the CREATE program on the master disk.)

Once you have stored the character into the CHARACT file, you must re-create a file called ADVENT. This file has two pieces of data in it-- the name of the character, and the record he resides in of the CHARACTERS file. This too, is already done by the logic of the Main program, but it may be necessary for you to know what is being done, in case you want to change it. Once this is done, run MAIN HALL to finish. (Also currently done.)


USE OF THE DUNGEON DESIGN DISKETTE

The Dungeon Design Diskette is designed to make the job of entering new Adventure-like scenarios much easier. It includes a base to work from for your program, as well as a simple means of entering the data into the text files needed by that base program.

There are two base programs on the DDD, that can be used. BASEPGM.BAS has the basic logic you will need to create an adventure. MAINPGM.BAS contains more of the advanced routines that you may want to use. It is recommended to use the more advanced program MAINPGM.BAS.

The first step in creating your adventure is initializing the diskette. Use the format program that comes with your computer for this. Once this is done, you may use the DUNGINIT program to set up the files needed for the game files.

The program on the DDD (Dungeon Design Diskette) will do several things for you---it will create files on the disk, your program's name into EAMON.NAM, and put in the starting data needed for the dungeon editing program to work.

You are now ready to begin entering data for the adventure. Insert the DDD and run the program 'DUNGEON EDIT'. This program is the one that puts your basic dungeon design into the files.

A few general remarks are in order now--First of all, you should always have your dungeon designed before entering it. Decide what rooms you have, how they connect, what monsters inhabit those rooms (and what their attributes are), and what treasures are sprinkled about.

For each of the four things you can enter (ROOM, ARTIFACT, EFFECT, and MONSTER), you can either add a new one onto the end of the list, or edit one already there. You cannot delete a thing already there (though you can replace it through editing). You also must not go beyond 100 of any of the things (though the total can go over 100). Too many rooms, without enough monsters and artifacts will tend to be boring. If you put in a lot of monsters simply to keep it from becoming boring, this too will become boring. A bit of balance is needed and should be far lees than the system imposed limits. As a guideline, the more practical limits of the system are: (-in general-)

* Rooms: 50-85

* Artifacts: 35-5

* Effects: 0-25

* Monsters: 12-35

If you do go over the 100 limit on anything you will not be warned of your error, but you will not get the results you wanted.

Adding and Editing will be almost identical for all four data types, except that in 'editing' your old entry will be placed after the cursor at the start of entries.

* RETURN

This will have the effect of not altering the previous contents of this field.

* End

this moves the cursor to the end of your input.

* Del

This deletes the character that the cursor is sitting on, bringing the characters after the cursor forward one space.

* Ins

This inserts characters in the current text, moving all characters after the cursor back one space. This is good if you are entering a line that you want to look good as it wraps around your 80-column screen.

* <-,-> (FORWARD & BACKWARD ARROWS)

These move the cursor back or forward by one character.

Your entries cannot go over 250 characters, and you should not use quotation marks ("). You may use commas and colons in alpha fields only. Do not have any trailing spaces on the names of items. (BASIC regards "LION" as being different from "LION ", though your player may not recognize the difference. Additionally, if you are entering a number, enter only a number, do not include any leading or trailing spaces or other extraneous characters.

Another thing to watch out for is names on artifacts that begin with a number. The program will accept them and you can use them, but when you try to give the item to a monster the program will not understand. For example assume you want to put an 8 inch knife in your adventure. When adventurer picks it up and tries to give it to his friend the Doctor, the Doctor will think he is being given 8 gold pieces. That is because the program uses the BASIC VAL function to get the value of the input field. When the VAL is greater than zero, it assumes you are giving away gold pieces.

For every room, you will need to give eight pieces of data. First is the room name, which cannot go over 50 characters. In the program it will be printed as: "You are (room name)", so you should use names like, "at the Cave Entrance". Secondly you will need to give a room description. It is not preceeded by anything, so it must be a full and complete description. If your description is longer than 80 characters, you must pad it with spaces so that when the description wraps around the IBM-PCs 80-column screen, the breaks are between words. Finally, you will have to give the room numbers that you can get to from that room in each direction. A special code has been developed--if you give a room of 0, you can never move that direction. If you give positive direction, there's an open connection. Negative numbers are special and usually indicate a secret passage. Another special code is -99 which indicates the exit to home. Negative numbers can be easily made to have special results by altering the base program (see below).

Artifacts are somewhat similar. An artifact is any non-living thing that is in the dungeon. In addition to what you might normally think of as the artifacts you want to include: (gold, silver, statues), you must also have as an artifact all weapons used by your monsters, as well as a dead body for every monster.

For each artifact, you will again need a name (this time just the normal name, such as "GOLD COINS") and a full description. You will also need to give the item's room that it starts in, its value in gold pieces, its type and its weight. The room is usually a positive number, however if the item isn't in the dungeon yet (such as a dead body) you should assign a room of zero, and if the item starts by being carried by the player, its room is -1.

Under the original design, there were only four types of artifacts available. Type 0 is a treasure with a value that will not change with the player's charisma, such as a pile of gold coins. Type 1 is a treasure whose value will vary with the player's charisma, such as a Persian rug. Types 2 and 3 are weapons, with 2 being a weapon that can be bought at the Main Hall, and 3 a special weapon.

If your artifact is a weapon (type 2 or 3), you will also have to enter some more information on it:

* Weapon Complexity

* Weapon Type

1=axe, 2=bow, 3=mace, 4=spear, 5=sword.

* Weapon Damage

Contains the number of 'dice' thrown for that damage, then the sides per die.

Under the advanced design, (using the base program MAINPGM.BAS) there are ten types of artifacts available. These artifact types are already supported in the program MAINPGM.BAS on the DDD. The artifact types 0 through 3 are the same for the advanced version as for the old version except type 3 is a magic weapon rather than just a non-standard one.

The additional artifact types available are listed below:

* Type 4 is a container to put things into.
* Type 5 is a lantern or other light source.
* Type 6 is a heal potion or elixir.
* Type 7 is readable.
* Type 8 is a shovel.
* Type 9 is a key.
* Type 10 is a bound monster.

The dungeon edit program has the torturous task of figuring out the data usage of each of these artifact types and how to prompt for the data. The base program must do the processing of the usage of these artifacts.

The other major type of data to be put in your files is monsters, which are any living (or animate) things in the dungeon. Monsters are similar to characters, however they are assumed to have their full armour expertise and know all weapons equally well.

each monster you will need the following:

* Name

* Description

* Hardiness

This is the same as for a player.

* Agility

* Friendliness

The percentage chance of making friends with a character of a charisma of 10.

* Courage

A monster will flee from a fight after he has received that percentage of his hardiness in hits, on the average.

* Room to start in

May be zero if in a chest or other special thing activates him.

* Body weight

* Special defensive odds

Normally 0, but magic or size/speed may make some monsters harder to hit. Given as a %.

* Armour

Hits absorbed or stopped per blow. This may be things such as a furry skin or magical effects.

* Weapon number

A pointer to some artifact. If the weapon number is 0 it is assumed natural weapons; claws or teeth. If the weapon number is -1 then the monster isn't carrying a weapon.

* Weapon damage

* Blow striking chance

The chance of the monster using his weapon to successfully strike a blow.

* Sides and dice of dimage

The damage the monster can inflict with his weapon.

These numbers do not have to be consistant with the numbers given in the artifact list; a monster may know how to use his weapon better than someone who doesn't know some secret, and the chance of hitting is of course affected by the monster's weapon expertise and other information not stored.

There is a fourth thing that can be entered called an "EFFECT". It is there for your own special use--it permits you to store some strings on disk so that it can be called in quickly. To read an effect, set R to the effect and do a GOSUB 23800.
NOTE: This routine also prints the effect (A$) that it reads. For further examples of its use you might want to check out The Beginners Cave.

Once you have put all of your data into your files, you will probably want to see what you entered, to catch errors and get a good overview. There is an option included in the DUNGEDIT program on the DDD that will list your adventure data in a simple, orderly and organized fashion.

Although it might be very useful to examine other people's dungeons after you have played in them to learn how to design your own, it goes without saying that only a cur and a scoundrel would list someone's dungeon before playing to avoid dangers!


ADAPTING THE BASE DUNGEON PROGRAM

All of the work above was to put your dungeon into a format that the computer can use. It couples with a program called the base dungeon program BASEPGM.BAS. The advanced ver- sion is called MAINPGM.BAS. If there is nothing unusual, that is not covered by the special artifact types or coding already provided for, you can simply save the base program on your diskette and you are nearly ready to test. The explanation or mission program should then be modified to print the introduction and run the MAINPGM program. This program should already be on your disk.

However,if you want special effects such as a sword that teleports the user to another room at random times (gee, I may use that) these explanations should help you.

* Lines 100-199

are the main loop.
Every time a command is gotten, those lines are run through. If you want to have something done (or checked for) every turn, it should be put in lines 500-900.

* Lines 1000-1999

reads in monsters and artificats.
It also does some other initializing. If you want to add a new command, you will have to change line 1910 (increase the number in the DATA statement), 1920 (add the new verbs--no spaces are permitted), and line 290 (add the line numbers to go to). If you want special things to happen at the start, such as a fee from the player's gold for some item, do it in lines 1150-1890.

* Lines 2000-2999

are the closing routines.
When this is entered, if the variable DIE has a non-zero value the player didn't survive. Lines 2100 thru 2290 are for your additions.

* Lines 3000-3999

are the movement commands.
If you want to magically move the player, set R2 to the number of the room to enter and go to 3500. If something happens so as to make the monsters reconsider their reactions to the player, a GOSUB 3600 will check the reactions of all monsters who are unaligned (see below). If you have special results and/or conditions for movement and have thus given negative room numbers in the editor, the place to check is in lines 3050-3490.

* Lines 4000-4499

are to get things.
Lines 4200-4299 are the place to add special results when getting some artifact. You may place synonyms in lines 4030-4110 (such as, 4030 IF S$= "BAT" THEN S$="VAMPIRE BAT"). Finally, if a command MUST have a subject, GOSUB 4900 will ensure one is gotten.

* Lines 4500-4599

contain a monster search routine.
To determine which monster is being referred to, this routine can be performed. It will return the variable M and the variable FO. If the monster is found, FO will contain a -1 and M will be the monster's number.

* Lines 4800-4899

contain an artifact search routine
To determine which artifact is referenced, this routine is performed. It returns variables A and FO. If the artifact is found, variable FO will contain -1. If not, it will be 0. Variable A will be the number of the artifact.

* Lines 5000-5999

is the drop routine.
If something special happens when the player drops something, then this should be put in here.

* Lines 6000-6199

is the look or examine routine.
This routine will do GOSUB on lines 6200 and 6400 to give artifact and monster descriptions.

* Lines 7000-7999

are the attack commands and subroutines.
Lines 7700-7999 are to kill monster M. If things happen when a monster dies (such as dropping something from the body), it should be put in this section.

* Lines 13000-13999

are the Power Spell.
As told in the Players manual, this spell can do anything at all-- feel free to throw out this section and add your own.

* Lines 16000-16999

are the say command.
This section is very useful for 'words or power' or some other strange effects.

Most of the variables are self-explanatory and also can be changed locally if desired, but a description of some of the others are--:

* AC

- Armour class of player

* AD%(*,*)

- Artifact data
The first subscript is the number of the artifact, and the key for the second is:
* 1=Value
* 2=Type
* 3=Weight
* 4=Room
* 5=Complexity
* 6=Weapon Type
* 7=Dice
* 8=Sides
* 9=Flag if seen

* AE

- Armour expertise

* AN$(*)

- Name of artifacts

* BANK

- Gold player has in bank

* C

- Holds number of command given

* C$(*)

- Verbs program responds to

* CH

- Player charisma

* CZ$

- last command given

* DF

- defender

* DIE

- Logical flag, 1=player died

* DK$

- holds CTRL-D for disk commands

* RD%(*)

- room moved in each direction

* EA

- effect of armour on odds-to-hit

* FD%(*)

- full damage of side in combat

* FR

- fumbler roll/friend rating

* GOLD

- gold player has on person

* HIT

- logical flag if hit in combat

* INC

- logical flag if ability increased

* LK

- logical flag if 'looked' already

* MD%(*,*)

- monster data
First subscript is monster number, second key is:
* 1=Hardiness
* 2=Agility
* 3=Friendliness
* 4=Courage
* 5=Room
* 6=Weight
* 7=Defensive odds (%)
* 8=Armour
* 9=Weapon #
* 10=Odds to hit (%)
* 11=W Dice
* 12=W Sides
* 13=Damage
* 14=Reaction:
* 0-not met
* 1-unfriendly
* 2-neutral
* 3-friendly

* MN$(*)

- Name of monster

* MR

- Monster morale

* NA

- Number of artifacts

* NBTL

- logical flag if in battle

* NC

- Number of commands

* NM

- Number of monsters

* NW

- Total count of weapons in game

* NZ

- Number artifacts not player weapon

* OF

- Number of offensive monster

* RAISE

- logical flag if power raised

* REC

- Player record in char file

* RL

- Random number 1-100

* ROOM

- Room player currently in

* RR

- Random number 1-100 for power

* S$

- Subject of command given

* S2%(*)

- Current spell ability

* SA%(*)

- Total spell ability

* SEX$

- Holds 'M' or 'F' for player

* SPD

- Number of turns speed spell to go

* SUC

- logical flag if spell succeeded

* TD%(*)

- Damage taken for side

* TP

- Total price of treasure

* TT

- Temporary Truce Flag

* V$

- Verb of command

* V%(*)

- Flags if player been in room

* WA%(*)

- Player's weapon ability

* WD%(*)

- For weapon, dice of damage

* WN$(*)

- Name of player's weapon

* WO%(*)

- Weapon complexity

* WP%(*)

- Weapon pointer (in close)

* WS%(*)

- Sides/die of damage for weapon

* WT

- Weight player carrying

* WT%(*)

- Weapon type

* WZ

- Number of weapons player brought

Once you have "played-out" other people's adventures,it would definitely be a good idea to tear it apart to see how other people have adapted this program to their own use. Also, if I might give a few suggestions to new Eamon dungeon designers-

*1.

Be fair to the adventurer.
Don't try to stack the odds totally against him. A good rule of thumb is that an adventurer can lick about five times his own Hardiness in opponents, with allies Subtracting their Hardiness from the opposition. If you continually design pure death traps (and don't reward the successful outrageously), people aren't going to want to send their carefully-built up characters through your dungeons. On the other hand, if your dungeons are just big give-aways, they will quickly become boring.

*2.

Don't overdo "zap-you're dead" traps.
A few are alright (such as the book in the Beginner's Cave) so long as they are not overdone and are not required to survive them to get out. Thus, if your only way out of the tunnels is drinking a potion that half of the time teleports you away, the other half poisons you, it isn't fair.

*3.

Don't overdo the monsters.
Particularly to those who have designed dungeons for non-computerized role-playing games, remember that there is only one adventurer going in, not an army! No matter how great a character is, he cannot by himself handle a dozen thugs.

*4.

Don't be afraid to break any of these rules.
If you truly believe that your dungeon will be better, do anything you please. The worst that will happen is that people will not play in it and you'll have to change a few things.


Final Words

The process of creating your own adventure in Eamon will require that you have a basic knowledge of programming in MS-BASIC and in operating your system as far as being able to load and save programs as well as copying files and diskettes. If you are unfamiliar with these operations, you should review them until you are comfortable doing these functions.

The following is a summary of the steps to follow to create an adventure of your own. This summary is provided to allow you an easier step-by-step method of creating your scenario.

1. Be sure you have everything you need. The things you will need are:


*A theme for the adventure.
This is usually the hardest part.
*A map of the setting for the adventure
*A list of all the monsters that will appear.
*A list of all the artifacts you will need.
*The DDD (Dungeon Designer's Diskette).

2. The next step is to initialize your adventure diskette.

This is done by using your own DOS FORMAT program. You then use the DUNGINIT program to build.

3. Copy the two programs from the DDD to your adventure disk.

The first one that should be copied is LEADIN.BAS. This program will take on the name of the filename that you entered in the DUNGINIT. The name that you use in the copy command must be the exact name that you used when you initialized the diskette.

The second program that you have tocopy from the DDD to the adventure diskette is the main adventure program:

* BASEPGM.BAS or
* MAINPGM.BAS

This will depend on whether you want a stripped down base program or the more advanced version.

4. The next step is to add the data or information about your adventure.

All items are added using the DUNGEDIT.BAS program.

5. Make your program changes to MAIN PGM.

This should be done after all your rooms, artifacts, etc. have been entered. These will be all of the things that you want to be special about your adventure.

6. The next phase will be to test your adventure.

Use the Eamon-PC Master to write a MEAT file onto your adventure diskette by going to the Main Hall and select 1 for go on an adventure.

You may then insert your adventure disk and you should now begin your test. From that time on, to repeat a test you should be able to simply run MAINPGM. (Or if MAINPGM is already in memory, simply type RUN).

Another helpful hint: to restart an adventure if it bombs off you should be able to type GOTO 210.

7. Have the program tested.

When you are sure your adventure is ready you could have a friend test it. When the adventure is completely ready, send a copy of it to:

        John Nelson
        2701 Arnold Road
        Des Moines, Ia 50310

It will then be an "official" Eamon Adventure and may be distributed.


If you have any questions or problems designing an adventure, write to the above address. We will do our best to help you get back on the right track.

THE END