Kelintor's Quick Quest Tutorial
By: KelinTor, January 2013 (source post)
Here is the explanation I sent to Salan : look at my files so you understand better.
First create your quest giver, nothing fancy just need to be an NPC. Easy.
Make a new quest file (copy mine) give it a name, a unique guid (not necessary but it may serve for the layout).
I'll comment my file KEL_BEGINPATROL
[QUEST] <STRING>NAME:KEL_BEGINPATROL <TRANSLATE>DISPLAYNAME:The Patrol missions //Title of the quest <INTEGER>QUESTRANKMIN:0 <INTEGER>QUESTRANKMAX:2000 <INTEGER>DIALOGPRIORITY:50 <BOOL>REPEATABLE:false //To make your quest loopable <BOOL>CANABANDON:true //Can resign the quest <BOOL>SHOWQUESTCOMPLETE:true <INTEGER64>QUEST_GUID:-506202254521850735 [DUNGEONS_WHEN_COMPLETE] <STRING>DUNGEON:EstherianCity //This indicate on the map where to return when the quest is complete (the star map marker) [/DUNGEONS_WHEN_COMPLETE] [DUNGEONS_WHEN_NOT_COMPLETE] <STRING>DUNGEON:KelintorSteppes // This is where quest must be done (in this case kill the target monster there). It also place a map marker. [/DUNGEONS_WHEN_NOT_COMPLETE] [REWARD] <INTEGER>GOLDMINPCT:5000 // use graph for value, depend on your level <INTEGER>GOLDMAXPCT:5000 <INTEGER>XPMINPCT:1000 <INTEGER>XPMAXPCT:1000 <INTEGER>FAMEMINPCT:300 <INTEGER>FAMEMAXPCT:300 <STRING>TREASURECLASS:QUESTREWARD_SIDEQUEST //spawnclass for the reward [/REWARD] [REQUIREMENTS] [/REQUIREMENTS] [ACQUIRE] [/ACQUIRE] [DEFEAT] [UNIT] <STRING>DUNGEON:KelintorSteppes // unit must be killed in this dungeon <STRING>MONSTER:RatlinRogue // which unit to kill <INTEGER>MINCOUNT:30 //how many to kill <BOOL>CREATE:false //don't work, might need the layout <BOOL>DEFEAT_ON_INTERACT:false //dunno what it means, doesn't tested it, might kill the monster when interacted with [/UNIT] [/DEFEAT] [DEFEAT] [UNIT] <STRING>DUNGEON:KelintorSteppes <STRING>MONSTER:ratman_archer <INTEGER>MINCOUNT:20 <BOOL>CREATE:false <BOOL>DEFEAT_ON_INTERACT:false [/UNIT] [/DEFEAT] [DIALOG] [COMPLETE] <STRING>UNITNAME:KEL_NPCQUEST // IMPORTANT tell who will speak the following text, below is when the quest is completed <TRANSLATE>DIALOG:Good work, those Ratlin are less a nuisance for now. <STRING>DISPLAYMENU:QUESTDIALOG //show the dialog <BOOL>PAUSES:false [/COMPLETE] [RETURN] <STRING>UNITNAME:KEL_NPCQUEST <TRANSLATE>DIALOG:Did you finished your patrol already? // Text when the quest is not completed yet <STRING>DISPLAYMENU:QUESTDIALOG <BOOL>PAUSES:false [/RETURN] [DETAILS] //Below are the details on the quest panel <TRANSLATE>DIALOG:Patrol in the |cFFD1FF7AKelinTor Steppes|u and kill 30 |cFFD1FF7ARatlin Marauder|u and 20 |cFFD1FF7ARatlin Archer|u. Then return to |cFFD1FF7AKelinTor|u, in the |cFFD1FF7AEnclave|u.\nYou can access the KelinTor Steppes by using a portal map (Buy at kelinTor's Merchant). [/DETAILS] [INTRO] <STRING>UNITNAME:KEL_NPCQUEST // Below is the introduction <TRANSLATE>DIALOG:Greetings Hero! My name is KelinTor and I work for Commander Vale.\nWe're grateful for all your deeds but the war is not over! The Alchemist has pretty much decimated our expeditionary corps and the only few vaillant soldiers remaining struggles to defend the Estherians and our camps.\nCommander Vale want to hire you for patroling mission in various area. If you accept your first mission will be to go into |cFFD1FF7AKelinTor Steppes|u and kill |cFFD1FF7A30|u Ratlin Marauder and |cFFD1FF7A20|u Ratlin Archer. <STRING>DISPLAYMENU:QUESTDIALOG <BOOL>PAUSES:false [/INTRO] [HUDDETAILS] // Below are the details showed in the hud <TRANSLATE>DIALOG:- Kill 30 |cFFD1FF7ARatlin Marauder|u and 20 |cFFD1FF7ARatlin Archer|u in the |cFFD1FF7AKelinTor Steppes|u <TRANSLATE>DIALOG_COMPLETE:- Report to |cFFD1FF7AKelinTor|u in the |cFFD1FF7AEnclave|u [/HUDDETAILS] [/DIALOG] [/QUEST]
So to give a new quest you need to specify in the quest which npc will speak, it doesn't depend on the npc nor on a layout. As long as the requirement is fulfilled the npc will give the quest.