Difference between revisions of "OLC Section 3"

From Immwiki
Jump to: navigation, search
m (fixing formatting --Telelion)
Line 1: Line 1:
= MEDIT =
+
=MEDIT=
  <i>"They put... creatures.. into his ear" </i>
+
  <i>"They put... creatures... into his ear" </i>
  
The Medit command allows you to create and edit your mobiles. You can access the
+
: The Medit command allows you to create and edit your mobiles. You can access the
editor via the MEDIT command. To create a mobile, this syntax is:  
+
: editor via the MEDIT command. To create a mobile, this syntax is:  
<b>medit create [vnum]</b>. To simply edit a specific mobile, the syntax is: <b>medit [vnum]</b>.
+
: <b>medit create [vnum]</b>. To simply edit a specific mobile, the syntax is: <b>medit [vnum]</b>.
The <b>mlist</b> command lets you get a list of all mobs in an area, or a list of all  
+
: The <b>mlist</b> command lets you get a list of all mobs in an area, or a list of all  
mobs with a particular name. <b>mlist [name]</b> reveals all mobs with that name string  
+
: mobs with a particular name. <b>mlist [name]</b> reveals all mobs with that name string  
in the area.
+
: in the area.
  
Use the <b>setlevel <level></b> command to automatically set level and the suggested  
+
: Use the <b>setlevel <level></b> command to automatically set level and the suggested  
hitdice, manadice, damdice, ac, and hitroll values for that level.  Mobs below level
+
: hitdice, manadice, damdice, ac, and hitroll values for that level.  Mobs below level
15 may need hitdice adjusted.
+
: 15 may need hitdice adjusted.
  
To copy onto the mobile being edited the information from another mobile, type  
+
: To copy onto the mobile being edited the information from another mobile, type  
<b>copy [vnum of other mobile]</b>. Note that this will make an exact duplicate.
+
: <b>copy [vnum of other mobile]</b>. Note that this will make an exact duplicate.
  
Now, we'll get to what you see in medit, when you type show or hit [return],  
+
: Now, we'll get to what you see in medit, when you type show or hit [return],  
while editing a mob:
+
: while editing a mob:
  
<b>Name:</b>
+
<b>Name:</b>
  The name is the name of the mob. The syntax for setting the name is:  
+
The name is the name of the mob. The syntax for setting the name is:  
  name [mob name]  Note: Always name your mobs as completely as possible, so  
+
name [mob name]  Note: Always name your mobs as completely as possible, so  
  people can properly reference them.  Additional note: Never use a double-quote
+
people can properly reference them.  Additional note: Never use a double-quote
  (") in a mobile's name, as the mud uses them as a delimiter, and this can lead
+
(") in a mobile's name, as the mud uses them as a delimiter, and this can lead
  to Bad Things.  
+
to Bad Things.  
 
   
 
   
<b>Area:</b>
+
<b>Area:</b>
  This just tells you what area the mob is from (determined by the vnum)  
+
This just tells you what area the mob is from (determined by the vnum)  
  
<b>Act Flags:</b>
+
<b>Act Flags:</b>
  Act flags allow you to modify the behavior/abilities of a mob.  
+
Act flags allow you to modify the behavior/abilities of a mob.  
  The Syntax is: act [flag]
+
The Syntax is: act [flag]
  The following are acceptable flag names, and what they do:  
+
The following are acceptable flag names, and what they do:  
  
 
   <i>sentinel:</i> Mobs flagged sentinel will not move from their position.  
 
   <i>sentinel:</i> Mobs flagged sentinel will not move from their position.  
Line 103: Line 103:
  
  
<b>Vnum:</b>
+
<b>Vnum:</b>
  The vnum of the mob is assigned when you create it. Hereafter, it appears in
+
The vnum of the mob is assigned when you create it. Hereafter, it appears in
  medit to remind you.  
+
medit to remind you.  
  
<b>Sex:</b>
+
<b>Sex:</b>
  The sex of a mob determines its genders, and which pronouns the mud uses to  
+
The sex of a mob determines its genders, and which pronouns the mud uses to  
  refer to it. The syntax for setting the sex is: sex [male/female/neuter/random].
+
refer to it. The syntax for setting the sex is: sex [male/female/neuter/random].
  Neuter returns "it", and random picks a random sex whenever the mob is reset.
+
Neuter returns "it", and random picks a random sex whenever the mob is reset.
  
<b>Race:</b>
+
<b>Race:</b>
  This sets the mob's race. Setting the race will give the mob a predefined set
+
This sets the mob's race. Setting the race will give the mob a predefined set
  of parts, immunities, and vulnerabilities, and a language, if one of the player-race
+
of parts, immunities, and vulnerabilities, and a language, if one of the player-race
  mobs. The following are acceptable races:
+
mobs. The following are acceptable races:
 
    
 
    
 
   <i>unique human alatharya srryn kankoran ch'taren aelin shuddeni nefortu caladaran</i>
 
   <i>unique human alatharya srryn kankoran ch'taren aelin shuddeni nefortu caladaran</i>
Line 122: Line 122:
 
   <i>bird troll water fowl wolf wyvern generic</i>  
 
   <i>bird troll water fowl wolf wyvern generic</i>  
  
  If you need a race that doesn't match one of the set ones, use race generic. Be in
+
If you need a race that doesn't match one of the set ones, use race generic. Be in
  mind the race of city-dwelling mobs determines whether an assassin of a given race
+
mind the race of city-dwelling mobs determines whether an assassin of a given race
  can disguise as it or not.  
+
can disguise as it or not.  
  
<b>Level:</b>
+
<b>Level:</b>
  Ihis determines the level of the mobile. The level is important for a number of
+
Ihis determines the level of the mobile. The level is important for a number of
  things, including: how much xp the mob gives, how well the mob saves versus  
+
things, including: how much xp the mob gives, how well the mob saves versus  
  spells, how well certain skills work on the mob, etc.
+
spells, how well certain skills work on the mob, etc.
  Syntax: level [number]
+
Syntax: level [number]
  
<b>Align:</b>
+
<b>Align:</b>
  This sets the alignment of the mob. Syntax: align [number]
+
This sets the alignment of the mob. Syntax: align [number]
  Numbers: -1000=Evil, 0=Neutral, and 1000=Good  
+
Numbers: -1000=Evil, 0=Neutral, and 1000=Good  
  
<b>Hitroll:</b>
+
<b>Hitroll:</b>
  Syntax: hitroll [number].
+
Syntax: hitroll [number].
  A mob's hitroll affects its THAC0 (To Hit AC 0), which in terms affects its  
+
A mob's hitroll affects its THAC0 (To Hit AC 0), which in terms affects its  
  ability to land physical blows on a character. The recommended average value  
+
ability to land physical blows on a character. The recommended average value  
  is level/2, though depending on the situation, the value can easily be higher.
+
is level/2, though depending on the situation, the value can easily be higher.
  
<b>Damtype:</b>
+
<b>Damtype:</b>
  This sets the kind of damage that a mob uses. Syntax: damtype [type].  
+
This sets the kind of damage that a mob uses. Syntax: damtype [type].  
  The types are as follows:  
+
The types are as follows:  
  none    lightning    mental    charm
+
:''  none    lightning    mental    charm
  bash    acid        disease    sound
+
bash    acid        disease    sound
  pierce  poison      drowning  illusion
+
pierce  poison      drowning  illusion
  slash    negative    light      defilement
+
slash    negative    light      defilement
  fire    holy        other      Raestral
+
fire    holy        other      Raestral
  cold    energy      harm
+
cold    energy      harm''
 
   
 
   
<b>Damverb:</b>
+
<b>Damverb:</b>
  This sets the verb used for the mob's damage.  Syntax: damverb [verb].
+
This sets the verb used for the mob's damage.  Syntax: damverb [verb].
  For example, if the damverb is set to "chill", a player would see:
+
For example, if the damverb is set to "chill", a player would see:
    Gogoth the Lich King's ))) HEROIC ((( chill mangles you!  
+
:    Gogoth the Lich King's ))) HEROIC ((( chill mangles you!  
  
<b>Hitdice:</b>
+
<b>Hitdice:</b>
  This will determines the mobile's hit points.  
+
This will determines the mobile's hit points.  
  Syntax: hitdice [x] d [y] + [z]
+
Syntax: hitdice [x] d [y] + [z]
  
  Suggested Values:
+
Suggested Values:
  mob level: hit dice  
+
mob level: hit dice  
  1: 1d2+6      30: 10d80+700
+
1: 1d2+6      30: 10d80+700
  2: 1d3+15      35: 10d110+600
+
2: 1d3+15      35: 10d110+600
  3: 1d6+24      40: 14d170+850
+
3: 1d6+24      40: 14d170+850
  5: 1d17+42    45: 14d190+850
+
5: 1d17+42    45: 14d190+850
  10: 3d22+96    50: 18d200+920
+
10: 3d22+96    50: 18d200+920
  15: 5d30+161  57: 20d220+1100
+
15: 5d30+161  57: 20d220+1100
  20: 8d40+220  
+
20: 8d40+220  
  25: 9d45+500  
+
25: 9d45+500  
 
    
 
    
  These suggested values can also be called up with ‘help HITDICE’.  
+
These suggested values can also be called up with ‘help HITDICE’.  
  
<b>Damdice:</b>
+
<b>Damdice:</b>
  This determines the damage a mobile does with each successful hit.  
+
This determines the damage a mobile does with each successful hit.  
  Syntax: damdice [x] d [y] + [z]
+
Syntax: damdice [x] d [y] + [z]
  
 
   Suggested Values:
 
   Suggested Values:
Line 190: Line 190:
 
   50:    5d10+25  30    53    75   
 
   50:    5d10+25  30    53    75   
  
  The suggested values can found in 'help DAMDICE'
+
The suggested values can found in 'help DAMDICE'
  
<b>Mana Dice:</b>
+
<b>Mana Dice:</b>
  Mobiles do not use mana when they cast spells through mpcast. Mana will be
+
Mobiles do not use mana when they cast spells through mpcast. Mana will be
  used for mobiles who cast spells by normal means (having received spells  
+
used for mobiles who cast spells by normal means (having received spells  
  through the mpsetskilled prog command), but they can go into the negative
+
through the mpsetskilled prog command), but they can go into the negative
  mana ranges (so mana won't do anything, really, unless you are switched
+
mana ranges (so mana won't do anything, really, unless you are switched
  into the mobile and want to cast via a mpsetskilled spell--in which case
+
into the mobile and want to cast via a mpsetskilled spell--in which case
  you need a sufficient and positive amount of mana).
+
you need a sufficient and positive amount of mana).
  Syntax: manadice [x] d [y] + [z]  
+
Syntax: manadice [x] d [y] + [z]  
  
<b>Language:</b>
+
<b>Language:</b>
  Sets the languages known by the mobile (if a
+
Sets the languages known by the mobile (if a
  Syntax: language [language type]
+
Syntax: language [language type]
  Valid languages are: <i>common alatharya srryn kankoran ch'taren aelin</i>
+
Valid languages are: <i>common alatharya srryn kankoran ch'taren aelin</i>
                      <i>shuddeni nefortu caladaran ethron arcane</i>  
+
:                      <i>shuddeni nefortu caladaran ethron arcane</i>  
 
    
 
    
  Note: Mobs will not speak any language well by default. If you want a mob
+
Note: Mobs will not speak any language well by default. If you want a mob
        to ever speak, give it some language.
+
to ever speak, give it some language.
  
<b>Affects:</b>
+
<b>Affects:</b>
  The mobile's affects field determines what spells/skills it is affected with.
+
The mobile's affects field determines what spells/skills it is affected with.
  Syntax: aff [affect]
+
Syntax: aff [affect]
  
 
   The following are valid affects:  
 
   The following are valid affects:  
Line 224: Line 224:
 
     regeneration      slow              detect_wizi     
 
     regeneration      slow              detect_wizi     
  
  A note about 'wizi': Mobs which are 'wizi' cannot be seen by mortal players.
+
A note about 'wizi': Mobs which are 'wizi' cannot be seen by mortal players.
  Area spells will not start combat with these mobs, and if they are forced to  
+
Area spells will not start combat with these mobs, and if they are forced to  
  attack, they will only attack for one round. (Players will not get to hit back.)
+
attack, they will only attack for one round. (Players will not get to hit back.)
  
  In general, you should avoid using these wherever possible. Have the mob cast
+
In general, you should avoid using these wherever possible. Have the mob cast
  the spell or use the skill whenever you can, or if you must have the affect set
+
the spell or use the skill whenever you can, or if you must have the affect set
  permanently without the skill being used, set it in a load_prog.
+
permanently without the skill being used, set it in a load_prog.
  
<b>Armor:</b>
+
<b>Armor:</b>
  This specifies the mobile's armor, which is a factor in determining whether it
+
This specifies the mobile's armor, which is a factor in determining whether it
  is hit or not, and by what types of attack.  
+
is hit or not, and by what types of attack.  
  Syntax: armor [v1] [v2] [v3] [v4]
+
Syntax: armor [v1] [v2] [v3] [v4]
  Value1 == pierce ac  
+
Value1 == pierce ac  
  Value2 == bash ac  
+
Value2 == bash ac  
  Value3 == slash ac  
+
Value3 == slash ac  
  Value4 == exotic ac
+
Value4 == exotic ac
  
 
   Suggested Values:
 
   Suggested Values:
Line 260: Line 260:
 
     80  -400  -400  -400  -150
 
     80  -400  -400  -400  -150
  
  These values can also be found while editing in ‘help [[MOB_AC]]’.  
+
These values can also be found while editing in ‘help [[MOB_AC]]’.  
 +
 
 +
<b>Form:</b>
 +
:  More creature flags relating to the creature's form.
 +
:  Syntax: form [flag]
  
<b>Form:</b>
 
  More creature flags relating to the creature's form.
 
  Syntax: form [flag]
 
 
   <i>edible:</i> Creatures body parts are edible
 
   <i>edible:</i> Creatures body parts are edible
 
   <i>poison:</i> Creatures body parts are poisonous
 
   <i>poison:</i> Creatures body parts are poisonous
Line 277: Line 278:
 
   <i>intangible  blob        fish</i>
 
   <i>intangible  blob        fish</i>
  
<b>Parts:</b>
+
<b>Parts:</b>
  The parts determine what body parts a mobile produces when it dies. In  
+
The parts determine what body parts a mobile produces when it dies. In  
  general, these will be race depeendent, but you can add them if the mob is  
+
general, these will be race depeendent, but you can add them if the mob is  
  lacking.  
+
lacking.  
  Syntax: parts [head] [arms] [legs] [heart] [brains] [guts] [hands] [feet]
+
Syntax: parts [head] [arms] [legs] [heart] [brains] [guts] [hands] [feet]
                [fingers] [ear] [eye] [long_tongue] [eyestalks] [tentacles]
+
:                [fingers] [ear] [eye] [long_tongue] [eyestalks] [tentacles]
                [fins] [wings] [tail] [claws] [fangs] [horns] [scales] [tusks]
+
:                [fins] [wings] [tail] [claws] [fangs] [horns] [scales] [tusks]
  
<b>Immunities:</b>
+
<b>Immunities:</b>
  The mobs immunities field determines what spells/damage types it will be   
+
The mobs immunities field determines what spells/damage types it will be   
  immune to. As a general note, important mobs that you don't want people  
+
immune to. As a general note, important mobs that you don't want people  
  moving around should be immune to summoning and charming.  
+
moving around should be immune to summoning and charming.  
  Syntax: imm [immunity type]
+
Syntax: imm [immunity type]
  
 
  <b>The following are allowable immunities:</b>
 
  <b>The following are allowable immunities:</b>
Line 300: Line 301:
 
   slash  holy        wood
 
   slash  holy        wood
  
<b>Resistance:</b>
+
<b>Resistance:</b>
  The mob's resistances determine which spells/damage types it is resistant to.  
+
The mob's resistances determine which spells/damage types it is resistant to.  
  Syntax: res [resistance type] [amount]
+
Syntax: res [resistance type] [amount]
  
  See the list of IMMUNITIES above for acceptable resistances.
+
See the list of IMMUNITIES above for acceptable resistances.
  
<b>Vulnerabilities:</b>
+
<b>Vulnerabilities:</b>
  The mob's vulnerabilities determine which spells/damage type it is
+
The mob's vulnerabilities determine which spells/damage type it is
  vulnerable to.  
+
vulnerable to.  
  Syntax: vuln [vuln type] [amount]
+
Syntax: vuln [vuln type] [amount]
  
  See the list of IMMUNITIES above for acceptable vulnerabilities.  
+
See the list of IMMUNITIES above for acceptable vulnerabilities.  
  
<b>Offense:</b>
+
<b>Offense:</b>
  The offense fields help determine your mob's combat behavior.  
+
The offense fields help determine your mob's combat behavior.  
  Syntax: off [type]
+
Syntax: off [type]
 
   The following are acceptable offense types:  
 
   The following are acceptable offense types:  
 
   <i>area_attack:</i> Mob will attack and do damage to all players that attack it.  
 
   <i>area_attack:</i> Mob will attack and do damage to all players that attack it.  
Line 341: Line 342:
 
   <i>assist_bouncer:</i> Mob will be a bouncy, bouncy ball.
 
   <i>assist_bouncer:</i> Mob will be a bouncy, bouncy ball.
  
  Note: You will note that many of these off bits mimic skills. With  
+
Note: You will note that many of these off bits mimic skills. With  
  the exception of defenses, you generally <i>do not</i> want to be using  
+
the exception of defenses, you generally <i>do not</i> want to be using  
  off bits that mimic skills-- this will cause the mob to execute them regardless
+
off bits that mimic skills-- this will cause the mob to execute them regardless
  of any fight progs, or, more importantly, of lag states. This is what causes
+
of any fight progs, or, more importantly, of lag states. This is what causes
  a mob that disarms you one round, bashes the next, then trips the round right
+
a mob that disarms you one round, bashes the next, then trips the round right
  after. Give them the skills instead.
+
after. Give them the skills instead.
  
<b>Size:</b>
+
<b>Size:</b>
  This determines the size of the mob. The size will affect things such as
+
This determines the size of the mob. The size will affect things such as
  a mob's ability to bash or be bashed, as well as certain spells (such as  
+
a mob's ability to bash or be bashed, as well as certain spells (such as  
  density).  
+
density).  
  Syntax: size [value]
+
Syntax: size [value]
  
  Acceptable size values are as follows:  
+
Acceptable size values are as follows:  
  tiny: rodents, very small creatures  
+
tiny: rodents, very small creatures  
  small: Large birds to halfling sized.  
+
small: Large birds to halfling sized.  
  medium: roughly human sized  
+
medium: roughly human sized  
  large: Ogre sized  
+
large: Ogre sized  
  huge: Giants, small dragons, wyverns  
+
huge: Giants, small dragons, wyverns  
  giant: Ancient dragons, titans, etc.  
+
giant: Ancient dragons, titans, etc.  
  
  Note: Certain races will set their own size field.
+
Note: Certain races will set their own size field.
  
<b>Material:</b>
+
<b>Material:</b>
  The mob's material is completely irrelevant, and never used.
+
The mob's material is completely irrelevant, and never used.
  
<b>Starting Position:</b>
+
<b>Starting Position:</b>
  This determines what position a mob begins in, after being reset.
+
This determines what position a mob begins in, after being reset.
  Syntax: position start [type]
+
Syntax: position start [type]
  The following are acceptable positions: <i>sleeping resting sitting standing</i>
+
The following are acceptable positions: <i>sleeping resting sitting standing</i>
  
<b>Default Position:</b>
+
<b>Default Position:</b>
  The default position is the position a mobile returns to after a fight.
+
The default position is the position a mobile returns to after a fight.
  Syntax: position default [type]
+
Syntax: position default [type]
  Acceptable positions are the same as the starting positions listed above.
+
Acceptable positions are the same as the starting positions listed above.
  
<b>Wealth:</b>
+
<b>Wealth:</b>
  Syntax: wealth [percentage amount]
+
Syntax: wealth [percentage amount]
  A mob's wealth determines how much money it is carrying when it resets. Use  
+
A mob's wealth determines how much money it is carrying when it resets. Use  
  the following table to help determine an appropriate amount:
+
the following table to help determine an appropriate amount:
    0-10% Begger
+
:    0-10% Begger
    20-30% Serf
+
:    20-30% Serf
    40-50% Peasant
+
:    40-50% Peasant
    70-90% Yeoman, farer, rural craftsman
+
:    70-90% Yeoman, farer, rural craftsman
      100% Average citizen of a town
+
:      100% Average citizen of a town
  130-150% Average well-off citizen (upstanding guildmember, master craftsman, etc)
+
130-150% Average well-off citizen (upstanding guildmember, master craftsman, etc)
  160-180% Wealthy citizen of a city
+
160-180% Wealthy citizen of a city
  200-250% Shopkeeper in a city
+
200-250% Shopkeeper in a city
  220-230% Minor noble
+
220-230% Minor noble
  250-270% Mid-tier noble
+
250-270% Mid-tier noble
  270-290% Major noble (duke, etc)
+
270-290% Major noble (duke, etc)
      300% Ruler of a city
+
:      300% Ruler of a city
      400% Leader of a republic, king, other head of state
+
:      400% Leader of a republic, king, other head of state
      450% Epic hero
+
:      450% Epic hero
  500-600% Adult Elemental Dragon
+
500-600% Adult Elemental Dragon
  700-800% Elder Elemental Dragon
+
700-800% Elder Elemental Dragon
900-1000% Being of unique or demigod-like status
+
: 900-1000% Being of unique or demigod-like status
  
  Note: Be extremely careful with how much gold a mobile is given, as excessive
+
Note: Be extremely careful with how much gold a mobile is given, as excessive
        gold supply can throw off the balance of the game.
+
gold supply can throw off the balance of the game.
  
<b>Short Desc:</b>
+
<b>Short Desc:</b>
  Syntax: short [string]
+
Syntax: short [string]
  The short description is basically the name of the mob that players see when
+
The short description is basically the name of the mob that players see when
  they interact with it. The short is, for example, what you see when you attack
+
they interact with it. The short is, for example, what you see when you attack
  it. I.e.: "Your slash decimates a hen! A hen's peck does Unspeakable Things to  
+
it. I.e.: "Your slash decimates a hen! A hen's peck does Unspeakable Things to  
  you!" The mob's short would be "a hen".
+
you!" The mob's short would be "a hen".
  
  Important note: If the mob's short is just a proper name, it should be  
+
Important note: If the mob's short is just a proper name, it should be  
  capitalized. If it is an article and a name ("a hen"), the article should not
+
capitalized. If it is an article and a name ("a hen"), the article should not
  be capitalized.  
+
be capitalized.  
  
<b>Long Desc:</b>
+
<b>Long Desc:</b>
  Syntax: long [string] The long description is what players see about a mob when
+
Syntax: long [string] The long description is what players see about a mob when
  they look in the room where it is. For example, suppose a hen were in a room. A  
+
they look in the room where it is. For example, suppose a hen were in a room. A  
  player who looked might see: A hen is here, pecking for worms.  
+
player who looked might see: A hen is here, pecking for worms.  
  
  Important note: Your long description should always be a complete sentence,  
+
Important note: Your long description should always be a complete sentence,  
  capitalized and punctuated correctly. Also make sure that it is only one line,
+
capitalized and punctuated correctly. Also make sure that it is only one line,
  as longs that wrap look really terrible.  
+
as longs that wrap look really terrible.  
  
<b>Special Functions:</b>
+
<b>Special Functions:</b>
  Syntax: spec [function]
+
Syntax: spec [function]
  As a sort of precursor to mob progs, there exist special functions, which are
+
As a sort of precursor to mob progs, there exist special functions, which are
  basically hard-coded behavior sets for mobs. They still have their uses. The
+
basically hard-coded behavior sets for mobs. They still have their uses.  
   following are permissible special function names:
+
    
 +
  The following are permissible special function names:
 
   <i>spec_breath_any:</i> Breathes any and all breath weapons (Note: breath weapons
 
   <i>spec_breath_any:</i> Breathes any and all breath weapons (Note: breath weapons
 
   are hp dependent in their damage)  
 
   are hp dependent in their damage)  
Line 452: Line 454:
 
   <i>spec_ patrolman:</i> Stock rom  
 
   <i>spec_ patrolman:</i> Stock rom  
 
   <i>spec_cast_adept, spec_cast_cleric, spec_cast_undead, spec_cast_mage and</i>
 
   <i>spec_cast_adept, spec_cast_cleric, spec_cast_undead, spec_cast_mage and</i>
  <i>spec_cast_judge:</i> Stock rom spell casting. Do not use.  
+
  <i>spec_cast_judge:</i> Stock rom spell casting. Do not use.  
  
<b>Shopkeepers:</b>
+
<b>Shopkeepers:</b>
  You can make mobs into shopkeerers, who will sell items reset into their  
+
You can make mobs into shopkeerers, who will sell items reset into their  
  inventory. (See the help under resets in REDIT if you need to.) To make the  
+
inventory. (See the help under resets in REDIT if you need to.) To make the  
  mob into a shop, you first set the shop hours.  
+
mob into a shop, you first set the shop hours.  
  Syntax: shop hours [open time] [close time]
+
Syntax: shop hours [open time] [close time]
  
  Time is measured in military time, and goes from 0-23.
+
Time is measured in military time, and goes from 0-23.
  
  Once you've made the shop, you can also set the markup on items sold, and the
+
Once you've made the shop, you can also set the markup on items sold, and the
  markdown on items bought.  
+
markdown on items bought.  
  Syntax: shop profit [value]
+
Syntax: shop profit [value]
  
  The markup for the purchaser generally a value greater than 100. (It represents
+
The markup for the purchaser generally a value greater than 100. (It represents
  how much the price gets jacked up if you want to buy). The markdown for the  
+
how much the price gets jacked up if you want to buy). The markdown for the  
  seller is generally < 100, and represents how much your item's base value is
+
seller is generally < 100, and represents how much your item's base value is
  depreciated, should you want to sell things to the shoppie that he wants to buy.  
+
depreciated, should you want to sell things to the shoppie that he wants to buy.  
  
  You can set the maximum item price that the shopkeeper can buy. This works as  
+
You can set the maximum item price that the shopkeeper can buy. This works as  
  long as the field is > 0.
+
long as the field is > 0.
  Syntax: shop maxbuy [value]
+
Syntax: shop maxbuy [value]
  
  Next, you can set the type of things the shop buys. Shops can buy up to four  
+
Next, you can set the type of things the shop buys. Shops can buy up to four  
  different types of things. Syntax: shop type [0-4] [item]
+
different types of things. Syntax: shop type [0-4] [item]
  
 
   The following are acceptable item types for the shop to buy:  
 
   The following are acceptable item types for the shop to buy:  
   light      furniture      npccorpse    gem
+
   ''light      furniture      npccorpse    gem''
   scroll    trash          fountain    jewelry
+
   ''scroll    trash          fountain    jewelry''
   wand      container      pill        jukebox
+
   ''wand      container      pill        jukebox''
   staff      drinkcontainer  protect      instrument
+
   ''staff      drinkcontainer  protect      instrument''
   weapon    key            map          net
+
   ''weapon    key            map          net''
   treasure  food            portal
+
   ''treasure  food            portal''
   armor      money          warpstone
+
   ''armor      money          warpstone''
   potion    boat            roomkey
+
   ''potion    boat            roomkey''
  
  To remove a type of item that the shop buys, do as follows:
+
To remove a type of item that the shop buys, do as follows:
  Syntax: shop delete <0-4>
+
Syntax: shop delete <0-4>
  
<b>Shop Pets:</b>
+
<b>Shop Pets:</b>
  * To make a shopkeeper sell pets, flag the room the shopkeeper is in as 'pet_shop'.
+
* To make a shopkeeper sell pets, flag the room the shopkeeper is in as 'pet_shop'.
  * Then use the room with the next highest vnum to load the pet mobs in.   
+
* Then use the room with the next highest vnum to load the pet mobs in.   
  (For example, if your pet shopkeeper is in room 2010, load the mobs in 2011).  
+
(For example, if your pet shopkeeper is in room 2010, load the mobs in 2011).  
  * The pet mobs need to be flagged 'pet'
+
* The pet mobs need to be flagged 'pet'
  * The pet mob room will generally need to be made inaccessible (via nowhere,
+
* The pet mob room will generally need to be made inaccessible (via nowhere,
    nogate_to, etc).
+
:    nogate_to, etc).
  * A verb_prog handling the list may need to be created, for the shopkeeper.
+
* A verb_prog handling the list may need to be created, for the shopkeeper.
 
   
 
   
  
<b>Guildmasters:</b>
+
<b>Guildmasters:</b>
  Syntax: guild [add|delete] [ability name]
+
Syntax: guild [add|delete] [ability name]
  You need to specifiy each ability a guildmaster (or other mob) teachers.
+
You need to specifiy each ability a guildmaster (or other mob) teachers.
  The mob should have the "practice" act flag, and may need the "train"
+
The mob should have the "practice" act flag, and may need the "train"
  and "gain" act flags also, if it is a standard city guildmaster.
+
and "gain" act flags also, if it is a standard city guildmaster.
 
   
 
   
<b>Factions:</b>
+
<b>Factions:</b>
  Syntax: faction [number]
+
Syntax: faction [number]
  Type "flist" to see the various factions.  You can set up new factions
+
Type "flist" to see the various factions.  You can set up new factions
  and also put mobs into factions via fedit.
+
and also put mobs into factions via fedit.
  
  
 
----
 
----
 
[[category:Leviticus]]
 
[[category:Leviticus]]

Revision as of 01:41, 7 May 2011

MEDIT

"They put... creatures... into his ear" 
The Medit command allows you to create and edit your mobiles. You can access the
editor via the MEDIT command. To create a mobile, this syntax is:
medit create [vnum]. To simply edit a specific mobile, the syntax is: medit [vnum].
The mlist command lets you get a list of all mobs in an area, or a list of all
mobs with a particular name. mlist [name] reveals all mobs with that name string
in the area.
Use the setlevel <level> command to automatically set level and the suggested
hitdice, manadice, damdice, ac, and hitroll values for that level. Mobs below level
15 may need hitdice adjusted.
To copy onto the mobile being edited the information from another mobile, type
copy [vnum of other mobile]. Note that this will make an exact duplicate.
Now, we'll get to what you see in medit, when you type show or hit [return],
while editing a mob:

Name:

The name is the name of the mob. The syntax for setting the name is:
name [mob name] Note: Always name your mobs as completely as possible, so
people can properly reference them. Additional note: Never use a double-quote
(") in a mobile's name, as the mud uses them as a delimiter, and this can lead
to Bad Things.

Area:

This just tells you what area the mob is from (determined by the vnum)

Act Flags:

Act flags allow you to modify the behavior/abilities of a mob.
The Syntax is: act [flag]
The following are acceptable flag names, and what they do:
 sentinel: Mobs flagged sentinel will not move from their position. 
  Sentinel mobs will attack players who return to the room after attacking
  them. 
 scavenger: Mob will pick objects up off the ground. 
 notrack: Mobs flagged notrack will not track, or attack players who 
  attacked them if they re-enter the room. 
 track_gate: Mobs who are track_gate will track their opponents down
  by gating to them. 
 aggressive: Mobs who are aggressive will attack all players less than
  or equal to their own level. 
 stay_area: Mobs who are stay area will not wander outside an area 
  (note: this doesn't stopped progged movement)
 wimpy: Mobs who are wimpy will flee at the drop of a hat. 
 pet: Flag mobs at a pet_shop as pet 
 train: Mobs who are act train will allow players to train stats at 
  them. 
 practice: Mobs who are act practice will allow players to practice 
  skills there. Note: you must set WHICH skills with the GUILD command.
 nowander: Mobs who are flagged nowander will not wander randomly. 
  Nowander mobs WILL track unless otherwise flagged. 
 guildguard: Flags mobs as guildguard who will be guarding a guild. 
 animal: Flags mobs that should be usable by a ranger as a charmie 
  as animal. In general, magical or intelligent monsters should not be act
  animal. 
 undead: Mobs who are undead, affected by holy water
 badass: Mobs who are act badass will give far more experience than 
  normal and also doubles the faction effect. NOTE: Badass mobs must be 
  far tougher than regular mobs. Make badass mobs only with imp approval. 
 Cleric, mage, thief, warrior: Mobs flagged act warrior will get 
  percentage in 2nd and 3rd attacks, and will disarm randomly in combat. 
  Use mpaddskill $i 187 100 in a load_prog 100 instead.
 noalign: Mob reads as having no alignment, though this is generally
  never used. 
 nopurge: Mob is unaffected by the imm command "purge" (use sparingly,
  if at all). 
 outdoors: Mobile will not wander into an indoors area. 
 nosubdue: Mob cannot be knocked unconscious, or the subject of poison
  darts, lethal skills, or any spell which tends to stop the mobile from
  functioning (sleep, etc.). Use on epic creatures, or something you really
  need to avoid being messed up by players. 
 indoors: Mobile will not wander outdoors. 
 healer: Mobs flagged healer will function as a healer, allowing players
  to purchase healing with the "heal" command. 
 gain: Players can gain convert at mobs flagged gain. 
 update_always: Mob updates every 3 minutes, whether or not players 
  are in the area. 
 changer: Mob acts as a money changer (not currently used) 
 familiar: Used on mobs which are familiars. Not for general builder use. 
 bank: Mob allows pcs to use bank commands.  Usually set on a wizi mob.
 omnilingual:  Does what it says on the tin
 psycho: ?
 pacific: Used for charmies that don't attack in combat, but will still
  be considered fighting if the master is, too. Mostly for VS charmies.
 charmrand: Rand progs will trigger even if the mob is charmed
 classed: Mob uses class abilites-- set using 'class (name)'.  (not fully implemented)
  (can be used to allow the mob class-specific skills via prog, such 
  as the WT form of sanc, but do not under any circumstances use fighter, it is broken)
 norescue: Mob cannot be ordered to rescue, if it is a charmie.
 mount: Mob acts as mount (not yet implemented)
 smith: Mob allows pcs to use smith commands
 nodisarm: Mob can't be disarmed
 track_fast: Mob tracks quickly
 track_open: When tracking, mob opens doors
 track_ram: When tracking, mob rams locked doors
 keepgold: On a shopkeeper, the mob keeps gold on hand after transactions; use for shopkeepers that also need to manipulate money (see: Ghonst)
 faction_leader Mob gives 15x the faction effect
 faction_elite Mob gives 5x the faction effect


Vnum:

The vnum of the mob is assigned when you create it. Hereafter, it appears in
medit to remind you.

Sex:

The sex of a mob determines its genders, and which pronouns the mud uses to
refer to it. The syntax for setting the sex is: sex [male/female/neuter/random].
Neuter returns "it", and random picks a random sex whenever the mob is reset.

Race:

This sets the mob's race. Setting the race will give the mob a predefined set
of parts, immunities, and vulnerabilities, and a language, if one of the player-race
mobs. The following are acceptable races:
 unique human alatharya srryn kankoran ch'taren aelin shuddeni nefortu caladaran
 ethron drow giant bat bear cat centipede demon dog doll dragon elf fido fox 
 goblin hobgoblin kobold lizard modron orc pig rabbit school monster snake song 
 bird troll water fowl wolf wyvern generic 
If you need a race that doesn't match one of the set ones, use race generic. Be in
mind the race of city-dwelling mobs determines whether an assassin of a given race
can disguise as it or not.

Level:

Ihis determines the level of the mobile. The level is important for a number of
things, including: how much xp the mob gives, how well the mob saves versus
spells, how well certain skills work on the mob, etc.
Syntax: level [number]

Align:

This sets the alignment of the mob. Syntax: align [number]
Numbers: -1000=Evil, 0=Neutral, and 1000=Good

Hitroll:

Syntax: hitroll [number].
A mob's hitroll affects its THAC0 (To Hit AC 0), which in terms affects its
ability to land physical blows on a character. The recommended average value
is level/2, though depending on the situation, the value can easily be higher.

Damtype:

This sets the kind of damage that a mob uses. Syntax: damtype [type].
The types are as follows:
none lightning mental charm
bash acid disease sound
pierce poison drowning illusion
slash negative light defilement
fire holy other Raestral
cold energy harm

Damverb:

This sets the verb used for the mob's damage. Syntax: damverb [verb].
For example, if the damverb is set to "chill", a player would see:
Gogoth the Lich King's ))) HEROIC ((( chill mangles you!

Hitdice:

This will determines the mobile's hit points.
Syntax: hitdice [x] d [y] + [z]
Suggested Values:
mob level: hit dice
1: 1d2+6 30: 10d80+700
2: 1d3+15 35: 10d110+600
3: 1d6+24 40: 14d170+850
5: 1d17+42 45: 14d190+850
10: 3d22+96 50: 18d200+920
15: 5d30+161 57: 20d220+1100
20: 8d40+220
25: 9d45+500
These suggested values can also be called up with ‘help HITDICE’.

Damdice:

This determines the damage a mobile does with each successful hit.
Syntax: damdice [x] d [y] + [z]
 Suggested Values:
 level  damdice  low  average high
 1:     1d2+0     1      2      2 
 2:     1d2+1     2      3      3
 3:     1d3+2     3      4      4 
 5:     2d3+2     4      6      8  
 10:    2d5+5     7     11     15 
 15:    3d5+8    11     17     23 
 20:    4d5+10   14     22     30 
 30:    5d6+15   20     33     45 
 50:    5d10+25  30     53     75   
The suggested values can found in 'help DAMDICE'

Mana Dice:

Mobiles do not use mana when they cast spells through mpcast. Mana will be
used for mobiles who cast spells by normal means (having received spells
through the mpsetskilled prog command), but they can go into the negative
mana ranges (so mana won't do anything, really, unless you are switched
into the mobile and want to cast via a mpsetskilled spell--in which case
you need a sufficient and positive amount of mana).
Syntax: manadice [x] d [y] + [z]

Language:

Sets the languages known by the mobile (if a
Syntax: language [language type]
Valid languages are: common alatharya srryn kankoran ch'taren aelin
shuddeni nefortu caladaran ethron arcane
Note: Mobs will not speak any language well by default. If you want a mob
to ever speak, give it some language.

Affects:

The mobile's affects field determines what spells/skills it is affected with.
Syntax: aff [affect]
 The following are valid affects: 
   blind              invisible          detect_evil        detect_invis       
   fly_natural        detect_hidden      detect_good        sanctuary          
   ethereal_flame     infrared           curse              wizi               
   poison             protect_evil       protect_good       sneak              
   hide               sleep              charm              flying             
   pass_door          haste              calm               plague             
   weaken             dark_vision        berserk            swim               
   regeneration       slow               detect_wizi    
A note about 'wizi': Mobs which are 'wizi' cannot be seen by mortal players.
Area spells will not start combat with these mobs, and if they are forced to
attack, they will only attack for one round. (Players will not get to hit back.)
In general, you should avoid using these wherever possible. Have the mob cast
the spell or use the skill whenever you can, or if you must have the affect set
permanently without the skill being used, set it in a load_prog.

Armor:

This specifies the mobile's armor, which is a factor in determining whether it
is hit or not, and by what types of attack.
Syntax: armor [v1] [v2] [v3] [v4]
Value1 == pierce ac
Value2 == bash ac
Value3 == slash ac
Value4 == exotic ac
 Suggested Values:
 level pierce  bash  slash  exotic
    1    95    95     95    95
    5    70    70     70    85
   10    40    40     40    70
   15     5     5      5    55
   20   -25   -25    -25    40	
   25   -55   -55    -55    20
   30   -90   -90    -90     5
   35  -120  -120   -120   -10
   40  -150  -150   -150   -25	
   45  -180  -180   -180   -40	
   50  -215  -215   -215   -55	
   55  -245  -245   -245   -70	
   60  -275  -275   -275   -90	
   65  -305  -305   -305  -105	
   70  -340  -340   -340  -120	
   80  -400  -400   -400  -150	
These values can also be found while editing in ‘help MOB_AC’.

Form:

More creature flags relating to the creature's form.
Syntax: form [flag]
  edible: Creatures body parts are edible
  poison: Creatures body parts are poisonous
  instant_decay: Mob vanishes after death
  cold_blood: Cannot be seen by infravision
  magical     biped       mammal
  animal      centaur     bird
  sentient    insect      reptile
  undead      spider      snake
  construct   crustacean  dragon
  mist        worm        amphibian
  intangible  blob        fish

Parts:

The parts determine what body parts a mobile produces when it dies. In
general, these will be race depeendent, but you can add them if the mob is
lacking.
Syntax: parts [head] [arms] [legs] [heart] [brains] [guts] [hands] [feet]
[fingers] [ear] [eye] [long_tongue] [eyestalks] [tentacles]
[fins] [wings] [tail] [claws] [fangs] [horns] [scales] [tusks]

Immunities:

The mobs immunities field determines what spells/damage types it will be
immune to. As a general note, important mobs that you don't want people
moving around should be immune to summoning and charming.
Syntax: imm [immunity type]
The following are allowable immunities:
  summon  fire        energy     silver
  charm   cold        mental     iron
  magic   lightning   disease    tame
  weapon  acid        drowning   blind
  bash    poison      light
  pierce  negative    sound
  slash   holy        wood

Resistance:

The mob's resistances determine which spells/damage types it is resistant to.
Syntax: res [resistance type] [amount]
See the list of IMMUNITIES above for acceptable resistances.

Vulnerabilities:

The mob's vulnerabilities determine which spells/damage type it is
vulnerable to.
Syntax: vuln [vuln type] [amount]
See the list of IMMUNITIES above for acceptable vulnerabilities.

Offense:

The offense fields help determine your mob's combat behavior.
Syntax: off [type]
 The following are acceptable offense types: 
  area_attack: Mob will attack and do damage to all players that attack it. 
  backstab 
  bash: Mob will bash in combat. Avoid this, give them the skill instead.
  berserk: Mob will berserk periodically (gives +hp/dam/hit) 
  disarm: Mob will attempt to disarm in combat. Avoid this, give them the skill instead. 
  dodge: Mob will dodge in combat: NOTE: High level mobs without this are wimps 
  fade: not enabled 
  fast: Mob is affected by haste. Do not use this to replace third attack, use
   mpaddskill $i 188 80 in a load_prog 100 for the same effect without haste.
  kick: Mob kicks in combat. Avoid this, give them the skill instead.
  dirt_kick: Mob dirt kicks in combat. Avoid this, give them the skill instead.
  parry: Mob parries in combat. NOTE: High level mobs without this are wimps 
  rescue: Not enabled 
  tail: Mob uses a tail attack in combat 
  trip: Mob trips in combat. Avoid this, give them the skill instead. 
  crush: 
  assist_all: Mobile helps all other mobiles in combat 
  assist_align: Mob will assist others of its align 
  assist_race: Mob will assist others of its race 
  assist_players: Mobil will assist players (by race/align) 
  assist_guard: mobile will act as a cityguard 
  assist_vnum: Mob will assist its own vnum 
  assist_bouncer: Mob will be a bouncy, bouncy ball.
Note: You will note that many of these off bits mimic skills. With
the exception of defenses, you generally do not want to be using
off bits that mimic skills-- this will cause the mob to execute them regardless
of any fight progs, or, more importantly, of lag states. This is what causes
a mob that disarms you one round, bashes the next, then trips the round right
after. Give them the skills instead.

Size:

This determines the size of the mob. The size will affect things such as
a mob's ability to bash or be bashed, as well as certain spells (such as
density).
Syntax: size [value]
Acceptable size values are as follows:
tiny: rodents, very small creatures
small: Large birds to halfling sized.
medium: roughly human sized
large: Ogre sized
huge: Giants, small dragons, wyverns
giant: Ancient dragons, titans, etc.
Note: Certain races will set their own size field.

Material:

The mob's material is completely irrelevant, and never used.

Starting Position:

This determines what position a mob begins in, after being reset.
Syntax: position start [type]
The following are acceptable positions: sleeping resting sitting standing

Default Position:

The default position is the position a mobile returns to after a fight.
Syntax: position default [type]
Acceptable positions are the same as the starting positions listed above.

Wealth:

Syntax: wealth [percentage amount]
A mob's wealth determines how much money it is carrying when it resets. Use
the following table to help determine an appropriate amount:
0-10% Begger
20-30% Serf
40-50% Peasant
70-90% Yeoman, farer, rural craftsman
100% Average citizen of a town
130-150% Average well-off citizen (upstanding guildmember, master craftsman, etc)
160-180% Wealthy citizen of a city
200-250% Shopkeeper in a city
220-230% Minor noble
250-270% Mid-tier noble
270-290% Major noble (duke, etc)
300% Ruler of a city
400% Leader of a republic, king, other head of state
450% Epic hero
500-600% Adult Elemental Dragon
700-800% Elder Elemental Dragon
900-1000% Being of unique or demigod-like status
Note: Be extremely careful with how much gold a mobile is given, as excessive
gold supply can throw off the balance of the game.

Short Desc:

Syntax: short [string]
The short description is basically the name of the mob that players see when
they interact with it. The short is, for example, what you see when you attack
it. I.e.: "Your slash decimates a hen! A hen's peck does Unspeakable Things to
you!" The mob's short would be "a hen".
Important note: If the mob's short is just a proper name, it should be
capitalized. If it is an article and a name ("a hen"), the article should not
be capitalized.

Long Desc:

Syntax: long [string] The long description is what players see about a mob when
they look in the room where it is. For example, suppose a hen were in a room. A
player who looked might see: A hen is here, pecking for worms.
Important note: Your long description should always be a complete sentence,
capitalized and punctuated correctly. Also make sure that it is only one line,
as longs that wrap look really terrible.

Special Functions:

Syntax: spec [function]
As a sort of precursor to mob progs, there exist special functions, which are
basically hard-coded behavior sets for mobs. They still have their uses.
 The following are permissible special function names:
 spec_breath_any: Breathes any and all breath weapons (Note: breath weapons
  are hp dependent in their damage) 
 spec_breath_acid: Breathes acid</i>
 spec_breath_fire: Breathes fire</i>
 spec_breath_frost: Breathes frost</i>
 spec_breath_gas: Breathes gas</i> 
 spec_breath_lightning: Breathes lightning 
 spec_cast_air: Mobile casts air spells. 
 spec_ cast_earth: " " earth spells. 
 spec_cast_fire: " " fire spells. 
 spec_ cast_spirit: " " spirit spells. 
 spec_cast_void: " " void spells. 
 spec_cast_water: " " water spells. 
 spec_executioner: Mobile will attack criminals, as per cityguards, etc. 
 spec_thief: Will steal gold from characters 
 spec_ poison: Poisons player 
 spec_ fido: Stock rom, do not use 
 spec_guard: Stock rom 
 spec_janitor: Stock rom 
 spec_mayor: Stock rom 
 spec_nasty: Stock rom 
 spec_troll_member: Stock rom 
 spec_ogre_member: Stock rom 
 spec_ patrolman: Stock rom 
 spec_cast_adept, spec_cast_cleric, spec_cast_undead, spec_cast_mage and
 spec_cast_judge: Stock rom spell casting. Do not use. 

Shopkeepers:

You can make mobs into shopkeerers, who will sell items reset into their
inventory. (See the help under resets in REDIT if you need to.) To make the
mob into a shop, you first set the shop hours.
Syntax: shop hours [open time] [close time]
Time is measured in military time, and goes from 0-23.
Once you've made the shop, you can also set the markup on items sold, and the
markdown on items bought.
Syntax: shop profit [value]
The markup for the purchaser generally a value greater than 100. (It represents
how much the price gets jacked up if you want to buy). The markdown for the
seller is generally < 100, and represents how much your item's base value is
depreciated, should you want to sell things to the shoppie that he wants to buy.
You can set the maximum item price that the shopkeeper can buy. This works as
long as the field is > 0.
Syntax: shop maxbuy [value]
Next, you can set the type of things the shop buys. Shops can buy up to four
different types of things. Syntax: shop type [0-4] [item]
 The following are acceptable item types for the shop to buy: 
  light      furniture       npccorpse    gem
  scroll     trash           fountain     jewelry
  wand       container       pill         jukebox
  staff      drinkcontainer  protect      instrument
  weapon     key             map          net
  treasure   food            portal
  armor      money           warpstone
  potion     boat            roomkey
To remove a type of item that the shop buys, do as follows:
Syntax: shop delete <0-4>

Shop Pets:

* To make a shopkeeper sell pets, flag the room the shopkeeper is in as 'pet_shop'.
* Then use the room with the next highest vnum to load the pet mobs in.
(For example, if your pet shopkeeper is in room 2010, load the mobs in 2011).
* The pet mobs need to be flagged 'pet'
* The pet mob room will generally need to be made inaccessible (via nowhere,
nogate_to, etc).
* A verb_prog handling the list may need to be created, for the shopkeeper.


Guildmasters:

Syntax: guild [add|delete] [ability name]
You need to specifiy each ability a guildmaster (or other mob) teachers.
The mob should have the "practice" act flag, and may need the "train"
and "gain" act flags also, if it is a standard city guildmaster.

Factions:

Syntax: faction [number]
Type "flist" to see the various factions. You can set up new factions
and also put mobs into factions via fedit.