Hi in this tutorial i will show you how to make custom profession npc for Fun servers only.
(because that you can have all different professions)
First you need the .sql for the npc that will learn this Professions.
I will take a npc that i made for a time ago.
Red = The flag for the profession npc.
Magenta = The Id of the npc
Blue = The id of the spell he will learn you. Get the spell ID from WoWhead.com
DarkOrange = How much the spell will cost to train in cooper.
Lime = If you have added "Blacksmithing Apprentice" and now you will have so you can learn "Rough Copper Vest" after you have train the "Apprentice" then add "Blacksmithing Apprentice" Spell Id on this field.
Purple = Add the number that you see in the picture below. (off course will this number change, it depends on what prof you will use. This one is for Blacksmithing)
Babyblue = In this field you will enter how much skill in the profession the player need to have. I use 0 because this is for a fun server so don't need to lvl your profession to learn the epic recipes.
Navyblue = What lvl the player needs to be for learning this recipe.
Yellow = If you have added the "Blacksmithing Journeyman" spell id and you want the "Blacksmithing Apprentice" spell to be deleted you just enter the "Blacksmithing Apprentice" spell id in this field.
Black = im not sure but if you will use this for an blizzlike server set "1" in this field for get this so you just can learn two professions. (Any one that knows this can tell me and i will update this one)
Code:
insert into `creature_names` (`entry`, `name`, `subname`, `info_str`, `Flags1`, `type`, `family`, `rank`, `unk4`, `spelldataid`, `male_displayid`, `female_displayid`, `male_displayid2`, `female_displayid2`, `unknown_float1`, `unknown_float2`, `civilian`, `leader`)
values ('910811', "Jake Anvilheart", "Blacksmithing Trainer", '', '0', '7', '0', '2', '0', '0', '24283', '0', '0', '0', '1', '1', '0', '0');
insert into `creature_proto` (`entry`, `minlevel`, `maxlevel`, `faction`, `minhealth`, `maxhealth`, `mana`, `scale`, `npcflags`, `attacktime`, `attacktype`, `mindamage`, `maxdamage`, `can_ranged`, `rangedattacktime`, `rangedmindamage`, `rangedmaxdamage`, `respawntime`, `armor`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `combat_reach`, `bounding_radius`, `auras`, `boss`, `money`, `invisibility_type`, `death_state`, `walk_speed`, `run_speed`, `fly_speed`, `extra_a9_flags`, `spell1`, `spell2`, `spell3`, `spell4`, `spell_flags`, `modImmunities`)
values ('910811', '80', '80', '7', '89000', '89000', '140000', '1', '81', '1500', '0', '70', '80', '0', '0', '0', '0', '5000', '6000', '0', '0', '0', '0', '0', '0', '0', '0', "0", '0', '0', '0', '0', '2.50', '8.00', '14.00', '0', '0', '0', '0', '0', '0', '0');
Now you will start to make all the things that this npc will learn you.
You can add this at top of the .sql script, it will make so you can Execute this file again and again, if you add some more recipes to the npc.
Code:
delete from trainer_spells where entry = '910811';
Now you will add this to in the same .sql file.
(You don't need this, but it will help you if you got any error in the script. this will remember what all fields stands for)
Code:
insert into `trainer_spells`(`entry`,`cast_spell`,`learn_spell`,`spellcost`,`reqspell`,`reqskill`,`reqskillvalue`,`reqlevel`,`deletespell`,`is_prof`)
And now add this too
Code:
values (910814,0,2018,610,0,164,0,10,0,0),
After you added some spells it will look like this.
Code:
(910814,0,16731,610,29844,164,300,10,0,0), (910814,0,16665,610,29844,164,300,10,0,0), (910814,0,16726,610,29844,164,300,10,0,0), (910814,0,16732,610,29844,164,300,10,0,0), (910814,0,16664,610,29844,164,300,10,0,0), (910814,0,16662,610,29844,164,300,10,0,0),
Hope it helps
//Svedin