Dragon Engine Beta 1.0
Documentation 1.0
Copyright 2000 by Litmus Paper Productions

----

00. TABLE OF CONTENTS

1a. INTRODUCTION
1b. THE LEGAL BIT

2. INSTALLATION

3. THE BASICS

3a. MENUS
3b. BRIEF SUMMARY

4. PLAYING A GAME
4b. HINTS ON THE EXAMPLE GAME

5. CREATING A GAME
5b. THE MAIN MENU
5c. THE EDIT MENU
5e. EDITING MAPS
5f. GLOBALS
5g. ITEMS EDITOR
5h. SPELL EDITOR
5i. CLASS EDITOR
5j. CREATURE EDITOR
5k. ROOM EDITOR
5l. TILE GROUPINGS
5m. TITLE ANIMATIONS
5n. TILE EDITOR (TILE ATTRIBUTES)

6. APPENDICES
6a. MAP LAYERS
6b. QUESTS
6c. INTRO1.TXT, INTRO2.TXT, ENDING1.TXT, ENDING2.TXT
6d. HOW DO I? QUESTIONS

7. TROUBLESHOOTING
7a. THE PROGRAM CRASHES MY SYSTEM ...
7b. EVERYTHING IS MOVING TOO FAST/TOO SLOW
7c. THE CONTROLS ARE TOO TOUCHY/SLUGGISH
7d. THE MIDI MUSIC SOUNDS TERRIBLE/ISN'T FINDING MY WAVETABLE CARD
7e. SOMETIMES WHEN A MIDI FINISHES PLAYING AND THEN STARTS OVER (IN THE GAME),
THE MIDI PLAYBACK GETS SCREWED UP.

----

1a. INTRODUCTION

What is Dragon Engine?

Dragon Engine is a program that allows the creation of tile-based RPGs.
These RPGs are heavily influenced by 1980s tile-based RPGs and as such play
very much like a game from that era.  There are however several modern
features in this program which were impossible during the technological
dark ages, such as the ability to include full motion video into your games,
wavetable soundcard support, and neat-o looking lighting effects.

1b. THE LEGAL BIT

Dragon Engine Beta 1 is freely distributable in it's current form.  You may
put it up for download on the web, you can send it to your friends and
housepets, you can make a million copies and throw them from the top of
the empire state building.  You may not charge money for Dragon Engine.

Dragon Engine 1.0 will be released once all the bugs have been worked out
of the current beta version.  I'm not sure wether this version will be
freeware, shareware, or what.  Most likely I will leave it freeware
and have an enhanced version (high res, perhaps) that is available for
a small amount of money.  More on this later.

2. INSTALLATION

a. Unzip all zip files to the same directory.

b. Open the file dengine.cfg in either notepad or EDIT.EXE and specify your
hardware configuration.  If you are using a standard VGA adapter and have
no wavetable card, you can probably skip this step.  If you are using a
wavetable card, this step is especially recommended.

c. If you are not running from windows, you will also need to download a
program called CWSDPMI and unzip it to the same directory before Dragon
Engine will run.

d. You are ready to run Dragon Engine.

3. THE BASICS

If this is your first time using Dragon Engine, it is recommended that you
first play the example game for a while to get a feel for the engine and the
possibilitys therein.

3a. MENUS

Most menus in Dragon Engine work in the same way.  You have three ways that
you can make a selection:

        a. By left-clicking on it with the mouse cursor
        b. By moving the pointer using the arrow keys, then pressing space
        c. By typing the first letter of the selection

3b. SUMMARY

Here's a basic, basic summary of things.  These are discussed in more detail
in sections 4-5.

PLAYGAME.EXE is the playgame executable.  To play the example game, run
this.  For a list of commands in the example game, press F1.

EDITGAME.EXE is the editgame executable.  This is menu driven, has mouse
support, and is fairly straightforward.  More of the editor can be found
under section 5.

4. TO PLAY A GAME

Run the executable "PLAYGAME.EXE".  You will arrive at the title screen.
Enjoy the title animation for a while, if you wish.  You can create up to 5
of these for your game.

Select "View Introduction".  This will give you a small welcome message,
followed by a full motion video bit, then another small welcome message.

Select "Start New Game".  Beta 1 comes with an example game.  You will first
have to create a party of 6 adventurers.  Select an empty slot and you will
be prompted with onscreen instruction for creating your party.

Here is a summary of the classes in the example game 1.0:

Uridium: Can cast any spell, use any weapon.  Requires 200 xp for level 2.
Recieves normal MP.

Bard: Can cast blue and red mage spells, but only up to level 4.  Can use
most weapons and armor but not heavy weapons and armor.  Requires 100 xp for
level 2.  Recieves normal MP.

Red Mage: Cast cast any red mage spell.  Can only use light armor and
staff, rods, or slings as weapons.  Requires 100 xp for level 2.  Recieves
double MP.

Fighter: Can use any weapon or armor, but cannot cast spells.  Requires 100
xp for level 2.

Rogue: Can use most weapons and only light armor.  Cannot cast spells.
Recieves +1/DEX automatically at trainers.  Requires 80 xp for level 2.

Blue Mage: Can cast any blue mage spell.  Can only use light armor, staffs,
rods, and slings as weapons.  Requires 100 xp for level 2.  Recieves double
MP.

Spellsword: Can use almost any weapon or armor.  Can cast any red mage spell
up to level 6.  Requires 100 xp for level 2.  Recieves normal MP.

Paladin: Can use almost any weapon or armor.  Can cast any blue mage spell
up to level 6.  Requires 100 xp for level 2.  Recieves normal MP.

Wizard: Can cast any blue or red mage spell up to level 6.  Can only use
light armor and staffs, rods, or slings as weapons.  Requires 100 xp for
level 2.  Recieves double MP.

Monk: Cannot equip any weapons.  Can use most armors, but not shields.
Is skilled in unarmed combat.  Amount of damage dealt goes up by level.
Requires 100 xp for level 2.  Cannot cast spells.

Barbarian: Can use most weapons and armor but cannot cast spells.  Recieves
+1/STR automatically at trainers.  Requires 100 xp for level 2.

Healer: Can cast any blue mage spell.  Can only use staffs, slings, rods, and
light armor.  Casts heal spells at double efficiency.  Requires 125 xp for
level 2.  Recieves double MP.

Arch Mage: Can cast any red mage spell.  Can only use staffs, slings, rods,
and light armor.  Casts damage spells at double efficiency.  Requires 125
xp for level 2.  Recieves double MP.

Fighting classes should be given high dexterity and strength, spellcasting
classes high intelligence.  Classes with both skills should have a more or
less even distribution.

Once you have created 6 party members, select "Begin Game".  You will appear
on the map.  Move using the arrow keys.  Just about every key on the keyboard
does something.  F1 will bring up the list of commands.

Move about and explore.  There is a town near where you started.  A castle 
is to the west.  Make gaining equipment for your party and buying spells for
your mages your first priority.  Note that your mages will be mostly helpless
until you buy spells for them.  Spells also require gems.  Gems are hidden in
several places, they are also available for sale in towns.

4b. HINTS ON THE EXAMPLE GAME

        1. Before spending your starting gold go west to the castle.  Search
        the castle carefully.  There is a lot of of useful equipment hidden
        there.

        2. Carry torches or have light-granting spells before going into the
        caves.

        3. Towers have a wide variety of enemys, and don't require torches
        to explore (as long as it's daytime while you are in there).  They
        are good places to gain XP and equipment.

5. CREATING A GAME

Run the executable "EDITGAME.EXE".

Note that if you do not want to distribute editgame.exe with your game, you
don't have to.  A password protection function will be added for extra
security in the near future.  This will prevent anyone from looking at your
game until they have completed it, and been given the password.

5b. THE MAIN MENU

Edit Game
        This will take you to the edit menu, where the actual creation of
        the game takes place (covered in section 5c).

Init Game/Maps
        This takes you to a submenu from which you can create blank maps,
        or erase any or all of the game data.

Quit to DOS
        Exits the program

5c. THE EDIT MENU

Map Editor
        The map editor is covered under section 5e.

Globals Editor
        Takes you to a submenu where you can specify many variables which
        affect the rest of your game, including the starting party parameters
        and game introduction, etc.  This is covered in section 5f.

Items Editor
        This is covered in section 5g.

Spells Editor
        Section 5h.

PC/Classes Editor
        Section 5i.

Creature Editor
        Section 5j.

Room Editor
        Rooms are single screenfulls of tiles joined togethor in a number of
        ways.  Used for towers, caves, and more.  Covered under section 5k.

Tile Groupings
        This allows you to make neat groupings of tiles which are used while
        editing maps and rooms.  Covered under section 5l.

Title Animation
        Lets you create up to 5 different title screen animations which are
        displayed at the title screen of your game.  Covered under section
        5m.

Quit to Main
        Returns you to the main menu, section 5b.

5c. EDITING MAPS (THE MAP EDITOR)

Maps in Dragon Engine can be up to 255x255 tiles.  This is a VERY large map.
The overworld in the example game is 50x50 tiles.  You can have a virtually
unlimited number of maps and join them togethor in a number of ways.

5c.01 THE MOUSE

Most things in the map editor can be done using only the mouse.
Your mouse starts out as a pen.
While the mouse is a pen, left clicking on the map will add the
selected object into the location you have clicked on.
Right clicking on the mouse changes the mouse shape and function.
Right click once, and the mouse turns into four arrows.
While the mouse is four arrows, left clicking on the map will move you
in the direction of the mouse cursor.
Right click again, and the mouse turns into an eraser.
While the mouse is an eraser, left clicking on the map will erase an object
of the type currently being edited from the square you have selected.
What sort of objects these clicks are affecting depends on what layer you
are editing.  Layers are covered under section 6a.

You will also notice that there is a row of small icons at the bottom of the
map display portion of the screen.
The fucntion of these icons is as follows (going from left to right):
Tree: Edit the Ground layer *
Glowing E: Edit the Portals/Events Layer *
Glowing Gem: Edit the Items layer *
Human: Edit the NPC layer *
Goblin: Edit the Roaming Monster layer *
House: Edit the roofs layer *
M: Edit the NPC Walkmap
X/Y: Teleport to a specified X/Y coordinate on your map
Hourglass: Timewarp to a given hour.  Enter this in military format (1-24).
P: Jump to the editing map menu (section 5c.03)
* layers are explained under section 6a

If you are editing the ground layer, you will be presented with a group of
icons in the lower right hand corner.  Clicking the up/down arrows next to
these groupings will toggle you through the different tile groups.  Clicking
on a tile in the group will select it.  You can change these groupings in the
tile groupings editor (section 5l).

The items layer also uses this lower-right hand area for selecting items.

5c.02 THE KEYBOARD

A summary of keyboard commands:

The arrow keys can be used to move.
[SPACE] Adds the selected object to the current square.
[C]hange Layer (layers covered under 6a)
[F]ill Screen with Selected Tile (Ground layer only)_
[F]ind NPC, homes in on an NPCs location.  (NPC layer only)
[G]ame Starts Here (move game start location, denoted by a blue square onmap)
[J]ump to X/Y coordinates
[L] Re-load Map
[M]Add several of the selected item to the current square.  Only works if
   editing items.
[S]ave Map
[T]ile Editor.  Covered under section 5n.
[V]iew.  Jumps to an overhead view of the map from a great height.
[Z]ap Menu.  This menu allows you to delete all objects of a chosen type
from the map.
[PageUp] Go to the next map
[PageDown] Go to the previous map
[F10] Screen dump (saved as dumpx.pcx).
[ESC] Map Properties (below)

5c.03 EDITING MAP MENU

Edit Tiles
        Jump to tile editor.  Covered under section 5n.
Change Layer
        Change to another map layer.  Layers explained under 6a.
Map Properties
        A submenu containing information about the map.  See section 5c.04.
Jump to Map
        Jump to another map.
Load Map
        Reload the current map
Save Map
        Save the current map
Fill Map
        Fills the entire map with the selected tile.  You will be prompted
        for confirmation.  This only works when editing the ground layer.
Find/Replace
        Lets you replace all tiles of one type with another tile.
        This works for just the current screen, or the entire map
        (your choice).

5c.04 MAP PROPERTIES

X/Size
Y/Size
        The size of the map.  X is number of tiles across, Y is number of
        tiles down.  Maps should not be smaller than 20x20 in size or you
        may encounter problems.  Maps cannot be bigger than 255x255.
Outmap
OutmapX
OutmapY
        This either set to wraparound, or to another map.  This repesents
        what happens when the player moves out of bounds on the map.  If
        this is set to wraparound, he will emerge on the other side of the
        map.  If it is set to a map, he will emerge onto map outmap at
        outmap x, outmap y.
MapMusic
        Change the music played while on the map.  The program dosn't know
        how many midi files are in the music\ directory.  Any value will be
        accepted but entering a nonexistant midi file may cause problems.
StairUp
StairDown
        Taking a stairway up or down will take you to these maps.  If you
        have no stairs on your map, this setting is not used.
Change Out of Bounds Tile
        Lets you change the tile that is displayed outside of the map
        boundary, if the map is not a wraparound map.
Toggle Wraparound
        Toggles between wraparound and specifying an outmap.
Z/Mapname
        Specifies the map's name
Lighting
        This is either Open or Closed.  Open maps are lit during the day by
        the sun and dark at night.  In closed maps or open maps at night,
        light either comes from items with a light radius, or must be brought
        in by the player in some form or another.
[ESCAPE] Exits this menu

5c.05 ADDING EVENTS

Events can do any number of things in your game.  Display text, change the
music, increase an ability, or jump to the endgame sequence and just a few
possibilitys.

When editing the events layer, map squares which have an event in them are
marked with a yellow square.  If you move onto a yellow square, you will
see more information about what this event is on the right side of the
screen.

5c.06 ADD/EDIT EVENT MENU

Type
        Lets you chang betweem the 5 different event types.  Each of these
        is very different from each other so they have their own sections
        below.

5c.06.a PORTAL/MAP

This is a portal that leads from this map to another map.

Map(To)
        Specifies which map this leads to, and where on the map it leads.
Behaves
        This is always castle, dungeon, teleport, or town.  If this is set
        to teleport, the player will automatically appear on the destination
        map when he moves onto this square.  If it is set to castle, dungeon,
        or town, the player enters in the usual way (by moving onto the
        square then pressing [E]nter).
Here all the time/Here when
        You can create a portal which is only active during a specific
        hour of the day.  Select this option to do this.
Alt Tile
        Only used if the portal is only active during one hour of the day.
        When the portal is active, this tile is displayed instead of the
        tile that is normally displayed at this location.
Quest Req
        You can specify a quest requirement before the player can enter
        this portal.  More about quests in section 6b.
Item Req
        You can specify an item requirement before the player can enter this
        portal.
Requirement Not Met Text
        If the player does not meet the quest and/or item requirements, this
        message will be displayed.

5c.06.b MONSTER GENERATOR

Monster generators automatically produce a group of wandering monsters after
a specific amount of time has passed on the map.

Quest NOT Required
Quest Required
        If a quest not required is specified, then this monster generator
        will only function so long as that quest has not been completed.  As
        soon as that quest is completed, it will stop functioning.  If a quest
        required is specified, the generator will not function unless this
        quest has been completed.  Either or both can be used.
View/Change Combat Location
        Specifys what combat location the party is taken to when attacked by
        this group of monsters.  Not that you will need to go to this room
        in the room editor and populate it with the monsters that you would
        like to have in this combat encounter.
Change Picture
        Changes the picture displayed for this roaming group of monsters.
Movement
        Either land only, water (L1) only, or flying.  If set to land only,
        can only move on standard open type tiles.  If set to water only,
        will only be able to move around on barrier type tiles, for example
        water.  If flying, can move over anything that is not a blocked
        tile.
Generates
        Specify how often this group of monsters is generator.  Options are
        3, 6, 12, or 24 hours.  Only time spent on this map counts towards
        this total.

5c.06.c LOOK/DISPLAYS TEXT

A simple event that will display a textfile when the player [L]ooks at it.
To create this textfile, you must use a text editor, for example notpad in
windows 95 or EDIT.EXE in DOS.  Type up to 2048 characters.  Do not hit enter
until you are finished.  Now save the result in the "TEXT\" subdirectory
of Dragon Engine, and name is "Text1.txt" or "Text2.txt", anything in that
series.  There are examples included in the archive.  Specifying a #
in this event pointing to a file that does not exist will probably cause
problems.

5c.06.d PORTAL/ROOM

Leads from the current map into a room.  Note that everything in rooms is
repopulated each time the player leaves and comes back in.  Monsters,
items, everything.

Room
        Specify which room this leads to
Behaves
        Dungeon, castle, tower or cave.  This only affects what is displayed
        when the player moves onto this square and presses [E]nter.
Lighting
        Open/Closed.  If open, sunlight penetrates and the rooms will be
        light during the day.  If closed, the rooms will get no sunlight and
        will require artificial sources of light provided by the player or
        by items placed in the room.
Quest Req
        You can specify a quest be completed before this room can be entered.
        More about quests in 6b.
Item Req
        You can specify an item requirement before this room can be entered
Not Met Text
        View/edit the message which is displayed if the requirements to
        enter this room are not met.

5c.06.d SPECIAL

This flexible event is used to play music, to display images, to jump to the
endgame sequence, and for a number of other things.

Activates
        Change what activates this event.  Special events may be activated in
        one of four ways.  Either by being walked on, looked at, pushed, or
        having a specific item dropped here.
Effect
        Specifies the effect produced when this event is activated.  Can be
        strength, dexterity, or intelligence +1 (the player will be prompted
        for which player to grant this to), completes a quest, jumps to the
        endgame sequence, play a specified music, display an image, or
        generate an item.
        Some important notes on how these work differently:
        If this event is used to increase an ability, and there is an item
        requirement (see below), that item will be destroyed when the ability
        is increased.  For all other effects, you can specify an item
        requirement but the item will NOT be destroyed.
        If this is used to play a music, you will be prompted for the song
        number, which will play in the background of this menu.  In the game,
        this will play until the player leaves the map or until another music
        event is called.
        If display image is selected, you will be prompted for an image #.
        The proper format is 320x200, 256 colors, pcx format, any palette may
        be used.  These should be stored in the images\ subdirectory and be
        named 001.pcx, 002.pcx, etc, as many as you like.  Specifying an
        image# that does not exist will most likely cause problems (the
        program dosn't know how many images are there).
        If generate item is selected, the item will be added to the map at
        the x/y coordinate of the event.
Requires Item
        Can specify an item that is required before this event activates
Requires Quest
        Can specify a quest# be completed before this can be used (see
        section 6b for more on quests)
View/Change Look Text
        This text is displayed when the event is [L]ooked at.
View/Change Failed Req Text
        This text is displayed if the player attempts to activate this event,
        but does not meet the item and or quest requirements.


5c.07 NPCs

You can have up to 50 npcs on each map.  Adding or editing an NPC will take
you to the Add/Edit an NPC menu.

5c.07.a ADD/EDIT AN NPC MENU

Name
        The NPCs Name
Class
        Can be any of the 16 configurable classes, or one of two NPC only
        classes, peasant and guard.
        Peasants can be equipped with whatever you want to equip them with
        (actually, any NPC can be be equipped with anything) but they are
        very poor fighters and only get 20 HP per level of experience.
        Guards are good fighters, get 30 HP per level, and serve a special
        purpose in the game.  If the player attacks an NPC (any NPC), and
        kills that NPC, every NPC of this class will seek him out and attempt
        to destroy him in retribution.  Also, when attacked by a guard,
        the party will be confronted with duplicates of this NPC, based on
        the NPCs level.  For example, if you create a level 8 guard, and this
        guard attacks the party, the party will be facing 8 guards in combat,
        all clones of each other.
        If a player manages to escape town, he can return and the guards will
        not attack him.  However the NPC he had killed will have recovered as
        well.
Level
        NPC's experience level
Align
        Good, neutral, or evil.  A summary of the NPCs morality.  Dosn't
        affect anything in the game at this point.
Str
Dex
Int
        NPCs abilitys
Edit Items/Equipment
        Select this to specify the NPCs equipment
View/Edit Greeting
        This is the message which is first displayed when the player [T]alks
        to this NPC
View/Edit Farewell
        This is the message which is displayed when conversation is ended
View/Edit Keywords
        Takes you to the NPC keywords submenu.  Documented furthur under
        5c.07.b.
Change Picture
        Change the picture used for this NPC.
Change NPC Location/This Hour
        Allows you to specify where the NPC should be at this hour.  NPCs
        can be placed in a different location at each hour of the day.  They
        will move from location to location, following the schedule that you
        have set up.  Note that it is important to setup an NPC walkmap as
        well so that they dont get lost (see section ).
        To elaborate on NPC schedules, you would use this command in
        conjunction with the [W] (timewarp) function in order to setup a
        daily schedule for your NPC.  [W]arp to 9am, [F]ind your NPC,
        press space, Select this option, move him to where he should be.
        [W]arp to the next hour, [F]ind your NPC, move him, etc, for each
        hour.
Behavior/This Hour
        Is either fixed/normal, sleeping, merchant/offwork.
        A fixed/normal NPC responds to keywords normally.
        A sleeping NPC cannot be talked to (he's sleeping).
        A merchant/offwork NPC will not offer any of his services (he's not
        at work right now).

5c.07.b NPC KEYWORDS

Interaction with NPCs in Dragon Engine is keyword based.  This means that
you type in a keyword relating to what you would like to talk about, and
the NPC responds (as long as it's a keyword that the NPC understands).
Generally the keywords "name" and "job" are understood by all NPCs.
This isn't a given, though, you can input any keywords you like.  But for
the sake of the player being able to figure out what else to ask about, it's
a good idea to always have name and job as keywords.
To make thing easier for the player, keywords which the NPC understands
are always highlighted in yellow within his responses.

5c.07.b.1 NPC KEYWORD EDITOR

Press ] and [, or N and P to cycle through the 20 possible keywords that
an NPC can have.

Press K to type the keyword.

Press R to enter the response.

Press [E] to attach an event to this keyword.  This event occurrs when the
keyword is type and happens in addition to the response text.  This will only
happen if the requirements are met (more on that in a bit).  Here are the
keyword events:

None
        Default.  Does nothing but display the response text.
Joins the Party
        NPC will offer to join the player's adventuring party.
Sells Items
        NPC offers items for sale to the player.  Which items are for sale,
        and at what price, can be changed by pressing [I] from the keyword
        editor.
Buys Items
        NPC offers to buy items from the player.  He will offer whatever
        amount of gold is specified as the item's value.  This is changed
        within the item editor (section 5g).
Offers a Room (Is an Innkeeper)
        Offers the player a room for his party.  Note that unless you specify
        a requirement, typing this keyword will jump directly to the "You have
        a good night's sleep" script.  Will restore all HP and MP for the
        party and will skip ahead to dawn of the next day.
Completes a Quest
        Completes a quest#.  More info on quests in section 6b.
Trains Party Member
        Will offer to train a party member.  You will be prompted for the
        the attributes to increase and the amount that they should be
        increased by.
Heals Party Member
        Completely restores a party member's hitpoints.
Cures Party Member
        Cures poison from a party member.
Resurrects Party Member
        Revives a party memeber who is at 0 HP.
Display Text File
        Displays a text file.  The format for storing these in is elaborated
        on in section 5c.06.c.
Sells Spells
        NPC offers to sell spells to the player.  Modify which spells and
        for how much by pressing [I] from the keyword editor.
Give Item/Completes Quest
        A double event which gives an item and (optionally) can also complete
        a quest.  The reason for the tacked on "completes quest" is that
        if this were not present, the player could continually type this
        command and recieve duplicates of the item.  By requiring that a
        specific quest not be completed, and have it be completed when this
        item is given, you can prevent this.
Yes/No Question
        Player recieves a "Yes/No" prompt at the end of the response to
        this keyword.  To specify what happens for each of these, go forward
        one keyword (this will say "Answered Yes" instead of Keyword:), and
        forward two keywords (this is where "Answered No" will be).

Press [R] to specify a requirement to this keyword.

If the player types this keyword and fails to meet the requirements, he
will see the requirement not met text instead of the actual response.  You
can edit this by pressing [O].

Options for requirements are:

Nothing
        The default.  Nothing required.
Gold
        You will be prompted for the amount.  Player will be prompted with
        "This will cost (x amount) of gold.  Pay (Y/N)?".
Level Is Above
        Player's level must be above a specified number.
Level Is Below
        Player's level must be below a certain number.
Quest is Completed
        A quest # must be completed (more info on quests under section 6b).
Party Has Item
        Checks to see if a certain item is in the group inventory.  Does not
        destroy that item.
Item/Payment
        Checks to see if a specified item is in the group inventory.  Then
        destroys that item and triggers the event.
Quest is Not Completed
        Only triggers an event if a quest has not been completed (Quests 6b).


5c.07.c ROOFS

The roof layer is a layer of simple tiles which are displayed on top of the
party icon if the party walks underneath them.  Userful for an overhanging
portcullis.  These tiles do not animate.

5c.07.d ROAMING MONSTERS

Roaming monsters are icons which attempt to reach the party.  Once this
happens, the party will be transported to a room to do combat with a group
of monsters.  After combat has been completed (the party has won or ran away),
the party will be transported back to the original map and this icon will be
destroyed.

5c.07.d.1 ADD/EDIT ROAMING MONSTER MENU

Change Picture
        Select this to change the graphic used for this roaming band of
        monsters.
View/Edit Combat Location
        Select this to specify which room the party will be teleported to
        for it's combat encounter.
Movement
        Is either Land Only, Water, or Flying.  If Land Only, this roaming
        monster cannot move over barriers but can move over open areas.  If
        water, the monster can only move on barrier tiles which are level 1
        barriers.  If flying, this monster can roam over any open or barrier
        tile.

5c.07.e NPC WALKMAP

The NPC walkmap is used by NPCs to find their way from one location to
another.  You don't need to define this unless you decide to give your
NPC's schedules; that is, if you decide to have them be in different places
during the day.

Simply connect all NPC locations by drawing pathways in the NPC walkmap
layer.  NPCs will walk on the walkmap and no-where else.  Note that you can
draw the walkmap over impassable objects and the NPC will be able to walk
over these objects, but the player will not.

5f. GLOBALS

These are values which affect the game's starting parameteres, introduction
and endgame sequences, as well as several global game variables.

5f.01 GAME PROPERTIES MENU (GLOBALS)

Page 1
Press ] and [ to cycle between pages 1 and 2

Game Name
        A name for your game.
Number of Maps
        The number of map files that your game is using.  When you create new
        maps from the init game menu, you will need to change this value to
        reflect how many maps you are now using, otherwise the game does not
        recognize the new maps.
Start Time
        When a new game is started the hour will be this (1-24)
Start Food
        The amount of food the player begins with
Start Gold
        The amount of gold the player begins with
Start Level
        What level the player's party members begin at
Edit Chest Type
        Lets you specify the chest types, used by chests and search/chest
        type items.  Covered under more detail in section 5f.02
Set Default Door Tile
        By default, when you create a door in the Tile Editor (section 5n),
        the "reverts to" value will default to whatever you set the default
        door value to.  I.E., when a door is unlocked and reverts to a not-
        locked door, this is the default door that it will revert to.
Set Default Fill Tile
        By default, when new map is created, it will be filled with whatever
        tile that you specify here.
Mage1 Name
Mage2 Name
        Dragon Engine support two branches of magic.  You can name these
        whatever you like.  In the example game we have red and blue magic,
        in traditional RPGs it's usually mage and cleric.  Classes can use
        one, both, or none of these.
Nightfall/Daybreak
        In 24 hour format, nightfall is the hour at which night begins,
        and daybreak is the hour at which day begins.
Starting Items
        At present isn't supported

Page 2

Starting Party
        Is either custom or 1 PC/Class 1.  If this is custom, after
        beginning a new game the player gets to generate an party of
        adventuring characters.  If set to 1 PC/Class 1, the player begins
        with only one player character whose class will be whatever you have
        defined the first class to be (in the class editor).  If beginning
        with only one PC, it is assumed that you will provide the player
        with NPCs who will offer to join his party.
Party/Num
        Is not used if beginning with only 1 pc.  This specifys how many
        characters the player will be able to generate at the beginning of
        the game.  Any number between 1 and 6.
Statistics Are
Stat/Base or Stat Minimum
Stat/Bonus or Stat Maximum
        This is always "Fixed" or "Rolled".
        If statistics are fixed, each new character that the player creates
        has "Stat/Base" in each ability, and "Stats/Bonus" as bonus points to
        to distribute among the three abilitys.
        If statistics are rolled, each new character that the player creates
        begins with a random value in each of the statistics, the highest
        possible value begin "stat maximum" and the lowest possible value
        being "stat minimum".  The player can re-roll these as many times
        as he likes.
Intro Text 1
Intro Animation
Intro Text 2
        This affects what is displayed when "View Introduction" is selected
        from the play game menu.  These can all be toggled on and off (Yes
        or No).  If intro text 1 is yes, the textfile intro1.txt from the
        text\ subdirectory is displayed at the beginning of the introduction.
        If intro animation is yes, the file intro.fli from the main game
        directory will be played.  If intro text 2 is yes, the file intro2.txt
        from the text\ subdirectory will be displayed after the animation
        is played.  Any of all of these can be used.
        Support for displaying full screen graphics as part of the intro is
        forthcoming.
        The format of intro1.txt and intro2.txt are elaborated on in
        section 6c.
Title Animation
        Is either no, if no title animations have been designed, or is
        Yes followed by a number (1-5).  You may create up to five title
        screen animations in the title screen animation editor (section 5m).
        A random title screen animation will be loaded when the game starts.
Win Game Text 1
Win Game Animation
Win Game Text 2
        This affects what is displayed when the endgame event is called from
        within the game (player has won the game).  These can all be toggled
        on and off (Yes or No).  If win game text 1 is yes, the textfile
        ending1.txt from the text\ subdirectory is displayed at the beginning
        of the end game sequence.  If win game animation is yes, the file
        ending.fli from the main game directory will be played.  If win game
        text 2 is yes, the file ending2.txt from the text\ subdirectory will
        be displayed after the animation is played.  Any of all of these can
        be used.
        The format of ending1.txt and ending2.txt is elaborated on under
        section 6c.

5f.02 EDITING CHEST TYPES MENU

Chest Type
        Which chest type you are editing.  Dragon Engine supports 100
        different kinds of chest types.
Locked
        Several options are available here: No, Yes, Pick, Yes-Key 1,
        Yes-Key 2, Yes-Key 3, Yes-Key 4, Yes-Magical.
        No means the chest is not locked.
        Yes-Pick means that the chest can be opened with a lockpick.
        Yes-Key1-4 means that the chest may only be opened by a key of
        the corresponding type.  Note that while up to 255 different kinds
        of keys are possible in Dragon Engine, only doors support all 255.
        Chests may only be unlocked by the first four types.
        Yes-Magical means that the chest has been locked by a magical spell.
        It may only be opened by a magical "open" spell.
Slot1-
Slot10
        10 slots in which an item and a percentage change that this item
        will appear may be specified.  Each chest can have 10 possible items
        in it, with a percentage chance (1-100) that this item will actually
        appear when a chest of this type is opened.  For each item, you must
        also specify the number of that item that appears (between x and x).
]/Next Chest
[/Previous Chest
        Select these to move forward one chest type or back one chest type
Quit to Main
        Returns you to the globals menu

5g ITEMS

Items are a wide category of objects.  At the ground layer of the map sit the
tiles, a collection of largely uninteractive objects which provide the
backdrop for the more complicated layers above them.  On the ground
layer sit trees, grass, the floors and walls of rooms, doors.  On top of
these sit complex objects like furniture, weapons, chests, rings, scrolls,
magical fields, frigates.  These are all items and reside in the items layer.
                                            
5g.01 ITEMS MENU (ITEM EDITOR)

Item
        Displayed the item number and item name.  If you selection this,
        you can jump to an item by #.
Type
        Item 1 is always the currency used by the game.  For every other item,
        this can be any of the following: Basic, Usable, Weapon, 2Hnd Weapon,
        Helmet, Shield, Armor (Body), Necklace, Ring, Transport,
        Furnitue/Fields/Etc, Food.
        Basic items can be picked up, but cannot be used or equipped.
        Usable items can be used in some way.  Their effect depends on
        their Function (see function below).
        Weapons can be equipped for use as a weapon.  A shield may also
        be equipped.
        2Hnd Weapons (two handed weapons) can be equipped as a weapon.
        A shield may not be equipped with a two handed weapon.
        Helmets may be equipped in the helmet slot (and increase defence).
        Shields may be equipped in the shield slot (and increase defence).
        Armor (Body) can be equipped in the body armor slot (increase def).
        Necklaces can be equipped in the necklace slot, and can preform
        a wide variety of functions (depends on function, see function below)
        Rings can be equipped in the ring slot and serve some kind of
        function (depends on function, see function below).
        Transports cannot be picked up, but they can be boarded.  They grant
        the ability to pass over barriers.  What kind of barriers depends
        on this item's power (see power below).
        Furniture/Fields/Etc is a kind of "catch-all" for items that
        cannot be picked up.  These may or may not serve a function (see
        function below).
        Food items will add to the party's total food when picked up.  The
        amount of food they add is determined by the power of the item (see
        power below for more).
Value
        The value, in currency, of the item.  This is only used in the game
        for NPCs who buy items from players.  (NPCs who buy items will offer
        whatever is specified under value for that item).
Class Restrictions                                   
        This allows you to specify which classes can equip this item and
        which cannot.  Only used by equippable items.
C/Function
        What exactly the item does.  If the item is basic, a weapon, or
        armor, this is not used.

        If the item is Usable, this can be set to any of the following: heal,
        cure, view, pick, key, tells time, acts as spell, grants light,
        or displays image.
        Heal restores HP on a single party member.  The amount if specified
        under power.
        Cure removes poison from a single party member.
        View displays a view of the current map from far above the player's
        current location.
        Pick defines the item as a lockpick.  The player can use this item
        to unlock chests and doors of the type "locked, pick".
        Key type items are used to unlock doors that require a specific key
        type.  The type of the key is a number between 1 and 255 and is set
        under P/Key.
        Tells time will display the current time when the object is used.
        Acts as spell will trigger the effect of a spell when the item is
        used.  This is defined under P/Spell (you must enter the spell #).
        Grants light will create a light radius around the party icon, or
        around a single party member if the party is currently in a room.
        The duration of the light (in minutes) is defined under P/Durtn,
        and Range defines how big the light radius is (between 1 and 6).
        Displays image will display a full screen graphic from the images\
        directory when the item is used.  Good for a map, scroll, or
        picture type object.  Files in this directory should be 320x200,
        256 colors, in any palette, and named 001.pcx, 002.pcx, etc.  The
        picture is specified by number under P/Image.

        If the item is a ring or necklace, the function can be normal,
        protection, regeneration, spell/immune 1.
        Normal rings/necklaces have no effect when worn.
        Protection grants a bonus to defence (defined under power).
        Regeneration heals back 1 HP per round while they are worn.
        Spell/Immune 1 gives the wearer immunity to all level 1 attack
        spells (this does not currently work, as monsters and NPCs do not
        cast spells at the party yet).

        For transports, function is either "Behaves/Ship" or "Free Moving".
        A behaves/ship transport may only move onto other barrier squares.
        For example, a ship should only be able to move around on the water,
        and not sails around on land.  On the other hand, free moving
        transports can move over barriers and over open areas.  For example,
        a flying machine or hot air balloon.

        If the type is Fields/Furniture/Etc, the function can be: None,
        Look/Clock, Mirror, Chair/Bed, Chest/Container, Search/Chest Items,
        Move/Damage, Move/Poison.
        If set to none the object serves no special function.
        Look/Clock objects display the time when [L]ooked at
        Mirror objects display a reflection of the party icon when you stand
        near them.  In the tileset this is referenced as the next tile up.
        In other words, when you are one square from a mirror object, the next
        tile in sequence is displayed instead.  Mirrors only work on maps
        (not in rooms).
        Chair/Bed objects display the next tile in sequence when the party or
        an NPC occupies the same location on the map.
        Chest/Container type items will produce items when they are opened.
        The items produced is based on a chest type and is picked when the
        item is added to the map or room.  You can define the various chest
        types in the globals menu (see section 5f.02).
        Search/Chest Items objects work the same way that chest/container
        objects do, except the items are produced when the player searches
        this item, instead of opening it.
        Move/Damage type items will damage the player's party if he moves
        onto them.  The amount of damage dealt is specified under Power.
        Move/Poison type items will poison the player's party if he moves
        onto them.
Pushable
        For furniture/fields/etc, this defines wether or not the [P]ush
        command works on this item.  [P]ush allows the player to move
        items around rooms.
Power
        For weapons and armor, determines the effectiveness of the weapon
        and or armor in terms of damage for weapons and prevention of damage
        for armor.  A shield with a power of 1 will absorb 1 point of damage.
        A sword with a power of 5 will do 5 points of damage, although
        damage is random, is lessened by the target's defence value, and is
        furthur increased by strength.
        This is also used by items with functions, although this use is
        covered under "Function" above.
        In the case of transports, this specifys what kind of barriers
        the transport is able to cross.  For instance, if you designate
        all water as barrier level 1, and create a ship that can cross
        level 1 barriers, the ship will be able to cross the water.
        Note that a transport with a power of 2 can cross level 1 and level
        2 barriers.
R/Light Radius
        For some objects, you are able to specify a light radius.  The object
        will radiate light out to whatever distance you specify here.
Range
        This is used by weapons to specify how many squares away this
        weapon can reach a target.  Melee weapons should generally have a
        range of 1, missle weapons a range of 3 or higher.      
R/Seperate Tiles for N/S/E/W
R/1 Tile Regardless/Direction
        Used by transports to specify wether the graphic for that transport
        changes depending on what direction it is facing.  In the example
        game, the frigate has a seperate graphic for each direction of
        movement (N/S/E/W).  These should all be on the same line in
        tiles.pcx or tiles2.pcx, and should be in the order west, north,
        east, south (see tiles.pcx for an example of this).  You do not
        need to have a seperate graphic for each direction of movement,
        however.
U/Blocks Travel
        For furniture/fields/etc, this defines wether or not the player
        is able to move into the same square as this item.  If it blocks
        travel, he is not.
Uses Item
        In the case of usable items or weapons, you can define an item
        requirement before this item may be used.  For example, a bow
        has the item requirement of 1 arrow.  You will be prompted for
        wether or not this item should be destroyed in the process.  In
        the case of a bow, the arrow is destroyed by being fired from the
        bow, hence you would want to answer yes in this case.  Another
        example of where you would want to use this is with a healing potion.
        The healing potion requires itself to be used, and destroys itself
        in the process of being drunk.
Maximum#
        You can specify a maximum number of these that the party may carry
        at a given time.  Useful for quest type items that the party should
        only own one of at any given time.  Also useful to limit the amount
        of ammunition carried for a particularly powerful weapon.
]/Next Item
[/Previous Item
        Select these to move forward one item, or back one item.
X/Change Picture
        Select this to change this item's graphic
Animated
        All items have the option of being animated.  There are five options
        available in this field: None, 2 frames, 4 frames, 4 frames/pulsate,
        4 frames/pulsate/fast.
        None means the item is not animated.
        2 frames means the item has two frames of animation which cycle back
        and forth from each other.
        4 frames will display a 4 frame animation from the tile's starting
        point, which repeats itself.  (Frame 1-2-3-4-1-2-3-4)
        4 frames/pulsate displays a 4 frames animation which bounces back
        and forth between the first and last frame.  To clarify, the
        frame order would be 1-2-3-4-3-2-1-2-3-4-3-2-1.
        4 frames/pulsate/fast is the same as the above but animates faster.
Z/Rename
        Select this to rename the item
Sound
        Items may be assigned a sound.  For weapons and armor this has no
        effect.  For furnitue type items, you may assign an ambient sound
        which will be played when the player is within the ambient radius.
        As the player approaches the object, the sound will be played at
        an increased volume.  As he moves away, the volume decreases.  Usable
        items may be assigned a sound that plays when they are used.
        Sounds are stored in in the sounds\ subdirectory and should be
        named sound1.wav, sound2.wav, in sequence.  Sounds are specified by
        number within the program.  After picking a sound, it is played
        back to you in the item editor.
Quit
        Returns you to the edit menu

5h SPELLS

Spells are bought from NPCs and cast by the spellcasters in the player's
party.

5h.01 SPELL EDITOR

Spell
        Lists the number of the spell you are editing and it's name.  Select
        this to jump to a specific spell #.
Type
        There are several kinds of effects that spells can generate.  They
        are: Heal, Cure, Unlock Magic, Damage, View, Create Item, Grants
        Light, Destroys Item.
        Heal spells increase the hitpoints of one party member or the
        entire party.
        Cure spells cure poison from one party member or the entire party.
        Unlock Magic will open a magical door or chest.
        Damage spells deal damage to one or more monsters.
        View spells display the current area from far above.  May not be
        used in rooms.
        Create Item spells generate an item and place it directly into the
        group inventory.
        Grants Light spells bestow a light radius onto the caster.
        Destroys Item spells will destroy a specific item type.  Must be cast
        in a square directly adjacent to that item.  An example of this spell
        would be a negate field spell, which destroys an item called "Poison
        Field".
Amount
        In the case of healing or damage type spells, the minimum and maximum
        amount of healding or damage that this spell will cause.  This is
        modified by the caster's intelligence (may be slightly higher).
Radius
        In a grants light spell, defines the light radius produced by the
        spell.
Range
        In the case of heal or cure spells, may be one of three things:
        One PC, All PCs, or caster only.
        One PCs will affect any PC in the party (player's choice).
        All PCs will affect the entire party.
        Caster only will benefit the cast himself only (can't be targetted).

        In the case of damage spells, is either: one enemy, all enemys,
        or damage/radius.
        One enemy will affect one enemy targetted by the caster.  A range
        is also specified (number of squares away the target can be).
        All enemys will affect every enemy in the current combat.
        Damage/Radius spells affect all enemys within a specified radius.
        An enemy in the square will be damage, and so will all enemys with
        x squares of the original enemy.  Radius spells need not be targetted
        directly at a creature.  They can be targetted at an empty square
        and any creatures within the damage radius will still suffer damage.
        A range is also specified (how many squares away the primary target
        can be).
Class
        Is either mage1 or mage2.  The names of the mage1 and mage2 classes
        of magic is determined in the globals menu.  Note that it is possible
        to create classes that can cast either kind of magic, both kinds of
        magic, or no magic at all.
Sound
        Select this to assign a sound to this spell.  This sound will play
        when the spell is cast.  Sounds are stored in the sounds\ directory.
        They should be named sound1.wav, sound2.wav, in sequence.  Specify
        the sound you would like to use by it's number.  The sound will
        then be played within the editor for confirmation.
Cost (MP)
        The amount of magic points consumed by this spell
Cost (Item1-Item3)
        In addition to requiring magic points, spells can require up to three
        items in order to be cast.  These items will be consumed by the
        casting of the spell.
Special
        Does not yet do anything.
Spell Level
        What experience level is required in order to learn this spell.
        NPCs will refuse to teach spells to underqualified spellcasters.
]/Next Spell
[/Previous Spell
        Select these to move forward one spell, or back one spell.
Quit to Main
        Return to the Edit Menu

5i CLASSES

You can design up to 16 different character classes.  Note that the item
editor allows you to limit the use of any weapon or armor to any combination
of classes that you like.  Character classes are professions chosen by
PCs or NPCs which determine their skills in certain areas.

5i.01 CLASS EDITOR

Str (Base)
Dex (Base)
Int (Base)
        Represents the lowest scores that a PC/NPC should have in each of
        the three stats in order to be a member of this class.  Is not used
        by the game at the present time.
XP/Level2
        How many experience points are required for this class to reach
        level 2.  This determines experience required for each level after
        that, as well.  If this class requires 200 xp for level 2, he will
        requires 400 for level 3, 800 for level 4, 1600 for level 5, etc.
        Note that level 8 is the maximum level in the current version of
        Dragon Engine.
HP/Level1
        How many hitpoints this class has at it's first level.  Hit points
        determiend how much damage this character can withstand before dying.
        Each level earned will increase the amount of hitpoints by this same
        amount (30 at level 1, 60 at level 2, 90 at level 3, etc).
Bonus
        Classes can be given a bonus.  Options are: None, Hand Combat,
        +1 STR/Trainers, +1/DEX/Trainers, +1/INT/Trainers, 2x Heal Spells,
        2x Damage Spells.
        If none then the class gets no special bonus.
        Hand Combat allows this class to deal an large amount of damage in
        unarmed combat.  The amount of damage dealt will go up as level
        increases, eventually reaching the equivalent of a weapon with a power
        of approximately 20 (at level 8).
        +1/STR ... INT/Trainers allows you to give this class an automatic
        bonus when they visit and trainer and increase in level.  Trainers
        increase ability in addition to promoting a PC to the next level.
        This bonus will be added onto whatever bonus is granted by the
        trainers at each training session.
        2x Heal Spells gives the class double effectiveness with healing
        spells (the amount values for these spells will be doubled).  A very
        powerful ability.
        2x Damage Spells gives the class double effectiveness with damage
        spells (the amount of damage dealt by these spells is doubled). A
        very powerful ability, use with caution.
Limit
        None means that the class has no special limit.
        Must Train/Same Class requires that this class may only be trained
        by members of the same class.
Spells
        Here you may specify wether this class may learn no magic, mage 1
        type magic, mage 2 type magic, or both kinds of magic.
Spell Level Max
        Here you can put a limit to the maximum level of spells that this
        class is able to learn.  For example, if a class is able to cast both
        kinds of magic, but has a spell level max of 6, this class has a wide
        variety of spells but cannot cast any 7th or 8th level spells.
MP
        This is the base amount of magical points that this class will
        recieve.  If the class cannot cast spells, this will always be NA.
        Other options are INT, 1/2 INT, and 2x INT.  Magic points are derived
        from intelligence.  If this is set to INT, this class's magic points
        will be equal to it's intelligence.  If 1/2, it is only half of the
        intelligence value, and if 2x, it is twice the intelligence value.
        Magic points are required to cast spells.
]/Next Class
[/Previous Class
        Select this to go forward or back one class
Rename
        Select this to rename the current class
Quit to Main
        Returns you to the edit menu

5j CREATURES

You can create up to 200 different kinds of creatures to populate your
world.

5j.01 EDITING CREATURE MENU (EDIT CREATURES)

Name
        Select this to change the creature's name.
Change Picture
        Select this to pick a new picture for the monster.
HP
        The number of hitpoints that the creature has.
MP
        The number of magic points that the creature has (not yet used).
DEF
        Creatures defence value.  Damage dealt to this creature is subtracted
        first by the DEF before it is dealt.  The higher this value, the less
        damage will be dealt to it by attacks.
Abilities/Limitations
        Takes you to a subscreen with several toggles.  Each of these values
        affects the strengths and weakness of this creature.
        Flight: If the creature has flight, it will be able to move over any
        open area and any barriers (water, low mountains, etc).
        Poison: The creature either is not poisonous, poisons randomly, or
        always poisons when it successfully hits a party member.  Poison will
        cause hitpoints to drop steadily until a cure spell or potion is used,
        or a healer reached.  Random poisoning has a fairly low success rate.
        Divides/Hit: Dividing creatures will split into two creatures when
        struck by a weapon.  This can be set to not divide, divide at random,
        or always divide when hit.
        Intelligence: A general intelligence rating for the creature.  Does
        not currently affect the game.
        Movement: Is either normal (moves 1 square per turn), 2x normal
        (moves two squares a turn), or can't move (cannot move at all).
        Phys/Dmg: Lets you specify how much damage is dealt to this creature
        by physical attacks (weapons).  Normals means just that (full damage
        dealt), 2x normally gives the monsters an achilless heel againts
        weapons, and if no effect is selected, the monster will not be
        damaged by weapons at all.
        Magc/Dmg: Works exactly like Phys/Dmg above, but pretains to the
        amount of damage the creature recieves from magical spells.
        Barrier Roamer: A barrier roamer can only walk onto squares which are
        barriers of some kind.  An example of this would be a sea serpent.
        He can only move around on level 1 barriers (water tiles).  This is
        either No (not a barrier roamer), Yes/Own Type (the sea serpent
        example) or Yes/Any Type (the be used in special situations, this
        creature can walk onto any square which is a barrier of some kind,
        even if it is a higher or lower level than the barrier he is currently
        on).
Damage
        The amount of damage dealt by this creature's physical attacks.
        Has a minimum and maximum value (creature deals a random value
        between these two numbers, minus whatever defence value the target
        has).
Range
        The number of square away this create can attack a target
Chance to Hit
        A percentage chance, between 1 and 100, that the creature's attack
        will strike it's target.  If the target has a high dexterity, the
        creature suffers a penalty to this value.
O/Sound
        You may assign a sound for this creature.  This sound will be played
        whenever the creature attacks.  Sounds are stored in the sounds\
        directory.  They should be named sound1.wav, sound2.wav, in
        sequence.  Specify the sound you would like to use by it's number.
        The sound will then be played within the editor for confirmation.
View/Edit Spells
        Assign up to three spells that this creature is able to cast.
        Isn't used in the game yet.
I/View/Edit Items
        You may assign up to three items that this creature is carrying.
        If you pick a chest, you can choose the chest type.
XP Value
        The amount of experience points earned by a player when destroying
        this creature.  Player character only earn XP if they are the one
        who stuck the fatal blow.
Jump to Creature #
        Allows you to specify a creature # and jump directly to that creature.
]/Next Creature
[/Previous Creature
        Select this to move forward one creature or back one creature
Quit to Edit Menu
        Returns to the Edit Menu

5k ROOMS

Rooms are single screens containing tiles, items, and creatures.  They can
be linked togethor in several ways (by stairs, by connecting them directly
togethor, by linking to them from maps, etc).  Rooms are used primarily for
combat, maps are used for interactivity and detail.

If you create a series of rooms that is accessible from the map (for
instance, the dungons and towers in the example game) you have set up a good
place for the player to earn experience points and equipment.  While a
player is exploring a series of rooms, the monsters do not reappear when he
leaves a room and goes back into it.  However, if he leaves the series of
rooms and returns later, all of the monsters will have reappeared, and he
can fight them again.

This is also good for setting up a challenging set of rooms that must be
crossed before some sort of goal can be achieved.  If the player gives up
half way through and leaves, when he returns all of the monsters will have
respawned.

Note that visual blocking (line of sight) does not work in rooms.  Lighting
effects do, however.

All rooms are layed out in a grid of 10x by 50y rooms.  That's a total of
500 possible rooms.  At present this is not configurable.

Also, when walking out of boundaries within a room, the party is taken
either to another room or to a map.  This is specified in the room properties
(more on that in section 5k.02).  Note that this does NOT apply, if the
party was whisked into this room through a roaming monster combat event.
In this case, walking out of bounds will return the party to the location
at which they encountered the roaming monster.

5k.01 THE ROOM EDITOR

Notice that in the upper right-hand area of the screen, you will always see
the currently selected object, as well as three values: I (the number of
items), E (the number of events, not currently used), and M (the number of
creatures).

You are limited to 30 items and 20 monsters (creatures) in a single room.

5k.01.a THE MOUSE

Note that the mouse functions almost exactly as it does in the map editor
within the room editor.  See section 5c.01 THE MOUSE for information on
the function of the left and right mouse buttons and the various mouse
cursors.  Also note that tile groupings work the same way, also described
in this same section (5c.01).

Also note that there is a row of icons at the bottom of the map display.
These function slightly differently than the ones in the map editor.
From left to right, here are their functions:
Tree: Edit the ground layer *
Glowing E: Edit the events layer (no events in room yet, not used) *
Glowing Gem: Edit the Items layer *
Goblin: Add creatures/edit the creature layer *
L: Reload this room
S: Save this room
R: Go to another room
T: Jump to the tile editor (section 5n)
P: Room properties (section 5k.02)
Q: Return to the edit menu
* layers are explained under section 6a

5k.01.b THE KEYBOARD

Use the arrow keys to move.

[SPACE] adds the selected object to the current square.
[C]hange layer (edit a different layer) *
[L] Reload Room
[P]roperties Menu (section 5k.02)
[Q]uit to the Edit Menu
[R] switch to a different room
[S]ave Room
[T] jumps to the tile editor (section 5n)

5k.01.c A WORD ON EDITING ROOMS

Rooms are very straightforwad and uncomplicated.  Add items, and creatures,
do the ground layer in the usual fashion.  The only important thing to
learn about them that is different than maps is the properties screen and
how it links rooms to rooms, and rooms to maps (see next section).

5k.02 ROOM PROPERTIES

North
South
East
West
        Select these to specify where the party will end up if they walk out
        of bounds in any of these directions.  This will always lead them
        to the room in that direction, or to map.
        If you do not want the party walking out of bounds and into an
        inappropriate room (something used for a different purpose), be
        sure to wall up your room and make passage in that direction
        impossible.
Stairup
Stairdown
        When moving onto a stairup or stairdown type tile, and pressing
        [K]limb, the party will exit to whatever location you specify here.
        This can be a room, or a map.
Battle Music
        The song played while the party is fighting creatures in this room.
        Entered as a number.  Music in Dragon Engine reside in the music\
        subdirectory, and are named music1.mid, music2.mid, etc.
Room Music
        The song played when there are no monsters to fight in this room.
        As soon as battle has ended, this music will play.  Or, if there
        were never any monsters to begin with.
Done
        Return to the room editor

5l TILE GROUPINGS

Tile groupings are used to make editing the ground layer of maps easier.
With a total possible 1024 tiles, select tiles through the tile editor
became tedious.  This editor allows you to create custom palettes of tiles.
You may create up to 30 groupings of tiles.

51.01 TILE GROUPINGS EDITOR

Click the mouse on any slot in the tile grouping, and you will be prompted
to pick which tile you would like to occupy that slot.

Pressing N allows you to rename the tile groupig.

Press ]/[ to move forward and back through the different groupings.

Press Escape to return to the edit menu

5m TITLE SCREEN ANIMATIONS

Title screen animations add flavor to your game.  They serve as an "attract
mode", ideally they should get the viewer excited about the prospect of
playing your game.  They can also be used to tell parts of the game story
that might otherwise be difficult.

You can create up to 5 title screen animations.  The fisrt one is always
loaded when playgame.exe is run.  Everytime you return to the title screen
after that, a random one will be loaded.  Note that if you want to increase
the number of title screen animations, you must go into the globals menu
and increase the number listed there.

Each title screen animation has a maximum of 200 frames.

5m.01 TITLE SCREEN ANIMATION EDITOR

In the center of the screen is the current frame of the animation.

Click on the tile surrounded by a box on the right hand side to select a new
tile.  You can choose from any of the three graphical sets, tiles, monsters,
or NPCs/PCs.

Once you have selected a tile, draw using the mouse into the current frame.
Simple as that.  Keep in mind that this is a simple graphics cut and paste
job, visual blocking, etc, is not supported here, so if you want to simulate
it (as I did in the three animations in the example game), you will have to
fake it by drawing onto certain areas with a blank tile.

Press F to fill the entire frame with the selected tile.

Once you have a frame done, you can copy it to the other frames.

Press N to copy the current frame to the next frame in sequence.

Press C to copy the current frame to all remaining frames.

Press ]/[ to go forward and backward through the frames of animation.

Once the animation seems done,

Press S to set the current frame as the final frame.

Press Q when done to return to the editor menu.

5n. TILE EDITOR

5n.01 TILE SELECT SCREEN

This screen displays 128 of the 1024 possible tiles at a tile.

[S]elects a tile.  You can also click on a tile to select it.  If you are in
the room or map editor, and editing the ground layer, this will return you
to the editor.
[N]ext screen proceeds to the next screenful of tiles
[ESC] aborts
[A]ttributes takes you to the attributes screen.  This is where you define
the attributes for ground-layer tiles.  This affects how they behave and how
the player can interact with them (see next section).

5n.02 TILE ATTRIBUTES SCREEN

This particular screen does not recognize the mouse.

[N]ame
        Lets you name this tile.  Keep in mind this is what is displayed
        when the player [L]ooks at this tile.
Animated
        All tiles can be animated.  There are several options for animation:
        No: tile is not animated
        2 Frames: A 2 frame repeating animation (1-2-1-2-1-2-1-2).
        4 Frames: A 4 frame repeating animation (1-2-3-4-1-2-3-4).
        Scrolling: Used for the water in the example game.  The tile will
        scroll pixel by pixel and warp around itself.
        2 Frames/Fast: 2 frame repeating, only faster.
        4 Frames/Fast: 4 frame repeating, faster.
        4 Frames/Fastest: 4 frame repeating, fastest.
        4 Frames/Pulsate: 4 frame pulsating, order (1-2-3-4-3-2-1-2-3-4-3-2-1).
        4 Frames/Pulsate/Fast: As above but faster
Page/Up
Page/Down
        Changes the Animation used by this tile
[B]locked
        Toggles wether or not this tile blocks travel.  A tile that blocks
        travel cannot be passed by any means.
[S]low
        Toggles wether or not this tile causes "slow progress".  It takes
        more time and, eventually, more food to move over slow progress
        type tiles.
[O]paque
        Toggles wether or not this tile obstructs vision.  If toggles, the
        player cannot see objects on the other side of this object.
[T]ype
        Affects how this tile behaves.  Values are:
        None: This tile does not except for being a tile
        Door: When the payer moves over this type, plays the opening door
        sound, and says "Opened!"
        Door-Locked,Pick: A locked door that requires a lockpick to be opened
        Door-Locked,Magical: A locked door which can be opened with an
        "open" type spell.
        Door-Locked,Key: A locked door which requires a specific key type
        to be opened.  Key type is specified under [M]od.
        Door-Secret: A wall or similar object which turns into a door when
        the player [S]earches this tile.
        Stair Up: Act as a stairway leading up.  If the player moves onto
        this tile and presses [K]limb, he will be taken to same x/y location
        on the "StairUp" map specified under map properties.  
        Stair Down: As above, except the player will be taken to the
        "StairDown" map.
        Barrier: Barriers can only be crossed by a player who has found
        a transport.  The level of the barrier is specified under [M]od.
        A level 1 transport cannot cross level 2 barriers, but a level 2
        transport can cross level 1 barriers and level 2 barriers.
        Damage: Deals damage to the player's party if he moves onto this
        square.  The amount is entered under [M]od.  Also, you can specify
        that it be prevented if a quest has not been completed (also set
        under mod).
        Poison: Poisons the player's party if he moves onto this square.
        Cannot be prevented.

[M]od
        Affects eevents of certain types.  See [T]ype above.
[L]ight Radius
        Use this to assign a light radius to this tile.  The value you want
        to enter here is radius of the light (the number of square out from
        the tile that the light should extend.
[Z]ound (sound)
        Assign a sound to this tile.  How it works depends on sound radius,
        below.
[R]/Sound Radius
        If set to 0, this sound will be played when the player walks onto
        this square.  For instance, a squishing sound would be good for a
        swamp square.
        If set to a higher value, this sound will play as an ambient sound
        when the player approaches this tile.  As he approaches, the sound
        will get louder.  As he retreats, the sound gets quieter.
]/[: Next/Prev Tile
        Select this to go foward/back in the tile list
[ESC] (escape)
        Select this to return to the tile select screen

6. APPENDICES

Here are various relevant pieces of information that don't have anything to
do with 

6a. LAYERS

Maps are composed of layers.  Each layer contains a different kind of object.

When dealing with maps ...

The bottom layer is called the Ground layer.  This layer contains background
objects which can sometimes be interacted with but cannot be picked up.
Ground layer objects are called tiles.  They comprise the background over
which everything else is placed.

The second layer is the events layer.  Event cannot be seen by the player.
They are used to assign special properties to ordinary looking squares.  You
can have up to 50 events per map.  Events are used to create portals to other
maps and as monster generators, among other things.

The third layer is the items layer.  Items are objects which can be picked
up, pushed, or other interacted with in ways that tiles cannot.

The fourth layer is the NPC layer.  NPCs are non-player characters, the
intelligent inhabitants of your game world.  Townspeople, guards, 
shopkeepers, potential party members.  You may have up to 50 NPCs per map.

The fifth layer is the roof layer.  Only used in a few circumstances, this
is a layer of tiles which is displayed above the previous four layers, and
above the party icon.  For example, a roof tile could be a open portcullis.
When the party walks into this square, they will walk under the portcullis,
giving an illusion of three dimensions.  Roof objects are not animated.

The sixth layer is the roaming monster layer.  Roaming monsters are
probably better thought of as roaming encounters, they are events which
will attempt to track down the party.  If they reach the party, they will
be whisked to a specified combat event.  If they win the combat (or escape),
they will be returned to the map, and the roaming monster will vanish.

The NPC Walkmap is an important layer if you want your NPCs to be in
different locations at different times of the day.  NPCs aren't very smart
when it comes to moving from one location to another, they need a path
to follow.  Using the walkmap layer, you should connect all NPC locations to
another by drawing paths between them.

When dealing with rooms ...

There are only four layers.  Ground layer, portals/events layer, items, and
monster layer.  These behave exactly as the map counterparts behave, except
that the monsters within rooms are actual creatures, and not combat events.

6b. QUESTS

Simply put, quests are a set of 100 flags which are all set to FALSE when
the game begins.  A FALSE quest represents an uncompleted task.
Throughout the game, various events or NPC interactions can "complete"
quests, that is, set their value to TRUE.  In addition, you can have
certain other events or NPC interactions which will not occur unless
a specified quest # has been completed.
Unfortunatly I havn't figured out an easy way to keep track of what each
of these quests represents within the program, so I would advice you to
keep a piece of paper (or perhaps a textfile) and keep track of what you
are using each of these 100 variables for.

6c. INTRO1.TXT, ENDING1.TXT, etc

These files should be in the following format.  Create a text file in
notepad (windows) or EDIT.EXE (dos).  Now begin typing the text.  Do not
go past the 40th column (no more than 40 characters on each line).  At
the end of each line, hit enter.  At the end of the file, type "END" in
capital letters.  Save the file as either intro1.txt, intro2.txt,
ending1.txt, ending2.txt, depending on where you are wanting this to appear
(refer back to introduction or endgame furthur up in this document).


6d. HOW DO I?  QUESTIONS

6d.01 HOW DO I CHANGE THE GRAPHICS IN MY GAME?

You will need to edit the files tiles.pcx, tiles2.pcx, chars.pcx, and
monsters.pcx in a paint program.  Each of these files has a different
purpose:

tiles.pcx & tiles2.pcx
        These contain the 1024 tiles which are used for items and ground
        layer tiles.
chars.pcx
        Contains the graphics used for NPCs and player characters
monsters.pcx
        Contains the creature graphics

If you don't have a paint program, try Neopaint!  It's available for DOS and
windows, and is very well suited to this kind of graphics editing.  Whats
more, it's shareware.

Neopaint can be found at http://www.neosoftware.com

You can also change the animated border which is displayed during playgame.
This is contained in the files back1.pcx, back2.pcx, back3.pcx, and back4.pcx.

6d.02 WHERE CAN I FIND THE LATEST VERSIONS?

At the Dragon Engine Homepage: http://www4.50megs.com/litmus/de.html

6d.03 CAN I WORK ON MY GAME NOW, OR SHOULD I WAIT UNTIL THE FINAL VERSION IS
RELEASED?

At this point, the format that the game is saved in is final.  Anything that
you create using this version of Dragon Engine will work with all future
version of Dragon Engine.  So by all means, please make something.

6d.04 I'VE FOUND A BUG

Great!  Email it to debugreport@mailcity.com

6d.04 I'VE GOT OTHER QUESTIONS ... or WHERE CAN I REACH YOU?

Email me at litmusdragon@mailcity.com
My ICQ # is 32709223

7. TROUBLESHOOTING

7a. THE PROGRAM CRASHES ON MY SYSTEM

Please email your system specs to debugreport@mailcity.com with as much
description as possible, particularly if the program is crashing at a
certain time, or if it is crashing as soon as it is launched, if an error
message is reported, etc.

7b. EVERYTHING IS MOVING TOO FAST/TOO SLOW

This is probably related to a value in dengine.cfg called delay.  This
affects how long pauses in the game will be.  This affects everything from
animation to the interface.  For my celeron 433 system, I have the delay set
at 150 and this works well.  For a lower end system, this should be a smaller
value.  Find a text editor (for windows this would be notepad, for DOS it
would be EDIT) and open Dengine.CFG in that text editor.  Look for the
following line:

delay =150

Now, change this value.  If animation is too fast and the controls are jerky,
increase this value.  If animation is slow and controls sluggish, decrease it.
100 is a ballpark figure for a pentium 200, 200 is an educated guess for a
800 mhz athalon.

7c. THE CONTROLS ARE TOO TOUCHY/SLUGGISH

This is probably related to the delay setting (see above, 7b).

7d. THE MIDI MUSIC SOUNDS TERRIBLE/ISN'T USING MY WAVETABLE

If this is the case and you have a wavetable soundcard, the program is not
detecting your soundcard properly.  The same thing happened to me
originally.  Here is what fixed it.  Open dengine.cfg in a text editor (this
would be notepad.exe in windows, EDIT in MS-DOS).  Look for this line:

midi_card =

Now, change this line to ...

midi_card = MPU

... and save the file.

Most wavetable cards support this protocol.  This is definatly worth a try.

7e. SOMETIMES WHEN A MIDI FINISHES PLAYING AND THEN STARTS OVER (IN THE GAME),
THE MIDI PLAYBACK GETS SCREWED UP.

I've seen this bug.  There is a quick fix.  Press Q as if you were going
to save the game.  Then answer No to both questions.  The midi will start
over, and playback correctly.  I'd love to fix this but it's a problem with
the library that I am using for midi playback and all of my graphics routines,
so it is unlikely to be fixed soon (would require a major code overhaul).

This only seems to happen with certain midis, oddly enough.  If any midi
experts in the audience can tell me what is different about these midis, is
it a certain format that causes this, please get back to me with this
information.

----

END

/_itmus /)ragon
(c)2000 Litmus Paper Productions
ICQ#32709223
litmusdragon@mailcity.com

