[Guide] Your Custom NPCs

View previous topic View next topic Go down

[Guide] Your Custom NPCs

Post  K4rm4l0ver on Fri Jan 16, 2009 12:21 pm

I'm sure you liked my title, huh? Every1 has seen at least one custom NPC at a nice server and you are saying << WTF, how they did it? AMAZING>> but i'm sure you never said that it's easy!!! I gonna explain you two things on this guide:

1) Creating a full ~!CUSTOM!~ NPC for your server (i gonna use multisell if you know, not jscript)
2) Customizing already existed NPCs!!!

Q: What we gonna need?
A: Nothing special, common pre installed programs

If you know a little html, some .xml and if you know db edit it's extremely easy. Anyway, even for a newbie the difficult is medium.

1st Step: Html

Ok, here we go. We need our NPC's text first of all. It isn't difficult, we just edit an already written html (that's the easiest way if you don't know html). At the end of the post, you can find one.
As i said, we gonna use multisell, so in the edit of the html, we should make a link to the multisell .xml
Go to the html which is already written
Edit the name (it should be a unique number, like 35412, it is gonna be our NPC's ID)
Press right klick, and select ~> Open with ~> text editor
Now our html look like this ~>
<html>
<head>
<body>
<tr><td><font color="FF0066">Tattoo Lynn:</font></tr></td>
<br>
<tr><td><font color="FFFFCC">Burp... Hey, you young man... Or are you a woman? Hiccup... You're strong... but... you've got to have smarts to get by. Long ago a stupid royal guard was being cocky but... he lost everything... He realized that the people he loved caused him to be alive... hiccup... but that was useless... Useless! Heh, heh, heh... UUURP!</font></tr></td>
<br>
<br>
<a action="bypass -h npc_%objectId%_multisell 10100">
<font color="FF9900">
Ask him about tattoos
</font></a>
<br>
<a action="bypass -h npc_%objectId%_TerritoryStatus">
<font color="FF9900">
See the Lord and Tax Rate Information
</font></a>
<br>
<a action="bypass -h npc_%objectId%_Quest">
<font color="FF6600">
Quest
</font></a>
</body>
</html>

You can edit all the text except the codes. You can see the code we mainly need ~> <a action="bypass -h npc_%objectId%_multisell 10100">
Nice, now edit the number <10100> and replace it with a unique number (and remember this number).
Save, and close the editor.

2nd Step: .xml Edit

Now we go to the already existed .xml (from the folder you downloaded before). It's inside multisell folder. Open it with the same way as before.
Now i gonna explain you the codes you need to know:

EXAMPLE ONLY

<?xml version='1.0' encoding='utf-8'?>

<!-- Tattoo Shop -->

<list>

<!-- [Tattoo Of Power Nongrade] for [D Crystalz] -->
<item id="1">
<ingredient id="1458" count="181" enchant="0"/>
<production id="485" count="1" enchant="0"/>
</item>

<!-- [Tattoo Of Fire D] for [D Crystalz] -->
<item id="2">
<ingredient id="1458" count="276" enchant="0"/>
<production id="486" count="1" enchant="0"/>
</item>

</list>

This is the code for... giving D crystals ( <ingredient id="1458" count="181" enchant="0"/>) and getting tattoo of Power ( <production id="485" count="1" enchant="0"/>). You can edit the values id="X" and count="X". Just find the id you want (example = adena id is 57) and the quantity (example = 10000000). You can add more than one ingredients.
Remember that = <item id="2"> means the order!!! If you add for example 5 trades, you have to set different ids (1-5: 1 = first 2=second etc.<<order that they gonna appear IG>>).

You can save your .xml and try it with Internet Explorer. If it's ok, we can go on (any error you get, just post your .xml / html code and your db add).

3rd Step: DB Add

This is the final step now. We have to add a line to our db. So, open your db ( http://localhost/a/ ) with phpmyadmin, select l2jdb and search for the npc table. Then klick on import. Now this is easy (or i think so )

ID = The html number you setted at the beginning
idTemplate = The id you want it to look like (for my example i selected anakim, which id is 25286)
name = The name you want
serverSideName = SET TO 1 (it should look like serverSideName = 1 )
title = The title for this NPC you want
serverSideTitle = SET TO 1 (it should look like serverSideTitle = 1 )
class = the class of the id you selected (anakim = Monster2.anakim )
collision_radius = 7.00
collision_height = 23.00
level = I suggest 70 (all Merchants are 70 lvl)
sex = female (as the id you selected anakim = female)
type = L2Merchant
attackrange = 40
hp = you choose (4000)
mp = you choose (3000)
hpreg = 40 (anyway, it doesn't matter for a trader ) (edit it for a mob)
mpreg = 43 (edit it for a mob)
str = 40 (edit it for a mob)
con = 40 (edit it for a mob)
dex = 35 (edit it for a mob)
int = 39 (edit it for a mob)
wit = 20 (edit it for a mob)
men = 40 (edit it for a mob)
exp = 6000 (edit it for a mob)
sp = 6000 (edit it for a mob)
patk = 500 (edit it for a mob)
pdef = 500 (edit it for a mob)
matk = 200 (edit it for a mob)
mdef = 500 (edit it for a mob)
atkspeed = 400 (edit it for a mob)
aggro = (don't touch it, leave it as it is) (edit it for a mob)
matkspd = 400 (edit it for a mob)
rhand = (don't touch it, leave it as it is) (you can edit it if you choose another template for your NPC)
lhand = (don't touch it, leave it as it is) (you can edit it if you choose another template for your NPC)
armor = (don't touch it, leave it as it is) (you can edit it if you choose another template for your NPC)
walkspd = (don't touch it, leave it as it is) (you can edit it if your NPC is a mob)
runspd = (don't touch it, leave it as it is) (you can edit it if your NPC is a mob)
faction_id = (don't touch it, leave it as it is) (you can edit it if your NPC is a mob)
faction_range = (don't touch it, leave it as it is) (you can edit it if your NPC is a mob)
isUndead = (don't touch it, leave it as it is) (you can edit it if your NPC is a mob)
absorb_level = (don't touch it, leave it as it is)

You can copy these stats from another mob/NPC

If you want to edit for example a guard, you simply change whatever you wish (or any other NPC). So if you want to customize your existing NPC, you choose any of these steps !!!BUT!!! If the char is in jscript, you can't edit it (step 2, all other steps can be edited) unless you know Java

I hope i helped a little. For any fix of my guide/help feel free to post (Just provide as many information as possible to prevent useless posts).

~LINKS~

http://img134.imageshack.us/my.php?image=shot00022hs4.jpg It works
4shared.com/file/8952080/9538ed7b Edit

_________________

avatar
K4rm4l0ver
Gold Member
Gold Member

Number of posts : 41
Registration date : 2009-01-16

View user profile http://l2xteamtop200.team-talk.net

Back to top Go down

View previous topic View next topic Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum