⚔ THE CLANS
⚙ THE CLANS — DEVELOPMENT KIT v0.12
v0.97b2 · by Allen Ussher and contributors

📝 Author's Note

This is still the same v0.12 Dev Kit that was released long ago. A couple of updates have been made, mainly to the webpage and email address. For more information on what the utilities included in the devkit do, see the appropriate tool documentation sections on this page.

The Dev Kit lets you create quests, NPCs, and monsters for The Clans. Work on a fresh install — you'll be resetting and running maintenance constantly during development.

[0.1]

What Can You Develop?

At the moment, you are limited to developing quests, NPCs, and monsters for The Clans. In the future, items, mine events, classes, races, and possibly game strings may be available — but a system must first exist to prevent cheat packs. It would be far too easy to hand out the item creator and have BBSes build up super items.

Quests are what players go on via the G option in the mines. They're event files (scripts) plus optional NPCs and monster files. Modify your QUESTS.INI and sometimes CLANS.INI and you're set.

NPCs are characters encountered on the street or in other locales. They're made up of stats (for joining clans) and quotes (for conversation).

[0.2]

How Does The System Work?

The Clans uses two INI files for add-on modules:

CLANS.INI — the general INI. Lets the sysop add NPCs, races, classes, items, and spells (only NPCs can be developed by 3rd parties). Also allows changing the language file.

QUESTS.INI — tells the game which quests are available and where to find them.

When distributing an add-on, you must provide installation instructions. Currently, lines must be added to the INI files manually. (An add-on installer may be created in a future version.)

IMPORTANT: Always develop on a fresh copy of the game. You'll be resetting, running forced maintenance (CLANS /M), and logging in and out constantly. A slap upside the head is in order if you don't!
[1.1]

What Are Event Files?

Event files are simple scripts used to construct "events" encountered through quests and mine events (e.g. meeting the spirit knights). They are small programs run by the game using its own compiled language.

Workflow: write a text script → compile it with ECOMP.EXE → test it in The Clans.

[1.2]

Making Event Files

Example 1 — Getting Started

The simplest event file you'll ever see. Lines beginning with # are comments. Event starts a named block; End stops execution. Text outputs a string to the player's screen.

EVENT1.EVT# Example Event File No.1

Event SimpleEvent
  Text "Hello World!
End

Compile it:

ECOMP EVENT1.EVT EVENT1.E

Register it as a quest in QUESTS.INI:

Name            Event1 Test
File            EVENT1.E
Index           SimpleEvent
Known

Go into the game and run the quest. After running it, you won't be able to run it again until you force maintenance with CLANS /M.

Example 2 — Blocks & Jumps

A file can contain multiple blocks. Event blocks can be started directly as quests. Result blocks are jump targets — they're not started on their own. Use Jump to move between blocks. Multiple quests can share one file — just use different Index values.

EVENT2.EVTEvent FirstEvent
  Text "This is the 1st event
  Jump FirstEvent.Result
End

Result FirstEvent.Result
  Text "This is a result of the first event!
End

Event SecondEvent
  Text "This is the 2nd event!
End
TIP: Always use End at the end of each block. Without it, execution "falls through" into the next block — which you usually don't want.

The Known keyword in QUESTS.INI makes a quest available without the player needing to be "told" about it by an NPC first.

Example 3 — Getting Options

Prompt is like Text but without a newline at the end. Option captures a single keypress and jumps to a named block. Input captures a full-line response.

EVENT3.EVTEvent Block1
  Text "This is example #3!
  Text
  Prompt "Press A,B,C, or D >
  Option A PressA
  Option B ILikeB
  Option C C
  Option D NextLine

  Text "You pressed D!
  Jump Block2
End

Result PressA
  Text "You pressed A!
  Jump Block2
End

Result Block2
  Text "Now let's chat:
  Input TFC1  1. This is Option 1
  Input TFC2  2. This is Option 2
  Input TFC3  3. This is Option 3
End

Option D NextLine — using NextLine as the target causes execution to continue at the line immediately after all the Option keywords.

Example 4 — Fighting

Use AddEnemy to load monsters into the fight buffer, then Fight to trigger combat. DoneQuest marks the quest permanently completed for that player.

EVENT4.EVTEvent FightExample
  Text "You will now experience a battle!
  Pause

  AddEnemy /m/Output 1
  AddEnemy /m/Output 1
  AddEnemy /m/Output 1
  AddEnemy /m/Output 1
  Fight YouWin YouLose NextLine

  Text "aw, you ran away!
End

Result YouWin
  Text "Good job, you won!
  DoneQuest
End

Result YouLose
  Text "You suck!  How could you lose!?
End

Special Fight labels: NextLine continues after the Fight line, STOP halts execution, NoRun prevents the player from fleeing.

# Most common usage pattern:
Fight NextLine STOP NoRun

Example 5 — Flags & ACS

Flags are boolean variables (TRUE/FALSE) used to track state across an event. They are tested using {} syntax before any command.

Flag TypeDescription
G0–G63Global flags — shared by all users, never cleared
H0–H63Daily global flags — cleared once a day during maintenance
D0–D63Daily player flags — per-user, cleared each maintenance
P0–P63Player flags — per-user, never cleared
T0–T63Temporary flags — cleared each time an event or quote file runs
EVENT5.EVTEvent FlagExample
  SetFlag T1

  # executed only if T1 is set
  {T1}Text "T1 was set!

  # this line will NEVER execute
  {!T1}Text "T1 was NOT set!

  SetFlag T3
  Jump NextPart
End

Result NextPart
  {T3}Text "T3 is set!
  ClearFlag T1
  {!T1}Text "T1 has been cleared.
  {!T1 & T3}Text "T3 was set but T1 was not.

  # these three sometimes appear and sometimes don't
  {R50}Text "Random display 1

  # ^ = always TRUE, % = always FALSE
  {^}Text "This should ALWAYS be seen
  {%}Text "This should NEVER be seen
End

ACS expressions support & (AND), | (OR), ! (NOT), and grouping with ( ):

# true if G12 AND T2 are set, OR if H9 is set AND D1 is NOT set:
{ (G12 & T2) | (H9 & !D1) }

Additional ACS conditions:

ACSMeaning
$xxxTrue if player has xxx gold or more in pocket
QaaTrue if player has completed quest #aa
^Always true
%Always false
RyyTrue if roll of 1–100 is ≥ yy (e.g. R50 = 50% chance)
LyyTrue if player is exactly at mine level yy
KyyTrue if player is at mine level yy or higher
[1.3]

Event File Command Reference

CommandDescription
Event <name>Start an event block. Can be referenced as a quest Index.
Result <name>Start a result block. Used as a jump target; not started directly as a quest.
EndStop execution of the current script. Always place at the end of each block.
Jump <label>Jump to another Event or Result block.
Text "<string>Display text to the player followed by a newline. Text alone outputs a blank line.
Prompt "<string>Display text without a trailing newline (for prompts).
PauseDisplay <pause> and wait for any keypress.
Option <key> <label>Accept a single keypress. Groups of Options are scanned together. Use NextLine as label to continue after the Option group, or STOP to halt.
Input <label> <text>Present a menu line and jump to label when selected.
AddEnemy <file> <index>Add monster #index from a monster file to the fight queue. Monsters are 0-indexed.
Fight <Win> <Lose> <Run>Trigger combat with queued enemies. Labels: block name, NextLine, STOP, or NoRun for Run.
Chat <NPCIndex>Initiate a chat with the NPC matching NPCIndex.
TellQuest <index>Inform the player about quest #index, making it accessible in their quest menu.
DoneQuestMark the quest as permanently completed for this player. They cannot replay it.
AddNews "<string>Add a string to the news file.
Display "<filename>Display an ANSI or ASCII file.
SetFlag @XSet flag @X (e.g. SetFlag T5, SetFlag G60).
ClearFlag @XClear flag @X (e.g. ClearFlag P13).
Heal [SP]Heal all living clan members. Heal restores HP; Heal SP restores skill points.
TakeGold <amount>Remove gold from player's pocket. Does NOT check for negatives — use {$xxx} first.
GiveGold <amount>Give the player gold. Recommended range: 300–1000.
GiveXP <amount>Give XP to all living clan members. Recommended range: 1–10.
GiveItem <name>Give an item to the clan. See Item Index for valid names.
GiveFight XGive X additional monster fights to the clan.
GiveFollowers XGive X additional followers to the clan.
GivePoints XGive X points to the clan. Do not give more than 75 at a time.
FILE CONVENTIONS: Compiled event files typically use a .E extension. Inside PAKfiles, they're stored under a /e/ path. Quote files use .Q or /q/ in PAKfiles.

Multi-line Comments

Use >> delimiters for block comments spanning multiple lines:

>>
 Everything in here is a comment.
 Can span many lines.
>>
[2.1]

Monsters

Monsters are the creatures players fight in combat. They're created from a text file and compiled using MCOMP.EXE.

[2.2]

Making Monsters

Create a text file (e.g. MONSTERS.TXT or MYMON.TXT) and compile it:

MCOMP MONSTERS.TXT OUTPUT.MON
MCOMP MYMON.TXT MYMON.MON

See the included MONSTERS.TXT for a full example. The output file extension is just a convention — it can be any valid filename.

[2.3]

Monster Field Reference

FieldDescription
NameMonster name, max 19 characters
HPHit points
SPSkill points
DifficultyMonster level (1 = lowest)
AgilityAgility stat
DexterityDexterity stat
StrengthStrength stat
WisdomWisdom stat
ArmorStrArmor strength
SpellSpell known by monster (numeric index). Multiple Spell lines are allowed. See Spell Index for values.
[3.1]

NPCs

NPCs are characters encountered by pressing / in game menus, in random mine encounters, and in quests. Players can chat with them and sometimes recruit them to join their clan.

[3.2]

Making NPCs

Create a text file similar to NPCS.TXT and compile it using MakeNPC:

MakeNPC infile.txt outfile.npc

Add the NPC file to the game in CLANS.INI:

NpcFile MYNPCS.NPC

If using a PAKfile:

NpcFile @MYPAK.PAK/npc/Mine
NAMING: Do NOT name your file CLANS.NPC — that's already used. Choose a unique name.
[3.3]

Example NPC — The Knight

Every NPC block starts with the Index line — a unique tagword used to reference the NPC in event files (via Chat <index>). It MUST come first and MUST be globally unique.

NAMING CONVENTION: Use a prefix to prevent index conflicts with other add-ons. Allen Ussher uses underscores (_Knight1). Another option is your initials (AUKnight). Without a convention, two add-ons with the same index name will conflict.

After Index, the order of remaining fields doesn't matter. Key fields:

  • QuoteFile: the compiled quote file for this NPC's dialogue
  • NPCDAT: which monster index in the MonFile holds the NPC's stats (0 = first)
  • MonFile: the .MON file containing the NPC's stats
  • Loyalty: 0–10. Higher = less likely to reveal clan info. 10 = never, 0 = always
  • Topic: an unknown topic revealed via TellTopic in a quote file
  • KnownTopic: a topic the player can chat about from the start
  • IntroTopic: the first topic shown when the player starts chatting
[3.4]

Quote Files

Quote files (QFs) are compiled exactly like event files using ECOMP.EXE, but use the keyword Topic instead of Event or Result. Each topic corresponds to a topic listed in the NPC's data file.

Three extra commands are available in QFs:

CommandDescription
TellTopic <name>Reveal a previously unknown topic to the player so they can select it in future chats.
EndChatEnd the conversation and return the player to the chatting menu.
JoinClanThe NPC joins the player's clan using NPCDAT/MonFile stats. Declines if already in a clan.
[3.5]

Using Monster Files for NPC Stats

Create a file similar to NPC-MON.TXT and compile it with MCOMP.EXE as you would a normal monster file. Reference it using the MonFile keyword and the specific monster within it using NPCDAT.

MCOMP NPC-MON.TXT NPC.MON
[3.6]

NPC Field Reference

NOTE: Index MUST always come first. All other fields can appear in any order.
FieldDescription
IndexUnique tagword, one word, max 19 chars. Used with the Chat command. MUST be unique across all add-ons.
NameDisplay name, max 19 chars
QuoteFileCompiled quote filename, max 12 chars (e.g. NPCQUOTE.Q)
MonFileThe .MON file holding this NPC's stats. Do NOT use NPC.MON — that's taken. Use your own (e.g. JOE.MON).
NPCDatIndex of the monster in MonFile to use for stats. 0 = first monster.
Loyalty0–10. How loyal the NPC is to their current clan when asked about it. 10 = never discloses.
OddsOfSeeing0–100. Chance (%) the NPC appears in their wander location each day.
WanderWhere the NPC can be found. Valid values: Street, Church, Market, Town Hall, Training Hall, Mine
IntroTopicName of the Topic shown first when a player starts chatting.
Topic [name] [display]Add an unknown topic. Must be revealed via TellTopic.
KnownTopic [name] [display]Add a topic already known to the player.
MaxTopics NOptional. Maximum number of topics a user can chat about.
HereNews [string]Optional. Adds a news entry when this NPC appears in the village that day.
[4.1]

Installing Add-On NPCs

Tell the sysop to add one line to CLANS.INI:

NpcFile MYNPCS.NPC

# Or if using a PAKfile:
NpcFile @MYPAK.PAK/npc/Mine
[4.2]

Installing Add-On Quests

Ask the sysop to add entries like these to QUESTS.INI:

Name            Bathtub o' Blood
File            BLOOD.E
Index           Blood
Known

# Or with a PAKfile:
Name            Bathtub o' Blood
File            @BOB.PAK/e/Bob
Index           Blood
Known

To avoid the "Help not found!" message, also provide a quest description block for the sysop to append to QUESTS.HLP. Format:

^Bathtub o' Blood
|12Bathtub o' Blood
|06----------------
|04Go on a rampage killing everything in sight.

|12Difficulty: Hard and BLOODY!
^END

The first line (with ^) must exactly match the Name in QUESTS.INI. All text between that line and ^END is displayed to the player.

Tool Overview

The devkit includes several command-line tools for compiling data files. Here's a quick reference — see the section on genall.bat below for how they all fit together.

ECOMP.EXE
ecomp source.txt dest.e
Compiles event files (.evt or .txt) and quote files into binary .e or .q files used by the game. Required for all scripts.
MCOMP.EXE
mcomp monsters.txt output.mon
Compiles monster data text files into binary .mon files. Used for both combat monsters and NPC stat files.
MakeNPC
makenpc npcs.txt clans.npc
Compiles NPC data files into binary .npc files. Added to the game via CLANS.INI.
MCLASS.EXE
mclass races.txt races.cls
Generates player class and race data files from races.txt and classes.txt.
MITEMS.EXE
mitems items.txt items.dat
Generates item data files from items.txt.
LANGCOMP.EXE
langcomp strings
Compiles strings.txt into strings.xl — the language file used by the engine. 64,000 byte limit on output. The Clans uses strings.xl from CLANS.PAK.
MAKEPAK.EXE
makepak clans.pak pak.lst
Bundles multiple files into a single PAK archive. The game reads files from PAK archives transparently. See section 5.1 for full details.
CHEW.EXE
chew archive.gum files.lst
Creates .gum compressed archives for use with the INSTALL.EXE distribution system. See section 5.2 for details.

genall.bat — Building Everything

The included genall.bat shows how all tools are used together to regenerate all the game's data files from source. Useful as a starting template for your own build script.

GENALL.BATlangcomp strings.txt > TMP.FIL
mcomp eventmon.txt event.mon >> TMP.FIL
mcomp monsters.txt output.mon >> TMP.FIL
mspells spells.txt spells.dat >> TMP.FIL
mitems items.txt items.dat >> TMP.FIL
mclass classes.txt classes.cls >> TMP.FIL
mclass races.txt races.cls >> TMP.FIL
makenpc npcs.txt clans.npc >> TMP.FIL
ecomp pray.evt pray.e >> TMP.FIL
ecomp eva.txt eva.e >> TMP.FIL
ecomp quests.evt quests.e >> TMP.FIL
ecomp church.evt church.e >> TMP.FIL
ecomp secret.evt secret.e >> TMP.FIL
makepak clans.pak pak.lst >> TMP.FIL
[5.1]

MAKEPAK.EXE and PAKfiles

PAKfiles bundle multiple files into one archive to reduce clutter when distributing an add-on. The game reads from PAK archives transparently.

Creating a PAK File

  1. Step 1. Create a file listing (e.g. PAK.LST) with two columns: the real filename on the left, the PAKfile internal name on the right. PAKfile names MUST begin with / and cannot exceed 29 characters.
    PAK.LSTmenus.hlp       /hlp/menus
    combat.hlp      /hlp/combat
    items.dat       /dat/items
    spells.dat      /dat/spells
    strings.xl      /dat/Language
    dumbfile.txt    /dumbstuff/dumbfile.text
    important.doc   /This.Is.Important
  2. Step 2. Run MAKEPAK:
    MAKEPAK AI.PAK PAK.LST

Accessing PAK Files

Files inside PAKs are accessed using the @ prefix and PAK filename:

# Access /Event.E in ADDON.PAK:
@ADDON.PAK/Event.E

# Access /Event.E in CLANS.PAK (explicit):
@CLANS.PAK/Event.E

# Access /Event.E in CLANS.PAK (shorthand -- omitting @ uses CLANS.PAK by default):
/Event.E
CRITICAL: Always use the @YOURPAK.PAK/filename form when accessing files in your own PAK. If you omit the @YOURPAK.PAK prefix, the game searches CLANS.PAK instead and won't find your file.

Example — if you PAK an ANSI into DRAGON.PAK as /ans/Welcome:

# CORRECT:
Display "@DRAGON.PAK/ans/Welcome

# WRONG -- searches CLANS.PAK, not DRAGON.PAK:
Display "/ans/Welcome
[5.2]

CHEW.EXE and INSTALL.EXE

For distributing add-ons, you can use the included installation system. Since every Clans installation already has INSTALL.EXE, you don't need to include it in your archive.

Creating a .GUM Archive with CHEW

A .GUM file is a compressed archive (similar to ZIP or ARJ). Create a file list called FILES.LST (one filename per line), then run CHEW:

FILES.LSTMYQUEST.TXT
MYQUEST.PAK
SYSOP.DOC
CHEW MYQUEST.GUM

If no GUM filename is given, ARCHIVE.GUM is created by default. Compression uses the sixpack algorithm by Philip G. Gage.

TIP: Use chew [dest.gum] [file-list] to specify both the GUM filename and a custom file list. You must provide either both parameters or neither.

The INI File

INSTALL.EXE is driven by an INI file. See EXAMPLE.INI for a full template. Key sections:

EXAMPLE.INI (STRUCTURE)# First line beginning with ! specifies the GUM file to use:
!MYQUEST.GUM

# Sections begin with : and end when the next : section starts.
# :title is shown as a header, :goodbye on exit.
:title
  |17 My Quest Installer |16

:welcome
  |15Welcome to My Quest!

:install
  |07This will install My Quest files.

:install.files
# o = overwrite, s = skip if exists, q = query user
o MYQUEST.PAK
o MYQUEST.DOC
s readme.txt

:installdone
Done!  Please read MYQUEST.DOC.

:upgrade
  Upgrade message here.

:upgrade.files
o MYQUEST.PAK
s readme.txt

Run the installer using the INI filename (without extension):

INSTALL MYQUEST
RULES: No blank lines may appear in the :install.files or :upgrade.files sections. The |xx codes are pipe colour codes for ANSI colouring.
[6.1]

Frequently Asked Questions

Is it possible for NPCs to hold items?
Nope, not yet.
Can NPCs retain stats?
No.
What is the meaning of life?
Seek within.
[6.2]

Distributing Add-Ons

Once you've created an add-on, open a ticket on SourceForge first so it can be tested (though that's not strictly required any more). If you have a webpage with your add-ons, mention it and we'll link it from the project page.

Web: http://theclans.sourceforge.net

[6.3]

Spell Index

Use these numeric values with the Spell field in monster files.

1.Partial Heal
2.Heal
3.Slow
4.Strength
5.Ropes
6.Raise Undead
7.Banish Undead
8.Mystic Fireball
9.Dragon's Uppercut
10.Summon Dead Warrior
11.Heavy Blow
12.Death and Decay
13.Mystic Bond
14.Holy Heal
15.Lightning Bolt
16.Backstab
17.FireBreath
18.Bloodlust
19.Fear
20.Light Blow
21.Hurricane Kick
22.Divine Warrior
23.Blind Eye
24.FireBreath
25.Rain of Terror
26.Summon Khaos
27.Summon Dragon
28.Ice Blast
[6.4]

Item Index

Use these exact names with the GiveItem command in event files.

Shortsword
Broadsword
Axe
Mace
Dagger
Staff
Wand
Battle Axe
Morning Star
Scythe
Boomerang
Falcon's Sword
Bloody Club
Death Axe
Spirit Blade
Wizard's Staff
Cloth Robe
Leather Armor
Chainmail Armor
Platemail Armor
Wooden Armor
Cloth Tunic
Kai Tunic
Hero's Armor
Rags
Wooden Shield
Iron Shield
Platinum Shield
Crystal Shield
Hero's Shield
Silver Mace
Lion's Shield
Flame Scroll
Summon Scroll
Banish Scroll
Summon Khaos
Summon Dragon
Ice Blast
Book of Stamina
Book of Mana
Book of Healing
Book of Flames
Book of the Dead I
Book of the Dead II
Book of Destruction
[6.5]

Monster Index

Event Monsters — @CLANS.PAK/m/Eva

Use these with AddEnemy /m/Eva <index> for quest encounters.

0.Ghoul
1.Ghoul
2.Mad Scientist
3.Mad Gardener
4.Orc
5.Small Gnome
6.Wolf Master
7.Wolf
8.Thief
9.Thief
10.Thief
11.Spirit Knight
12.Spirit Knight
13–18.Orc / Orc Guard
19–20.Man
21–22.Hellhound
23.Beast
24.Gardener
25–26.Guard
27.Businessman
28–30.Thief / Large Thief
31.Wyvern
32.Hellhound
33.Green Slyme
34.Skeletal Fiend
35.Golden Dragon
36.Ghoul

Mine Monsters — @CLANS.PAK/m/Output

Use these with AddEnemy /m/Output <index> for standard mine fights (0–183).

0.Mangy Dog
1.Cave Dweller
2.Witch
3.Giant Rat
4.Ogre
5.Zombie
6.Evil Wizard
7.Troll
8.Ratman
9.Rockman
10.Beast
11.Grue
12.Demon
13.Bad Boy
14.Evil Priest
15.Thief
16.Drunken Fool
17.Beggar
18.Orc
19.Warrior
20.Dark Elf
21.Goblin
22.Orc
23.Werewolf
24.Spirit
25.Serpent
26.Bum
27.Freak
28.Assassin
29.Nosferatu
30.Hellcat
31.Ugly Hag
32.Wolf
33.Death Knight
34.Shadowspawn
35.Hound
36.Hobgoblin
37.Lunatic
38.Giant Spider
39.Ghoul
40.Tarantula
41.Manticore
42.Wight
43.Giant Ant
44.Wildman
45.Old Hag
46.Ninja
47.Wildman
48.Dark Elf
49.Wing-Eye
50.Shadow Knight
51.Giant Maggot
52.Wraith
53.Skeleton
54.Fire Imp
55.Rock Grub
56.Dark Soldier
57.Lizardman
58.Vampire
59.Boulder Beast
60.Giant Centipede
61.Chaos Lord
62.Skeleton
63.Minotaur
64.Green Slyme
65.Blue Slyme
66.Red Slyme
67.Troglodyte
68.Serpent
69.Dark Mage
70.Ranger
71.Shadow
72.Shadow Wolf
73.Shadow Knight
74.Silver Knight
75.Hell Hound
76.Witch
77.Wyvern
78.Fimir
79.Demon
80.Orc
81.Goblin
82.Gargoyle
83.Martial Artist
84.Small Dragon
85–87.Ogre
88.Dark Knight
89.Wolf
90.Minotaur
91.Blood Fiend
92.Old Hag
93.Lunatic
94.Ogre
95.Boulder Beast
96.Dark Nun
97.Large Spider
98.Giant Ant
99.Dark Knight
100.Spirit
101.Gargoyle
102.Demon
103.Goblin
104.LizardMan
105.Red Devil
106.Satyr
107.Ghoul
108.Vampire
109.Centaur
110.Giant Millipede
111.Werewolf
112.Beast
113.Loomer
114.Black Goo
115.Golem
116.Minotaur
117.Cyclops
118.Evil Bard
119.Evil Farmer
120.Murderer
121.Giant
122.Sorcerer
123.Wyvern
124.Warrior
125.Black Moon Warrior
126.Goblin
127.Troll
128.Large Rat
129.Large Spider
130.Large Millipede
131.Dark Elf
132.Spiked Demon
133.Skeleton
134.Bats
135.Caveman
136.Mummy
137.Serpent
138.Rabid Dog
139.Ugly Man
140.Critter
141.Blue Jelly
142.Fire Elemental
143.Sprite
144.Slyme
145.Giant Maggot
146.Undead Warrior
147.Death Soldier
148.Undertaker
149.Wild Man
150.Dark Monk
151.Thief
152.Small Dragon
153.Sorcerer
154.Spirit
155.Evil Bard
156.Rock Beast
157.Brakarak
158.Emerald Wizard
159.Amundsen
160.Dark Demon
161.Diablo
162.Dark Wizard
163.Slyme
164.Casba Dragon
165.Caveman
166.Skeletal Fiend
167.Doom Ninja
168.Doom Wolf
169.Doom Knight
170.Doom Wizard
171.Orc Knight
172.Wild Dog
173.Fire Fiend
174.Green Demon
175.Orange Demon
176.Violet Demon
177.Red Demon
178.Doom Wolf
179.Doom Knight
180.Hell Hound
181.Hell Knight
182.Red Dragon
183.Green Dragon

This document and its accompanying files are by no means complete. More work is required — feedback and emails are welcome.