<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.dikumud.com/index.php?action=history&amp;feed=atom&amp;title=Manual%3AGame_Mechanics%2FMonsters</id>
	<title>Manual:Game Mechanics/Monsters - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.dikumud.com/index.php?action=history&amp;feed=atom&amp;title=Manual%3AGame_Mechanics%2FMonsters"/>
	<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Game_Mechanics/Monsters&amp;action=history"/>
	<updated>2026-09-13T04:34:09Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.dikumud.com/index.php?title=Manual:Game_Mechanics/Monsters&amp;diff=169&amp;oldid=prev</id>
		<title>Papi: Created page with &quot;This might belong better in a builder's tutorial                         1.   Monster Creation                                   Document Name:     monsters.doc Version:...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Game_Mechanics/Monsters&amp;diff=169&amp;oldid=prev"/>
		<updated>2020-05-25T21:25:58Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;This might belong better in a builder&amp;#039;s tutorial                         1.   Monster Creation                                   Document Name:     monsters.doc Version:...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This might belong better in a builder's tutorial&lt;br /&gt;
&lt;br /&gt;
                       1.   Monster Creation&lt;br /&gt;
                                 &lt;br /&gt;
Document Name:     monsters.doc&lt;br /&gt;
Version:           7.30&lt;br /&gt;
Author:            Michael Seifert (seifert@diku.dk)&lt;br /&gt;
Questions to:      seifert@diku.dk&lt;br /&gt;
Document intended for:   World Creators&lt;br /&gt;
&lt;br /&gt;
Short Description:&lt;br /&gt;
This  document describes how to create monsters, and  explains  in&lt;br /&gt;
brief  how  the various weapon and armour values interact.  Before&lt;br /&gt;
reading  this  document  you should read the  object.txt  document&lt;br /&gt;
describing weapon and armour quality. Abilities and their  meaning&lt;br /&gt;
is described in the ability.txt document.&lt;br /&gt;
&lt;br /&gt;
Ive  attempted to remove all old references that  are  no  longer&lt;br /&gt;
valid (hand, toughness, etc).&lt;br /&gt;
     &lt;br /&gt;
                         2.   Introduction&lt;br /&gt;
                                 &lt;br /&gt;
This  document  will  step-by-step go through the  most  important&lt;br /&gt;
attributes of a monster and explain their meaning.&lt;br /&gt;
&lt;br /&gt;
2.1  Monster Level (level)&lt;br /&gt;
When  creating a monster it must be between level 0 and  199.  The&lt;br /&gt;
level  of  the monster decides how many skill points  and  ability&lt;br /&gt;
points  the  monster  has. Players start at third  level  and  are&lt;br /&gt;
expected to be between level [3..100]. The level of the monster is&lt;br /&gt;
specified using the level field.&lt;br /&gt;
&lt;br /&gt;
     level 0        /* Mosquito */&lt;br /&gt;
&lt;br /&gt;
In  general, an area should be designed around a 10 level span  to&lt;br /&gt;
be fairly consistent. For example a goblin camp for newbie players&lt;br /&gt;
should be of level 0-10 (perhaps only 6). An orc area might be  in&lt;br /&gt;
the range 10-20th level.&lt;br /&gt;
The  reason  is,  that monsters 10 levels below a  player  give  0&lt;br /&gt;
experience  points  while monsters 10 levels above  a  player  are&lt;br /&gt;
beginning to be a difficult kill. If you make an area too  diverse&lt;br /&gt;
players  will  give  up since monsters either seem  too  easy  (no&lt;br /&gt;
experience) or too hard.&lt;br /&gt;
&lt;br /&gt;
2.2  Natural armour &amp;amp; attack&lt;br /&gt;
The  natural  armour  is  specified using  the  NATURAL_DEF  macro&lt;br /&gt;
together with natural attack. For example:&lt;br /&gt;
&lt;br /&gt;
NATURAL_DEF(WPN_CRUSH, ARM_PLATE)&lt;br /&gt;
&lt;br /&gt;
You  should  know  that the weight of the monster  determines  the&lt;br /&gt;
maximum  amount of damage it can give when using a natural attack.&lt;br /&gt;
The weight is categorized as follows:&lt;br /&gt;
&lt;br /&gt;
  Lbs   Size&lt;br /&gt;
 0..5   Tiny&lt;br /&gt;
 6..40  Small&lt;br /&gt;
41..160 Medium&lt;br /&gt;
161..50 Large&lt;br /&gt;
   0&lt;br /&gt;
 501+   Huge&lt;br /&gt;
&lt;br /&gt;
By default monsters are medium.&lt;br /&gt;
&lt;br /&gt;
2.3  Good, Evil and Neutral alignments (alignment)&lt;br /&gt;
Alignment  is  a  value between -1000 and +1000,  where  -1000  is&lt;br /&gt;
ultimate  evil, 0 is neutral and +1000 is ultimate good.  Good  is&lt;br /&gt;
per  definition any value from +1000..+350, neutral is  any  value&lt;br /&gt;
from  +349..-349 and evil is any value from -350..-1000. Any value&lt;br /&gt;
in between can also be used.&lt;br /&gt;
     alignment -750 /* Quite evil, maybe a Ghoul  */&lt;br /&gt;
     alignment -350 /* Barely evil.               */&lt;br /&gt;
&lt;br /&gt;
2.4  The Race (race)&lt;br /&gt;
Each  monster  has a race as specified in values.h.  In  case  you&lt;br /&gt;
cant  find  a race which matches your monster, just  use  #define&lt;br /&gt;
RACE_XXX  in  you  own zonefile with a number that  isnt  already&lt;br /&gt;
used. We will then later transfer it to values.h. Example:&lt;br /&gt;
&lt;br /&gt;
     race RACE_DRAGON_SILVER&lt;br /&gt;
&lt;br /&gt;
or if the race you need isnt defined, you could type:&lt;br /&gt;
&lt;br /&gt;
     #define RACE_CRABMAN     7681 /* This is a large red crab man&lt;br /&gt;
*/&lt;br /&gt;
     race RACE_CRABMAN&lt;br /&gt;
&lt;br /&gt;
Later  it  will  be inserted into values.h - and you  should  then&lt;br /&gt;
remove your definition (you will get warnings at that time).&lt;br /&gt;
&lt;br /&gt;
2.5  The gender (sex)&lt;br /&gt;
Each  monster has a gender: male, female or none, as specified  in&lt;br /&gt;
values.h SEX_XXX macros. Example:&lt;br /&gt;
     sex SEX_NEUTRAL&lt;br /&gt;
&lt;br /&gt;
2.6  Setting Abilities (ability[])&lt;br /&gt;
All  abilities are in the range [1..200]. Players usually  have  a&lt;br /&gt;
maximum of 150, modified by magic... 200 is considered divine.&lt;br /&gt;
When  creating a monster you can not directly specify the size  of&lt;br /&gt;
the  abilities,  instead you specify a percentage distribution  of&lt;br /&gt;
points.  The amount of points are then distributed by the computer&lt;br /&gt;
according  to  the  specified level.  The  MSET_ABILITY  macro  is&lt;br /&gt;
available for this purpose, and has the format:&lt;br /&gt;
&lt;br /&gt;
     MSET_ABILITY(str,dex,con,hpp,bra,cha,mag,div)&lt;br /&gt;
&lt;br /&gt;
The  amount of points distributed depends directly upon the  level&lt;br /&gt;
of the monster and the percentage as the table below shows. If for&lt;br /&gt;
example you create a monsters of level 30, then 20% will cause the&lt;br /&gt;
monster to get a little above 30 points.&lt;br /&gt;
&lt;br /&gt;
Note that the sum of the ability values must be 100%. This is thus&lt;br /&gt;
an example of an ability distribution:&lt;br /&gt;
&lt;br /&gt;
     MSET_ABILITY(25,15,10,15,10,5,10,0)  /* Sum is 100% */&lt;br /&gt;
&lt;br /&gt;
2.6.1&lt;br /&gt;
&lt;br /&gt;
Hints&lt;br /&gt;
If you choose high percentages and high levels, you may waste  a&lt;br /&gt;
ability  points as it would pop above 200 (all excess  points  are&lt;br /&gt;
simply  removed). For example a level 199 monster with an  ability&lt;br /&gt;
percentage  a  bit above 20% will make an ability  above  the  200&lt;br /&gt;
points maximum.&lt;br /&gt;
Do  not  spend  points on both MAG and DIV, only  the  appropriate&lt;br /&gt;
value  of  the  two  are  used. So magic  users  should  have  MAG&lt;br /&gt;
(fireball,  etc.) and clerics should have DIV (cure light  wounds,&lt;br /&gt;
etc.).&lt;br /&gt;
&lt;br /&gt;
2.7  Setting Weapon and Spell skills (spell[], weapon[])&lt;br /&gt;
NPC's  know about weapons and spells but not at the same  detailed&lt;br /&gt;
level  as  the  player. For NPCs the spell and weapon  group  are&lt;br /&gt;
used.  Thus the axe hammer category defines all defence and  all&lt;br /&gt;
attack for all kind of axes and hammers - whereas the player would&lt;br /&gt;
have  to train individually in each axe and hammer type. The  same&lt;br /&gt;
is  true for spells. Thus if a monster has 25 points in the weapon&lt;br /&gt;
&amp;quot;sword  category&amp;quot; it will fight (and defend) with  all  sword-like&lt;br /&gt;
weapons at skill 25.&lt;br /&gt;
When  you  define weapon and spell skills (monsters have no  skill&lt;br /&gt;
skills)  you  also define these as percentages,  and  the  program&lt;br /&gt;
automatically distributes the points. Use the pre-defined macros:&lt;br /&gt;
&lt;br /&gt;
      MSET_WEAPON(axe_ham,  sword,  club_mace,  polearm,  unarmed,&lt;br /&gt;
special)&lt;br /&gt;
&lt;br /&gt;
Where&lt;br /&gt;
     axe_ham   Is any hammer or axe weapon.&lt;br /&gt;
     sword          Is any sword like weapon, including dagger and&lt;br /&gt;
rapier, etc.&lt;br /&gt;
      club_mace  Is any club or mace like weapon, flails,  morning&lt;br /&gt;
star, etc.&lt;br /&gt;
              polearm    Is any flail or pole like weapon:  spear,&lt;br /&gt;
              staff, halberd, trident, sickle, scythe.&lt;br /&gt;
     unarmed   Is any bite, claw, sting or other natural attack.&lt;br /&gt;
     special   Is any very peculiar weapon, currently only whip.&lt;br /&gt;
&lt;br /&gt;
      MSET_SPELL(div, pro, det, sum, cre, min, hea, col, cel, int,&lt;br /&gt;
ext)&lt;br /&gt;
&lt;br /&gt;
Where&lt;br /&gt;
     div  Covers all divine sphere spell.&lt;br /&gt;
     pro  Covers all protection sphere spells.&lt;br /&gt;
     det  Covers all detection sphere spells.&lt;br /&gt;
     sum  Covers all summoning spells.&lt;br /&gt;
     cre  Covers all creation spells.&lt;br /&gt;
     min  Covers all mind spells.&lt;br /&gt;
     hea  Covers all heat spells (fireball, etc.)&lt;br /&gt;
     col  Covers all cold spells (frostball, etc.)&lt;br /&gt;
      cel   Covers all cell (electricity) spells (jolt,  lightning&lt;br /&gt;
bolt, etc.)&lt;br /&gt;
     int  Covers all internal (poison) spells (toxicate, etc.)&lt;br /&gt;
     ext  Covers all external (acid) spells (acid ball etc.)&lt;br /&gt;
See also values.h and wmacros.h.&lt;br /&gt;
The  sum of all spell and weapon skills must be 100%. For example,&lt;br /&gt;
the sum is 100%:&lt;br /&gt;
&lt;br /&gt;
      MSET_WEAPON(10,10,20,5,15,5)  /*  75%  Total,  Club/Mace  is&lt;br /&gt;
primary   */&lt;br /&gt;
      MSET_SPELL(8,0,0,3,0,3,2,3,3,3,3)  /*  25%  Total,  Fire  is&lt;br /&gt;
primary        */&lt;br /&gt;
&lt;br /&gt;
Remember that the groups define both attack and defence.  Thus  if&lt;br /&gt;
you  make  an Orc which has 0% in the flail group it can only  use&lt;br /&gt;
its  dexterity to defend itself. Likewise with spell  groups.  For&lt;br /&gt;
this  reason  the groups are both &amp;quot;resistance&amp;quot; as well  as  attack&lt;br /&gt;
groups.&lt;br /&gt;
&lt;br /&gt;
2.8  Spell casting monsters&lt;br /&gt;
Some  monsters  are spell casting and spend a  lot  of  points  on&lt;br /&gt;
either  Magic  or  Divine power together with  brain.  To  make  a&lt;br /&gt;
monster  cast  spells  a number of various  special  routines  are&lt;br /&gt;
available, for example:&lt;br /&gt;
&lt;br /&gt;
     special SFUN_COMBAT_MAGIC cast acid ball&lt;br /&gt;
     special SFUN_COMBAT_MAGIC_HEAL cast random teleport&lt;br /&gt;
&lt;br /&gt;
This  would make a monster use the acid ball spell when  engaged&lt;br /&gt;
in  combat.  The  monster would attempt to cast random  teleport&lt;br /&gt;
when  it  gets low on hitpoints. The following table  shows  which&lt;br /&gt;
spells a monster should use at a given level:&lt;br /&gt;
&lt;br /&gt;
Level  Circle&lt;br /&gt;
0-14   1st     magic&lt;br /&gt;
       circle&lt;br /&gt;
15-34  2nd     magic&lt;br /&gt;
       circle&lt;br /&gt;
35-200 3rd     magic&lt;br /&gt;
       circle&lt;br /&gt;
&lt;br /&gt;
For  example, a fireusing monster of level 20 would  use  the  2nd&lt;br /&gt;
circle  of  magic (the fireball spell) whereas a level  5  monster&lt;br /&gt;
would  use  the  burn spell. There are also special  routines  for&lt;br /&gt;
breathweapons  for  use  with  for example  dragons.  See  monster&lt;br /&gt;
definitions in composed.h.&lt;br /&gt;
&lt;br /&gt;
2.9  More or less Experience (exp)&lt;br /&gt;
By  default a monster gives the amount of experience it  is  worth&lt;br /&gt;
(which  depends  on the level of the monster).  If  you  create  a&lt;br /&gt;
particular powerful monster or a very weak monster, you  may  wish&lt;br /&gt;
to  raise  or lower the amount of experience given to the  player.&lt;br /&gt;
This   can   be  done  by  specifying  an  experience   percentage&lt;br /&gt;
modification.&lt;br /&gt;
You may want to modify the standard amount (of 0%) when you create&lt;br /&gt;
non-standard  monsters.  The default  amount  is  not  always  the&lt;br /&gt;
correct  amount,  for example an aggressive invisible  10th  level&lt;br /&gt;
dragon with breath weapon and spells, should give more exp than  a&lt;br /&gt;
blind, thieves-friendly dragon. The way I suggest you to calculate&lt;br /&gt;
the  monsters  experience  value should be  adding  the  following&lt;br /&gt;
amplifiers:&lt;br /&gt;
Note  that  if  the  monster is using wands,  scrolls,  staffs  or&lt;br /&gt;
magical  items this should not increase the exp amount, since  the&lt;br /&gt;
item value should be more than enough reward for the players!&lt;br /&gt;
See example application later in this document.&lt;br /&gt;
Amplifiers :&lt;br /&gt;
&lt;br /&gt;
 Ability / Skill   Bonus                  Examples&lt;br /&gt;
Breath weapon         +50  Usually a Dragon or Gorgon&lt;br /&gt;
Special fighting   +20..5  Example : The Evil Iggy remembers who&lt;br /&gt;
routine                 0  he is fighting with. When he gets below&lt;br /&gt;
                           50% hits he casts &amp;quot;random teleport&amp;quot;.&lt;br /&gt;
                           Later (when he has full hp) he summons&lt;br /&gt;
                           the player he has been fighting with&lt;br /&gt;
                           and THEN tries to kill the player. This&lt;br /&gt;
                           routine is highly dangerous for groups.&lt;br /&gt;
Low level monster  +10..3  A low level NPC has a special routine&lt;br /&gt;
casts                   0  SFUN_COMBAT_MAGIC or&lt;br /&gt;
high level spells          SFUN_COMBAT_MAGIC_HEAL where the spell&lt;br /&gt;
                           is a high level spell. Ex. a 1. level&lt;br /&gt;
                           wizard casts a &amp;quot;acid ball&amp;quot;. This is up&lt;br /&gt;
                           to the creator to decide how tough the&lt;br /&gt;
                           monsters spell should be.&lt;br /&gt;
Monster stings        +20  Player can die even after a successful&lt;br /&gt;
(poison)                   kill&lt;br /&gt;
Monster is            +15  Players can not attack, and player's&lt;br /&gt;
invisible                  group will not be able to help, unless&lt;br /&gt;
                           they can see invisible&lt;br /&gt;
Monster is hiding     +10  A thief&lt;br /&gt;
Monster can see        +5  This is only dangerous if the monster&lt;br /&gt;
invisible                  is aggressive, and this amplifier&lt;br /&gt;
                           should only be used in such a case.&lt;br /&gt;
Monster is team    +5..+5  The guards helps the Captain and each&lt;br /&gt;
working                 0  other.&lt;br /&gt;
Monster is being   +5..+3  The king is hard to kill, you have to&lt;br /&gt;
rescued                 0  kill his lifeguards first.&lt;br /&gt;
Monster is             +5  Monster will hit first and increase&lt;br /&gt;
aggressive                 chance of a kill&lt;br /&gt;
Monster is            +10  The monster is using the special&lt;br /&gt;
ambushing                  function SFUN_RAN_ATTACK&lt;br /&gt;
Monster have to        -5  The monster will always get into a&lt;br /&gt;
rescue                     fight, and the chance of being killed&lt;br /&gt;
                           is higher than the NPC it'll have to&lt;br /&gt;
                           rescue.&lt;br /&gt;
Monster is             -5  A usually stupid cleric etc.&lt;br /&gt;
friendly to&lt;br /&gt;
thieves&lt;br /&gt;
Blind                 -15  A mole in daylight.&lt;br /&gt;
If weapon             -50  If a NPC is equipped with a weapon&lt;br /&gt;
category isn't             which isn't in a category he has&lt;br /&gt;
like wielded               practised.&lt;br /&gt;
weapon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.10&lt;br /&gt;
&lt;br /&gt;
Standard monsters in composed.h&lt;br /&gt;
The  file composed.h contains many standard monsters. It is a good&lt;br /&gt;
idea  to  study these definitions, as they form the basis of  many&lt;br /&gt;
different  monsters. Note that the definitions  by  no  means  are&lt;br /&gt;
perfect,  but  we  are hoping to make a more  or  less  complete&lt;br /&gt;
monster  compendium.  If  you create certain  (general)  monsters,&lt;br /&gt;
please design it as a macro so that it can be incorporated in  the&lt;br /&gt;
file. The more monsters created by using these macros the better a&lt;br /&gt;
place the game will be for the players.&lt;br /&gt;
&lt;br /&gt;
2.11 Examples&lt;br /&gt;
The  following  is  an  example  of creating  different  types  of&lt;br /&gt;
monsters.&lt;br /&gt;
&lt;br /&gt;
2.11.1    A Black Dragon&lt;br /&gt;
In  this example a black dragon is created. You should notice that&lt;br /&gt;
the  number  121  is the value of the SPL_ACIDBALL_3  definition&lt;br /&gt;
since  I  cant  currently get it translated  inside  quotes.  The&lt;br /&gt;
following should at least be specified in your zone file.&lt;br /&gt;
&lt;br /&gt;
     race RACE_DRAGON_BLACK&lt;br /&gt;
     sex SEX_FEMALE&lt;br /&gt;
     level 15&lt;br /&gt;
     height625                         /* In centimetres. 1 inch&lt;br /&gt;
== 2.54cm */&lt;br /&gt;
     weight     1250                         /* In pounds, 1 pound&lt;br /&gt;
= 0.45359kg    */&lt;br /&gt;
     NATURAL_DEF(WPN_CLAW, ARM_PLATE)&lt;br /&gt;
     exp 50                             /* Bonus for breath weapon&lt;br /&gt;
*/&lt;br /&gt;
           alignment      -900                      /*       Evil.&lt;br /&gt;
*/&lt;br /&gt;
      MSET_ABILITY(20,12,12,12,12,12,20,0)    /* Most STR and  MAG&lt;br /&gt;
*/&lt;br /&gt;
       MSET_WEAPON(10,10,10,5,30,5)        /*  Natural  is   above&lt;br /&gt;
average        */&lt;br /&gt;
       MSET_SPELL(0,0,0,0,0,0,0,0,0,0,30)       /*   Acid   sphere&lt;br /&gt;
(external)          */&lt;br /&gt;
     special SFUN_BREATH_WEAPON +SPL_ACIDBALL_3&lt;br /&gt;
&lt;br /&gt;
Calculation of experience:&lt;br /&gt;
     Breath weapon       =   50%&lt;br /&gt;
                         ----------&lt;br /&gt;
     SUM                 =   50%&lt;br /&gt;
&lt;br /&gt;
The  same  dragon could have been created by using the macro  from&lt;br /&gt;
the file composed.h:&lt;br /&gt;
&lt;br /&gt;
     M_DRAGON_BLACK(15, SEX_FEMALE)&lt;br /&gt;
&lt;br /&gt;
2.11.2&lt;br /&gt;
&lt;br /&gt;
A strong warrior&lt;br /&gt;
See  the composed.h macros - they contain definitions for a  great&lt;br /&gt;
variety of humans!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.   In general when creating a warrior monster, Strength&lt;br /&gt;
determines amount of damage, Dexterity determines chance to&lt;br /&gt;
defend. Armour the amount of damage received. Constitution&lt;br /&gt;
determines hitpoint gain rate. Weapon skills ought to be high,&lt;br /&gt;
spell skills few, and only as 'resistance' against magic.&lt;/div&gt;</summary>
		<author><name>Papi</name></author>
		
	</entry>
</feed>