
// monster | rules | creation 

CREATION:

inherit "/obj/monster";   

   // calls the standard_monster file for set_functions 


  void reset(int flag)
  {

  // this reset is called in any object via driver so any 45 minutes
  // it returns nothing so its a void function int means the flag is integer
    
     object jacket, sword;

 // our monster shall get a jacket and a sword

       ::reset(flag);

//  here we call the old reset from the inherited file /obj/monster

       if (flag == 0)
       {

//  the flag can be 1 or 0 in the first creation (reset == 0) the flag
//  is ever 0 then after the next reset its ever 1.

         set_name("gulash");

// the name is the word with which the mob can be called  kill gulash

         set_alt_name("orc");

// the alt_name is like a second name kill gulash does the same as kill orc

         set_race("orc");

// the race of your mob

         set_level(4);

// the level of the monster weapon_class eperience ... are calculated
//  automatically if not set with set_ac set_wc set_ep

         set_al(-100);

//  if the monster is good or bad standard should be so -1000 - +1000

         money_add(90);

// the money the monster gets so level * level * 5 is ok

         set_aggressive(1);

// the orc attacks immediatly 0 would mean he never attacks

         set_wimpy();

// the orc will run away when it's low on hit_points

         sword = clone("/players/myname/weapon/axe");
         jacket = clone("/players/myname/armour/jacket");

// here we clone our items from a dir clone = making a copy of the original
// the master object == our file

         move_object(sword,this_object());
         move_object(jacket,this_object());

// then we move the copies to our orc

         command("wield "+sword->query_name());
         command("wear "+jacket->query_name());

// here we give our monster the command to wield and wear the stuff 
     } /* end reset flag == 0 */
}


RULES:

Under doc/build monster you will find lots more functions for your monster.
But if you are not sure, better is just to set the level of the monster no
hit_points weapon classes ect.

If the monster has special attacks it's good to reduce maybe the hit_points
the weapon_class or the armour_class by maybe the half :)

It's fair when you build big aggressive monsters that you don't let them
run around in beginner areas or put in the room before a small sign of
warning as:

      WARNING THAT DRAGON IS DANGEROUS
  
                     The mayor of Daggerford

Monsters above level 20 should have special attacks, because unless they
give easy heaps of exp for the player.
You can do this in your standard mob with set_spell_dam(integer) and 
set_change(integer).

The spell_damage should never go over 220 unless it kills a high level mage
immediatly. I guess a spell_damage of 20 + 2 * monsterlevel is ok as:

               set_name("dagobert");
               set_alt_name("dragon");
               set_race("dragon");
               set_short("dagobert the killer dragon");
               set_long("Oops what a killing machine.\n");
               set_level(40);
               set_gender(1);  /* 1 = male 2 = female 0 = undefined */
               set_spell_mess1("Dagobert breathes");
               set_spell_mess2("Dagobert hits you with his breath");
               set_spell_dam(60 + random(40) );
               set_change(33);  /* 30 % */

so much to that :)

And never do masses of strong mobs in one room :))

    
               
               

      

