<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Custom Mobs</title><link>https://sourceforge.net/p/hercules/wiki/Custom%2520Mobs/</link><description>Recent changes to Custom Mobs</description><atom:link href="https://sourceforge.net/p/hercules/wiki/Custom%20Mobs/feed" rel="self"/><language>en</language><lastBuildDate>Mon, 20 Feb 2023 05:04:32 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/hercules/wiki/Custom%20Mobs/feed" rel="self" type="application/rss+xml"/><item><title>Custom Mobs modified by Brynner</title><link>https://sourceforge.net/p/hercules/wiki/Custom%2520Mobs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -114,28 +114,37 @@
 **_ViewRange_** |  Maximum Skill Range  
 **_ChaseRange_** |  Sight limit for mobs. If set to 1000 or beyond, mobs will
 follow you all over the map.  
-**_Size_** |  0 if its Small, 1 if its Medium, 2 if its Large
-
-or Small=Size_Small, Medium=Size_Medium, Large=Size_Large  
-  
-**_Race_** |  0=formless, 1=undead, 2=animal, 3=plant, 4=insect, 5=fish,
-6=demon, 7=demihuman, 8=angel, 9=dragon.
-
-or formless=RC_Formless, undead=RC_Undead, animal=RC_Brute, plant=RC_Plant,
-fish=RC_Fish, demihuman=RC_DemiHuman, angel=RC_Angel, dragon=RC_Dragon.  
-  
+**_Size_** |  |  0 |  Small |  Size_Small  
+---|---|---  
+1 |  Medium |  Size_Medium  
+2 |  Large |  Size_Large  
+**_Race_** |  |  0 |  formless |  RC_Formless  
+---|---|---  
+1 |  undead |  RC_Undead  
+2 |  animal |  RC_Brute  
+3 |  plant |  RC_Plant  
+4 |  insect |  RC_Insect  
+5 |  fish |  RC_Fish  
+6 |  demon |  RC_Demon  
+7 |  demihuman |  RC_DemiHuman  
+8 |  angel |  RC_Angel  
+9 |  dragon |  RC_Dragon  
 **_Element_** |  This is a two-digit number representing the rank (level) and
 element of the mob.  

 **_Element(Type)_** |  Element Type of mob as mentioned below.  
-|  | Neutral | Water | Earth | Fire | Wind | Poison | Holy | Shadow | Ghost |
-Undead  
----|---|---|---|---|---|---|---|---|---|---  
-Type | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9  
-  
-or "Ele_Name" (Neutral, Water, Earth, Fire, Wind, Poison, Holy, Shadow, Ghost,
-Undead.)
-
+|  0 |  Ele_Neutral  
+---|---  
+1 |  Ele_Water  
+2 |  Ele_Earth  
+3 |  Ele_Fire  
+4 |  Ele_Wind  
+5 |  Ele_Poison  
+6 |  Ele_Holy  
+7 |  Ele_Dark  
+8 |  Ele_Ghost  
+9 |  Ele_Undead  
+  



&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brynner</dc:creator><pubDate>Mon, 20 Feb 2023 05:04:32 -0000</pubDate><guid>https://sourceforge.nete06cb893bfec9fe819c5de40f3874b963024a22e</guid></item><item><title>Custom Mobs modified by Brynner</title><link>https://sourceforge.net/p/hercules/wiki/Custom%2520Mobs/</link><description>&lt;div class="markdown_content"&gt;&lt;div class="toc"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#intro"&gt;Intro&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#gettings-started"&gt;Gettings Started&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#database-structure"&gt;Database Structure&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#making-it-visible"&gt;Making it visible&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#server-side"&gt;Server Side&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#client-side"&gt;Client Side&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#datainfonpcidentitylua"&gt;datainfo/npcidentity.lua&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#datainfojobnamelua"&gt;datainfo/jobname.lua&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#your-mob-in-other-files"&gt;Your mob in other files&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#dead-branch"&gt;Dead Branch&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#bloody-branch"&gt;Bloody Branch&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#poring-box"&gt;Poring Box&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#monster-racial-groups"&gt;Monster Racial Groups&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#red-pouch-of-surprise"&gt;Red Pouch of Surprise&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#spawn-points"&gt;Spawn Points&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#adding-skills"&gt;Adding Skills&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#making-it-talk"&gt;Making it talk!&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h1 id="intro"&gt;Intro&lt;/h1&gt;
&lt;p&gt;You can have up to 10,000 mob IDs. This guide was written without testing on&lt;br/&gt;
Git; use at your own discretion. Well, its pretty easy if you do it correctly&lt;br/&gt;
and go step by step without rushing.&lt;/p&gt;
&lt;h1 id="gettings-started"&gt;Gettings Started&lt;/h1&gt;
&lt;h2 id="database-structure"&gt;Database Structure&lt;/h2&gt;
&lt;p&gt;Let's take a look at the structure of the entries in mob_db.conf:&lt;/p&gt;
&lt;p&gt;Note: If you're adding custom mobs, it's better to add them to mob_db2.conf&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;{
    // =================== Mandatory fields ===============================
    Id: ID                                (int)
    SpriteName: "SPRITE_NAME"             (string)
    Name: "Mob name"                      (string)
    // =================== Optional fields ================================
    Lv: level                             (int, defaults to 1)
    Hp: health                            (int, defaults to 1)
    Sp: mana                              (int, defaults to 0)
    Exp: basic experience                 (int, defaults to 0)
    JExp: job experience                  (int, defaults to 0)
    AttackRange: attack range             (int, defaults to 1)
    Attack: [attack1, attack2]            (int, defaults to 0)
    Def: defence                          (int, defaults to 0)
    Mdef: magic defence                   (int, defaults to 0)
    Stats: {
        Str: strength                 (int, defaults to 0)
        Agi: agility                  (int, defaults to 0)
        Vit: vitality                 (int, defaults to 0)
        Int: intelligence             (int, defaults to 0)
        Dex: dexterity                (int, defaults to 0)
        Luk: luck                     (int, defaults to 0)
    }
    ViewRange: view range                 (int, defaults to 1)
    ChaseRange: chase range               (int, defaults to 1)
    Size: size                            (int, defaults to 1)
    Race: race                            (int, defaults to 0)
    Element: (type, level)
    Mode: {
        CanMove: true/false           (bool)
        Looter: true/false            (bool)
        Aggressive: true/false        (bool)
        Assist: true/false            (bool)
        CastSensorIdle:true/false     (bool)
        Boss: true/false              (bool)
        Plant: true/false             (bool)
        CanAttack: true/false         (bool)
        Detector: true/false          (bool)
        CastSensorChase: true/false   (bool)
        ChangeChase: true/false       (bool)
        Angry: true/false             (bool)
        ChangeTargetMelee: true/false (bool)
        ChangeTargetChase: true/false (bool)
        TargetWeak: true/false        (bool)
    }
    MoveSpeed: move speed                 (int, defaults to 0)
    AttackDelay: attack delay             (int, defaults to 4000)
    AttackMotion: attack motion           (int, defaults to 2000)
    DamageMotion: damage motion           (int, defaults to 0)
    MvpExp: mvp experience                (int, defaults to 0)
    MvpDrops: {
        AegisName: chance             (string: int)
        ...
    }
    Drops: {
        AegisName: chance         (string: int)
        ...
    }

},
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Fields&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Id&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;ID of the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;SpriteName&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;This first name is the DB name. When you use&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a class="user-mention" href="/u/spawn/"&gt;@spawn&lt;/a&gt;/@summon and you know the name of the mob, but not the ID, type this&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;name instead. Try making the normal name the same as this so you wont get&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;confused.&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Name&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;This is the name the server shows.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Lv&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Level of the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Hp&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;HP of the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Sp&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;SP of the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Exp&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Exp granted by the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;JExp&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Job exp granted by the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;AttackRange&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Range of the mob attack. If set to 1 or 2, it will melee.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3 or more than 3 will set it to ranged&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Attack1&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Affects ATK of the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Attack2&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Affects MATK of the mob&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Def&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Defense of the mob (Tip: 100 def = Invulnerability below 8K&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;attack. Watch out, only melee/ranged attacks, but generally direct hits&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;attacks are drastically reduced. Setting this high enough may make monks&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;pretty cheap to level because of of Psychic Wave/Occult Impact/Investigate.)&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;MDef&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Magic Defense of the mob (Hint: 100 mdef = golden thief bug&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;effect below 9K magic attack. It's for all magic-using skills.)&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Stats&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;All Stats of mobs belongs to this block.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Description&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;---&lt;/td&gt;
&lt;td&gt;---&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Str&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Strength of the mob. This also affects its ATK.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Agi&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Agility of the mob. This also affects the mob flee rate.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Vit&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Vitality of the mob. This affects the duration of stun status.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Int&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Intelligence of the mob. This also affects its MATK.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Dex&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Dexterity of the mob. This also affects the mob hit rate.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Luk&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Luck of the mob. This also defines the mob perfect dodge/lucky&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;flee/perfect flee/lucky dodge rate.&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;ViewRange&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Maximum Skill Range&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;ChaseRange&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Sight limit for mobs. If set to 1000 or beyond, mobs will&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;follow you all over the map.&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;em&gt;Size&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;0 if its Small, 1 if its Medium, 2 if its Large&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;or Small=Size_Small, Medium=Size_Medium, Large=Size_Large  &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Race&lt;/em&gt;&lt;/strong&gt; |  0=formless, 1=undead, 2=animal, 3=plant, 4=insect, 5=fish,&lt;br/&gt;
6=demon, 7=demihuman, 8=angel, 9=dragon.&lt;/p&gt;
&lt;p&gt;or formless=RC_Formless, undead=RC_Undead, animal=RC_Brute, plant=RC_Plant,&lt;br/&gt;
fish=RC_Fish, demihuman=RC_DemiHuman, angel=RC_Angel, dragon=RC_Dragon.  &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Element&lt;/em&gt;&lt;/strong&gt; |  This is a two-digit number representing the rank (level) and&lt;br/&gt;
element of the mob.  &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Element(Type)&lt;/em&gt;&lt;/strong&gt; |  Element Type of mob as mentioned below.&lt;br/&gt;
|  | Neutral | Water | Earth | Fire | Wind | Poison | Holy | Shadow | Ghost |&lt;br/&gt;
Undead&lt;br/&gt;
---|---|---|---|---|---|---|---|---|---|---&lt;br/&gt;
Type | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9  &lt;/p&gt;
&lt;p&gt;or "Ele_Name" (Neutral, Water, Earth, Fire, Wind, Poison, Holy, Shadow, Ghost,&lt;br/&gt;
Undead.)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Element(Level)&lt;/em&gt;&lt;/strong&gt; |  Element level of mob from (1-4).  &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Mode&lt;/em&gt;&lt;/strong&gt; |  This defines the mob behaves.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;MoveSpeed&lt;/em&gt;&lt;/strong&gt; |  Walking speed of the mob. 1 is the fastest, 1000 is the&lt;br/&gt;
lowest. 100 is the normal walking speed.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;AttackDelay&lt;/em&gt;&lt;/strong&gt; |  ADelay= Attack Delay, also known as ASPD. This one will&lt;br/&gt;
change the aspd of the mob. The lower the faster, but don't make it too low or&lt;br/&gt;
it will lag when mobbed by several of these.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;AttackMotion&lt;/em&gt;&lt;/strong&gt; |  Attack animation motion. Lower this value and the mob's&lt;br/&gt;
attack will be displayed in higher fps (making it shorter, too) (Thanks to&lt;br/&gt;
Wallex for this)&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;DamageMotion&lt;/em&gt;&lt;/strong&gt; |  Damage animation motion, same as aMotion but used to&lt;br/&gt;
display the "I am hit" animation. Coincidentally, this same value is used to&lt;br/&gt;
determine how long it is before the mob/player can move again. Endure is&lt;br/&gt;
dMotion = 0, obviously.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;MvpExp&lt;/em&gt;&lt;/strong&gt; |  The MVP exp the mob gives when it is defeated (to the player&lt;br/&gt;
who got the MVP reward) (This exp is a percentage of the exp the monster&lt;br/&gt;
gives.)&lt;br/&gt;
The following fields are for drops and drop rates. Remember that these are in&lt;br/&gt;
percentages; i.e. 100 = 100%  &lt;strong&gt;&lt;em&gt;MvpDrops&lt;/em&gt;&lt;/strong&gt; |  The MvP Drops goes here,&lt;br/&gt;
format is:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;AegisName&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Chance&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Example:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;Poring_Card&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1000&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Drops&lt;/em&gt;&lt;/strong&gt; |  The Normal Drops goes here, format is:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;AegisName&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Chance&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Example:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;Poring_Card&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1000&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h2 id="making-it-visible"&gt;Making it visible&lt;/h2&gt;
&lt;h3 id="server-side"&gt;Server Side&lt;/h3&gt;
&lt;p&gt;If you've got a sprite and you're happy with it, then you can skip this part.&lt;br/&gt;
If you would like to make your mob look like another mob, or even a player,&lt;br/&gt;
then you need to take a look at {{git|db/mob_avail.txt|full}}&lt;/p&gt;
&lt;p&gt;For normal mobs, you can use the data that's already in the file as an example&lt;br/&gt;
to work on:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;// mob_id,sprite_id,equip #&lt;/span&gt;
&lt;span class="c1"&gt;// iRO Halloween Event 2008&lt;/span&gt;
&lt;span class="c1"&gt;//3000,1015,0&lt;/span&gt;
&lt;span class="c1"&gt;//3001,1036,0&lt;/span&gt;
&lt;span class="c1"&gt;//3002,1298,0&lt;/span&gt;

&lt;span class="c1"&gt;// iRO Halloween Event 2009&lt;/span&gt;
&lt;span class="c1"&gt;//3014,1179,0&lt;/span&gt;
&lt;span class="c1"&gt;//3015,1272,0&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;However, if you would like to make your mob look like a character, you need to&lt;br/&gt;
add more options:&lt;br/&gt;
// Valaris&lt;/p&gt;
&lt;p&gt;MobID |  SpriteID |  Sex |  Hair |  Hair_Color |  Weapon |  Shield |  Head_Top&lt;br/&gt;
|  Head_Middle |  Head_Bottom |  Option |  Dye_Color&lt;br/&gt;
---|---|---|---|---|---|---|---|---|---|---|---&lt;br/&gt;
1900, |  4013, |  1, |  1, |  1, |  1254, |  0, |  67, |  12, |  54, |  16, |&lt;br/&gt;
1  &lt;/p&gt;
&lt;p&gt;You will need to use the Item ID for your mob's weapon and shield instead of&lt;br/&gt;
the View ID of the item. Doing so may have undesirable effects.&lt;/p&gt;
&lt;p&gt;A more in-depth look at each value:  &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;MobID&lt;/em&gt;&lt;/strong&gt; : This is your mob ID.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;SpriteID&lt;/em&gt;&lt;/strong&gt; : The Job number you want it to look like. They are:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Job_Novice 0
Job_Swordman 1
Job_Mage 2
Job_Archer 3
Job_Acolyte 4
Job_Merchant 5
Job_Thief 6
Job_Knight 7
Job_Priest 8
Job_Wizard 9
Job_Blacksmith 10
etc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;They can also be found on {{git|db/const.txt}} file.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Sex&lt;/em&gt;&lt;/strong&gt; : 0 for female, 1 for male&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Hair&lt;/em&gt;&lt;/strong&gt; : The mob hair style, goes from 1 to 23&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Hair_Color&lt;/em&gt;&lt;/strong&gt; : The mob hair color. Goes from 0 to 8 or 10, but it depends&lt;br/&gt;
on the server's palette files.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Weapon&lt;/em&gt;&lt;/strong&gt; :The ID of the Weapon you want. See &lt;a class="" href="../Custom
Weapons"&gt;Custom_weapons&lt;/a&gt; for it. Also read at the end of the pre if you cant find the&lt;br/&gt;
headgear you want.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Shield&lt;/em&gt;&lt;/strong&gt; : Same as above&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Head_Top&lt;/em&gt;&lt;/strong&gt; : Same as above&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Head_Middle&lt;/em&gt;&lt;/strong&gt; : Same as above&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Head_Bottom&lt;/em&gt;&lt;/strong&gt; : Same as above&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;Option&lt;/em&gt;&lt;/strong&gt; : this option parameter will make the mob change its status, as&lt;br/&gt;
well as give them carts, pecopecos, and falcons. In other words, this will&lt;br/&gt;
change the visual effects of your mobs. The options are these*:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; 1 Sight             32 Peco Peco riding   2048 Orc Head
 2 Hide              64 GM Perfect Hide    4096 Wedding Sprites
 4 Cloak            128 Level 2 Cart       8192 Ruwach
 8 Level 1 Cart     256 Level 3 Cart
16 Falcon           512 Level 4 Cart
                   1024 Level 5 Cart
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Dye_Color&lt;/em&gt;&lt;/strong&gt; : Same as hair color. It goes from 0 to 77&lt;/p&gt;
&lt;h3 id="client-side"&gt;Client Side&lt;/h3&gt;
&lt;p&gt;For your mob to exist in the client, you need to add it to a few &lt;span&gt;[Lua]&lt;/span&gt;&lt;br/&gt;
files.&lt;/p&gt;
&lt;h4 id="datainfonpcidentitylua"&gt;datainfo/npcidentity.lua&lt;/h4&gt;
&lt;p&gt;Example at the end of the file:  &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;    ["JT_4_F_TAEKWON"] = 644,
    ["JT_4_F_SWORDMAN"] = 645,
    -- Custom Mobs
    ["JT_JACOB"] = 2500,
    ["JT_AQUARING"] = 2600
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;The number after the = sign denotes the mob's database ID number. Other&lt;br/&gt;
sprites in this file have their view ID e.g. &lt;a class="" href="../NPC
sprite%20number"&gt;Adding_a_Script#Client_Side&lt;/a&gt;.&lt;/p&gt;
&lt;h4 id="datainfojobnamelua"&gt;datainfo/jobname.lua&lt;/h4&gt;
&lt;p&gt;Example at the end of the file:  &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;    [jobtbl.JT_GIBBET] = "GIBBET",
    [jobtbl.JT_DULLAHAN] = "DULLAHAN",
    [jobtbl.JT_LOLI_RURI] = "LOLI_RURI",
    [jobtbl.JT_DISGUISE] = "DISGUISE",
    -- Custom Mobs
    [jobtbl.JT_JACOB] = "jacobmob",
    [jobtbl.JT_AQUARING] = "aquaring"
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;In this file, the value after the = sign is the name of the actual sprite in&lt;br/&gt;
your data folder/&lt;span&gt;[GRF]&lt;/span&gt;&lt;/p&gt;
&lt;h2 id="your-mob-in-other-files"&gt;Your mob in other files&lt;/h2&gt;
&lt;h3 id="dead-branch"&gt;Dead Branch&lt;/h3&gt;
&lt;p&gt;Adding your mob to {{git|db/pre-re/mob_branch.txt}} or&lt;br/&gt;
{{git|db/re/mob_branch.txt}} will allow Dead Branches to summon it.&lt;/p&gt;
&lt;h3 id="bloody-branch"&gt;Bloody Branch&lt;/h3&gt;
&lt;p&gt;Adding your mob to {{git|db/pre-re/mob_boss.txt}} or&lt;br/&gt;
{{git|db/re/mob_boss.txt}} will allow Bloody Branches to summon it.&lt;/p&gt;
&lt;h3 id="poring-box"&gt;Poring Box&lt;/h3&gt;
&lt;p&gt;Adding your mob to {{git|db/pre-re/mob_poring.txt}} or&lt;br/&gt;
{{git|db/re/mob_poring.txt}} will make your mob spawnable via the Poring Box.&lt;/p&gt;
&lt;h3 id="monster-racial-groups"&gt;Monster Racial Groups&lt;/h3&gt;
&lt;p&gt;Adding your mob to {{git|db/pre-re/mob_race2_db.txt}} or&lt;br/&gt;
{{git|db/re/mob_race2_db.txt}} will add your mob to a &lt;a class="" href="../Racial
Group"&gt;Racial_Group&lt;/a&gt;. Guardians, Goblins and other mobs are members of particular Racial&lt;br/&gt;
Groups.&lt;/p&gt;
&lt;h3 id="red-pouch-of-surprise"&gt;Red Pouch of Surprise&lt;/h3&gt;
&lt;p&gt;Adding your mob to {{git|db/mob_pouch.txt}} will make your mob spawnable via&lt;br/&gt;
the Red Pouch of Surprise.&lt;/p&gt;
&lt;h2 id="spawn-points"&gt;Spawn Points&lt;/h2&gt;
&lt;p&gt;Let's look at the syntax of a mob spawn point:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&amp;amp;lt;map name&amp;amp;gt;,&amp;amp;lt;x1&amp;amp;gt;,&amp;amp;lt;y1&amp;amp;gt;,&amp;amp;lt;x2&amp;amp;gt;,&amp;amp;lt;y2&amp;amp;gt;%TAB%monster%TAB%&amp;amp;lt;monster name&amp;amp;gt;%TAB%&amp;amp;lt;mob id&amp;amp;gt;,&amp;amp;lt;amount&amp;amp;gt;,&amp;amp;lt;delay1&amp;amp;gt;,&amp;amp;lt;delay2&amp;amp;gt;,&amp;amp;lt;event&amp;amp;gt;{,&amp;amp;lt;mob size&amp;amp;gt;,&amp;amp;lt;mob ai&amp;amp;gt;}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Only the things between&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;map name&lt;/em&gt;&lt;/strong&gt; : Name of the map. Use /where along with the following&lt;br/&gt;
coordinates&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;x1&lt;/em&gt;&lt;/strong&gt; : X axis coordinates. It start from the left side of the map, and the&lt;br/&gt;
higher it gets, the more it gets closer to the right side of the map.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;y1&lt;/em&gt;&lt;/strong&gt; : Y axis coordinates. It start from the bottom, and the higher it&lt;br/&gt;
gets, the more it gets closer to the top of the map.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;x2&lt;/em&gt;&lt;/strong&gt; : X axis coordinates. It start from the left side of the map, and the&lt;br/&gt;
higher it gets, the more it gets closer to the right side of the map.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;y2&lt;/em&gt;&lt;/strong&gt; : Y axis coordinates. It start from the bottom, and the higher it&lt;br/&gt;
gets, the more it gets closer to the top of the map.&lt;br/&gt;
These 4 coordinates will make a spawn area where the mob will spawn, however&lt;br/&gt;
it won't limit its movement, so lets say you put 120,150 on the first pair,&lt;br/&gt;
and 130,160 pair- That's a 10x10 cell area where the mob will spawn randomly.&lt;br/&gt;
If you want the mob to spawn at a random point, use 0 for all the coordinates.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;monster name&lt;/em&gt;&lt;/strong&gt; : The name of the mob you want to be shown (using --ja-- in&lt;br/&gt;
place of a name will display the "Japanese Name" from your database).&lt;br/&gt;
You can specify a custom level to use for the mob different from the one of&lt;br/&gt;
the database by adjoining the level after the name with a comma. eg:&lt;br/&gt;
"Poring,50" for a name will spawn a monster with name Poring and level 50.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;mob id&lt;/em&gt;&lt;/strong&gt; : The ID of your mob.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;amount&lt;/em&gt;&lt;/strong&gt; : How many mobs you want to be spawned.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;delay1&lt;/em&gt;&lt;/strong&gt; : Minimum amount of time before a monster respawns.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;delay2&lt;/em&gt;&lt;/strong&gt; : Maximum amount of time before a monster respawns.&lt;br/&gt;
delay1 and delay2 are used to define the time it takes for a monster to&lt;br/&gt;
respawn; in milliseconds. Normal mobs usually have 0 (Instant Respawn), while&lt;br/&gt;
MVPs have 7200000 (2 hours). If delay2 is greater than delay 1, the mob won't&lt;br/&gt;
respawn until the map server restarts.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;event&lt;/em&gt;&lt;/strong&gt; : Script event to be executed when the mob is killed. The event&lt;br/&gt;
must be in the form "NPCName::OnEventName" to execute, and the event name&lt;br/&gt;
label should start with "On". As with all events, if the NPC is an on-touch&lt;br/&gt;
NPC, the player who triggers the script must be within 'trigger' range for the&lt;br/&gt;
event to work.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;size&lt;/em&gt;&lt;/strong&gt; : Optional. Size can be 0 (medium), 1 (small), or 2 (big).&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;ai&lt;/em&gt;&lt;/strong&gt; : Optional. AI can be 0 (default), 1 (attack/friendly), 2 (sphere), 3&lt;br/&gt;
(flora), or 4 (zanzou).&lt;/p&gt;
&lt;h2 id="adding-skills"&gt;Adding Skills&lt;/h2&gt;
&lt;p&gt;Lets look at the syntax of a mob skill:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;MOB_ID&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;unused&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;dummy&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;character&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;sequence&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;information&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;only&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;STATE&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;SKILL_ID&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;SKILL_LV&lt;/span&gt;,
&lt;span class="nv"&gt;rate&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10000&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;casttime&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;delay&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;cancelable&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;target&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;condition&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;type&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;condition&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;value&lt;/span&gt;,
&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;emotion&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;&lt;em&gt;*_NOTE: I had to cut the mob_avail structure so it could fit. It's a whole&lt;br/&gt;
line, not 3 lines. _ &lt;/em&gt;&lt;/strong&gt;*&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;MOD_ID&lt;/em&gt;&lt;/strong&gt; : your mob ID.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;an unused.. etc etc&lt;/em&gt;&lt;/strong&gt; : you can put any text here you want, its just for&lt;br/&gt;
information and to know what does this do.&lt;em&gt; tip tip&lt;/em&gt;You will see inside this&lt;br/&gt;
file things like Poring@TF_POISON. Well, you could use this too. It would tell&lt;br/&gt;
you: mob_name@DB_Skill_Name. &lt;em&gt;tip tip&lt;/em&gt;&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;state&lt;/em&gt;&lt;/strong&gt; : this is the state that the mob must accomplish before being able&lt;br/&gt;
to use this skill. The states are:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;any, idle (in standby), walk (in movement), attack, dead (on killed), loot, chase (following target),
counterattack.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;SKILL_ID&lt;/em&gt;&lt;/strong&gt; : The ID of the skill goes here. To look for one, go to your db&lt;br/&gt;
folder and open the skill_db.txt file. You will see a lot of lines like this&lt;br/&gt;
one:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="mf"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;weapon&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;SM_SWORD&lt;/span&gt;&lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="n"&gt;Œ&lt;/span&gt;&lt;span class="err"&gt;•&lt;/span&gt;&lt;span class="n"&gt;C&lt;/span&gt;&lt;span class="err"&gt;—&lt;/span&gt;&lt;span class="n"&gt;û&lt;/span&gt;&lt;span class="err"&gt;#&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;And the syntax is:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;id,range,hit,inf,pl,nk,max,list_num,castcancel,cast_defence_rate,inf2,maxcount,skill_type,blow_count
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;so, the ID of the SM_SWORD, which is the Swordman's Sword Mastery by the way,&lt;br/&gt;
is 2:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;**2** ,0,0,0,0,0,10,0,no,0,0,0,weapon,0 //SM_SWORD#Œ•C—û#
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;SKILL_LV&lt;/em&gt;&lt;/strong&gt; : You can put the skill level as high as you want. Though, 100&lt;br/&gt;
is usually as far as most skills go.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;rate&lt;/em&gt;&lt;/strong&gt; : How frequent will the mob use the skill.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;casttime&lt;/em&gt;&lt;/strong&gt; : Skill's cast time.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;delay&lt;/em&gt;&lt;/strong&gt; : How much time must pass before the skill can be used again, in&lt;br/&gt;
milliseconds.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;cancelable&lt;/em&gt;&lt;/strong&gt; : if the skill cast can be interrupted. Set it either &lt;strong&gt;yes&lt;/strong&gt;&lt;br/&gt;
or &lt;strong&gt;no&lt;/strong&gt;.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;a target&lt;/em&gt;&lt;/strong&gt; : the target of the skill. It can be:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;target (player), self (the mob itself), friend (slaves)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;a condition type&lt;/em&gt;&lt;/strong&gt; :a condition that also must be fulfilled before the mob&lt;br/&gt;
is able to use this skill. There are two kinds of conditions:&lt;/p&gt;
&lt;p&gt;1. Mob Condition:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;//conditions: (condition type) (value which specifies a condition value)&lt;/span&gt;
&lt;span class="c1"&gt;// always            unconditional&lt;/span&gt;
&lt;span class="c1"&gt;// myhpltmaxrate     when the mob's hp drops to a certain %&lt;/span&gt;
&lt;span class="c1"&gt;// mystatuson        If the mob has any abnormalities in status (condition value),&lt;/span&gt;
&lt;span class="c1"&gt;// mystatusoff       If the mob has ended any abnormalities in status (condition value),&lt;/span&gt;
&lt;span class="c1"&gt;// friendhpltmaxrate when the mobs' friend's hp drops to a certain %&lt;/span&gt;
&lt;span class="c1"&gt;// friendstatuson    If the friend has any abnormalities in status (condition value),&lt;/span&gt;
&lt;span class="c1"&gt;// friendstatusoff   If the friend has ended any abnormalities in status (condition value),&lt;/span&gt;
&lt;span class="c1"&gt;// attackpcgt        Attack PC becomes more than the  number of specification&lt;/span&gt;
&lt;span class="c1"&gt;// attackpcge        Attack PC becomes equal or more than the number of specification.&lt;/span&gt;
&lt;span class="c1"&gt;// slavelt           when the number of slaves is lower than the original number of specification.&lt;/span&gt;
&lt;span class="c1"&gt;// slavele           when the number of slaves is lower or equal than the original number of specification.&lt;/span&gt;
&lt;span class="c1"&gt;// closedattacked    when melee attacked (close range attack)&lt;/span&gt;
&lt;span class="c1"&gt;// longrangeattacked when long ranged attacked (like bows and far range weapons)&lt;/span&gt;
&lt;span class="c1"&gt;// skillused         when a skill is used on the mob&lt;/span&gt;
&lt;span class="c1"&gt;// casttargeted      when a target is in cast range.&lt;/span&gt;
&lt;span class="c1"&gt;// rudeattacked      when a target is rude attacked&lt;/span&gt;
&lt;span class="c1"&gt;// hiding            when a target is hidden *not implemented yet*&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;2. Target Conditions&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;// The character's state which can be specified to be a condition value&lt;/span&gt;
&lt;span class="c1"&gt;// by the statuson/statusoff system&lt;/span&gt;
&lt;span class="c1"&gt;//&lt;/span&gt;
&lt;span class="c1"&gt;// anybad      any type of state change&lt;/span&gt;
&lt;span class="c1"&gt;// stone       condition of being in stone state&lt;/span&gt;
&lt;span class="c1"&gt;// freeze      condition of being in frozen state&lt;/span&gt;
&lt;span class="c1"&gt;// stan        condition of being in stunned state&lt;/span&gt;
&lt;span class="c1"&gt;// sleep       condition of being in sleep state&lt;/span&gt;
&lt;span class="c1"&gt;// poison      condition of being in poisoned state&lt;/span&gt;
&lt;span class="c1"&gt;// curse       condition of being in cursed state&lt;/span&gt;
&lt;span class="c1"&gt;// silence     condition of being in silenced state&lt;/span&gt;
&lt;span class="c1"&gt;// confusion   condition of being in confusion state&lt;/span&gt;
&lt;span class="c1"&gt;// blind       condition of being in blind state&lt;/span&gt;
&lt;span class="c1"&gt;// hiding      condition of being in hidden state&lt;/span&gt;
&lt;span class="c1"&gt;// sight       condition of being in unhidden state&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;You can use only ONE of these conditions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;value1,value2,value3,value4,value5&lt;/em&gt;&lt;/strong&gt; : Basically they're only the same&lt;br/&gt;
but, when you want your mob using the same condition to trigger the skill, but&lt;br/&gt;
in different times, in case of the myhpltmaxrate when the hp is being&lt;br/&gt;
decreased, you can set them in a decreasing order, like:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="mf"&gt;80&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;60&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;40&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;20&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;10&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;emotion&lt;/em&gt;&lt;/strong&gt; : Lets your mob use an emotion, at random times. The emotion IDs&lt;br/&gt;
are:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;e_gasp 0
e_what 1
e_ho 2
e_lv 3
e_swt 4
e_ic 5
etc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;For more info, go to your {{git|db/const.txt}} file.&lt;/p&gt;
&lt;h2 id="making-it-talk"&gt;Making it talk!&lt;/h2&gt;
&lt;p&gt;Another add, suggested by chronocrosser_x and Fenrir Soarblade:&lt;/p&gt;
&lt;p&gt;Well, I believe you have seen some mobs on your server talking when certain&lt;br/&gt;
things happens. I never saw them again talking, dont know why but they used to&lt;br/&gt;
talk. I believe they still do it.&lt;/p&gt;
&lt;p&gt;Ok, go to your Data folder. If you look in the files, you should find a file&lt;br/&gt;
called monstertalktable. If there isnt, we will create one with Wordpad =3!.&lt;br/&gt;
If there is, open it with Wordpad, not Notepad.&lt;/p&gt;
&lt;p&gt;Once there, we will copy and paste this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&amp;amp;lt;?xml version="1.0" encoding="euc-kr" ?&amp;amp;gt;

&amp;amp;lt;enemy_monster_talk_table&amp;amp;gt;

&amp;amp;lt;mob_db_name_here&amp;amp;gt; 
  &amp;amp;lt;discovery&amp;amp;gt;&amp;amp;lt;/discovery&amp;amp;gt;
  &amp;amp;lt;attack&amp;amp;gt;&amp;amp;lt;/attack&amp;amp;gt;
  &amp;amp;lt;hp50&amp;amp;gt;&amp;amp;lt;/hp50&amp;amp;gt;
  &amp;amp;lt;hp25&amp;amp;gt;&amp;amp;lt;/hp25&amp;amp;gt;
  &amp;amp;lt;kill&amp;amp;gt;&amp;amp;lt;/kill&amp;amp;gt;
  &amp;amp;lt;dead&amp;amp;gt;&amp;amp;lt;/dead&amp;amp;gt;
&amp;amp;lt;/mob_db_name_here&amp;amp;gt; 
&amp;amp;lt;/enemy_monster_talk_table&amp;amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Well, lets see step by step =3!:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;&amp;lt; enemy_monster_talk_table&amp;gt;&lt;/em&gt;&lt;/strong&gt;: This is the start of the monster talk&lt;br/&gt;
table. Leave it as it is =3!&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; mob_db_name_here&amp;gt;&lt;/em&gt;&lt;/strong&gt;: The mob_db.txt first name you see, after the ID,&lt;br/&gt;
goes here =3! Its used to identify the mob&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; discovery&amp;gt;%TAB%Text Here%TAB%&amp;lt;/discovery&amp;gt;&lt;/em&gt;&lt;/strong&gt;: This is an event, same as&lt;br/&gt;
the one below. When a monster see you, this one will be displayed =3!&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; attack&amp;gt;%TAB%Text Here%TAB%&amp;lt;/attack&amp;gt;&lt;/em&gt;&lt;/strong&gt;: When a monster attacks you, this&lt;br/&gt;
one will be displayed O_O!&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; hp50&amp;gt;%TAB%Text Here%TAB%&amp;lt;/hp50&amp;gt;&lt;/em&gt;&lt;/strong&gt;: When a monster's hp is at 50%, this&lt;br/&gt;
one will be displayed o..o!&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; hp25&amp;gt;%TAB%Text Here%TAB%&amp;lt;/hp25&amp;gt;&lt;/em&gt;&lt;/strong&gt;: When a monster's hp is at 25%, this&lt;br/&gt;
one will be displayed x,x&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; kill&amp;gt;%TAB%Text Here%TAB%&amp;lt;/kill&amp;gt;&lt;/em&gt;&lt;/strong&gt;: When a monster kills a&lt;br/&gt;
character/player, this one will be displayed T~T!&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; dead&amp;gt;%TAB%Text Here%TAB%&amp;lt;/dead&amp;gt;&lt;/em&gt;&lt;/strong&gt;: When a monster dies by player hand,&lt;br/&gt;
this one will be displayed ^__^!&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; /mob_db_name_here&amp;gt;&lt;/em&gt;&lt;/strong&gt;: The same name of the mob_db.txt, the one after the&lt;br/&gt;
ID.&lt;br/&gt;
&lt;strong&gt;&lt;em&gt;&amp;lt; /enemy_monster_talk_table&amp;gt;&lt;/em&gt;&lt;/strong&gt;: Keep it like this.&lt;/p&gt;
&lt;p&gt;I never messed with this, but i think its ok =3! Also for those spaces other&lt;br/&gt;
than the messages spaces, use TAB, not the Space Bar for it ._.!&lt;/p&gt;
&lt;p&gt;&lt;span&gt;[Category:Database]&lt;/span&gt; &lt;span&gt;[Category:Data]&lt;/span&gt; &lt;span&gt;[Category:Customization]&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brynner</dc:creator><pubDate>Mon, 20 Feb 2023 05:01:02 -0000</pubDate><guid>https://sourceforge.net1bb3e4ad82c0a87ca2f98cdc6f1f605b31e704b8</guid></item></channel></rss>