This article is for reference purpose
The features described in this article are already implemented in the game. The article should describe how a certain aspect of the game currently works. You may of course edit this article to improve the description of the circumstances. Your opinions or improvement suggestions about the described aspects themself are of course appreciated, too. But please put these on the discussion page of this article to keep facts and fiction separated.
This page is outdated but still can be used as a reference. It is mainly copied from the [eathena.ws "Custom Mobs" wiki page]. Feel free to join our [IRC development channel] for further information❞
Server side
mob_db
You'll find the mob_db under following path: tmwa-server-data/world/map/db/mob_db.txt
The mob_db has following structure:
ID,Name,JName,LV,HP,SP,EXP,JEXP,Range1,ATK1,ATK2,DEF,MDEF,STR,AGI,VIT,INT,DEX,LUK,Range2,Range3,Scale, Race,Element,Mode,Speed,ADelay,aMotion,dMotion,Drop1id,Drop1per,Drop2id,Drop2per,Drop3id,Drop3per, Drop4id,Drop4per,Drop5id,Drop5per,Drop6id,Drop6per,Drop7id,Drop7per,Drop8id,Drop8per,Drop9id,Drop9per, DropCardid,DropCardper,MEXP,ExpPer,MVP1id,MVP1per,MVP2id,MVP2per,MVP3id,MVP3per
Note: In this wiki page it shows four lines, while it's one single line in the mob_db itself.
- ID: ID of the mob. It's not sure if the maximum possible number of IDs is 1,000 or 10,000.
- Name: This first name is the DB name. When you use @spawn/@summon and you know the name of the mob, but not the ID, type this name instead. Try making the normal name the same as this so you wont get confused.
- JName: This is the name the server shows. Actually it's always the same as Name.
- LV: Level of the mob.
- HP: HP of the mob.
- SP: SP of the mob.
- EXP: EXP granted by the mob, but this is calculated automatically. There are a few exceptions though.
- JEXP: Job EXP granted by the mob. They are calculated by a tool. Note: Adding tool info.
- Range1: Range of the mob attack. If set to 1 or 2, it will melee. 3 or more than 3 will set it to ranged.
- ATK1: Minimum attack of the mob.
- ATK2: Maximum attack of the mob. If no maximum attack defined here, the minimum attack will count as the absolute attack.
- DEF: Defence of the mob in % against melee and ranged attacks.
- MDEF: Magic Defence of the mob in %.
- STR: Strength of the mob. Note: Difference to ATK1/2?
- AGI: Agility of the mob. This also defines the mob flee rate.
- VIT: Vitality of the mob. Note: What does VIT? HP is separated.
- INT: Intelligence of the mob. This also defines its Magic Attack.
- DEX: Dexterity of the mob. This also defines its hit rate.
- LUK: Luck of the mob. This also defines its perfect dodge/lucky flee/perfect flee/lucky dodge rate. Note: What are perfect dodge, lucky flee and perfect flee?
- Range 2: Currently unused. It's said to be the maximum range for skills.
- Range 3: Currently unused. It's said to be the sight limit for mobs. If set to 1000 or beyond, mobs will follow you all over the map.
- Scale: "0" if its small, "1" if its medium and "2" if its large. Note: What is the effect of this then?
- Race: Defines the mob's race, see below:
- "0" = formless
- "1" = undead
- "2" = animal
- "3" = plant
- "4" = insect
- "5" = fish
- "6" = demon
- "7" = demihuman
- "8" = angel
- "9" = dragon
- Element: Defines the mob's element and the level of this element. The element number has 2 digits: xy, x = level of the element and y = element, see below:
- x = "2" for element level 1
- x = "4" for element level 2
- x = "6" for element level 3
- x = "8" for element level 4
- y = "0" for neutral element
- y = "1" for water element
- y = "2" for earth element
- y = "3" for fire element
- y = "4" for wind element
- y = "5" for poison element
- y = "6" for holy element
- y = "7" for shadow element
- y = "8" for ghost element
- y = "9" for undead element
-> e.g. for a level 3 fire mob grab the "6" for the element level 3 and the "3" for the fire element -> Element = 63.
- Mode: This defines the mob's behavior, see below:
Those are the basic numbers: canMove: 1 looter: 2 aggressive: 4 assist: 8 castsensor: 16 Boss: 32 plant: 64 canAttack: 128 detector: 256 (currently without any effect) changetarget: 512 (currently without any effect) You add them up to make mob, e.g those: Plant: 64 64 for plant (can't attack (128) and can't move (1)) Example: Mauve Plant, Cobalt Plant, etc. Immobile, peaceful mob: 128 128 for canAttack (but not aggressive (4) and not able to move (1)) Example: Pink Flower Standard, peaceful mob: 129 128 for canAttack + 1 for canMove Example: Fluffy Standard, aggressive mob: 133 128 for canAttack + 4 for aggressive + 1 for canMove Example: Snake Peaceful, assisting mob: 137 128 for canAttack + 8 for assist + 1 for canMove Example: Moggun Peaceful looter: 131 128 for canAttack + 2 for looter + 1 for canMove Example: Yellow Slime Aggressive looter: 135 128 for canAttack + 4 for aggressive + 2 for looter + 1 for canMove Example: Red Slime
-------------------------------------------------------------------- (updated until here)
- Speed: Walking speed of the mob. 1 is the fastest, 1000 is the lowest. 100 is the normal walking speed.
- ADelay: ADelay= Attack Delay, also known as ASPD. This one will change the aspd of the mob. The lower the faster, but don't make it too low or it will lag when mobbed by several of these.
- aMotion: Attack animation motion. Lower this value and the mob's attack will be displayed in higher fps (making it shorter, too) (Thanks to Wallex for this)
- dMotion: Damage animation motion, same as aMotion but used to display the "I am hit" animation. Coincidentally, this same value is used to determine how long it is before the mob/player can move again. Endure is dMotion = 0, obviously.(thanks to Wallex for this one)
From now on, the following fields are for drops and drops rate. Remember that these are in percentages, it means 100 = 100%
- Drop1ID: The Item ID of the drop goes here
- Drop1per: the rate of being dropped goes here
Same counts for Drop2ID & Drop2per, Drop3ID & Drop3per, etc.
As an add, there are a field for Drop Card:
DropCardid: ID of a card or item. You can make this mob drop another mob's card, even.
DropCardper: The chance of the card being dropped goes ere.
MVP exp: This exp is a percentage of the exp the monster gives.
MEXP: The MVP exp the mob gives when it is defeated (to the player who got the MVP reward)
ExpPer: I'm not sure bout this one, but I think it takes a certain percentage of the exp you earn from the kill and adds it to the MVP exp. Someone correct me if I'm wrong, please.
Now, these correspond to MVP drop rates. I'm not sure if the mode for these drops to work are 171 or 181; I haven't tested it. I think they have to be either 171 or 181 so the server will recognize them as MVPs:
MVP1id: The Item ID of the MVP drop goes here
MVP1per: The rate of being dropped goes here
Same counts for MVP2id & MVP2per and MVP3id & MVP3per.
mob_points.txt
(follows)
Client side
Graphics and license.txt
(follows)
XML
(follows)
Optional: accessories and particle effects
(follows)
monsters.xml
(follows)