Let me go ahead and describe a couple.
Den of Evil
This is a simple quest that starts with an interact, followed by a mob kill, then ends with an interact.
ID: 23 - unique ID of this quest, assigned automatically.
Name: The Den of Evil
StartType: 0 - starts with a whisper of the correct word or words
StartName: Akara - the name of the npc or object that has this quest
StartRegionID: 10012 - the region of the above object
AcceptText: cave - this is the text that when said to the npc grants the quest
Description: "Scouts have found a nearby [cave] filled with shadowy creatures and horrors from beyond the grave." - This is the text show to the player who is being offered the quest. Note that [cave] has to be the same as the AcceptText so when the user clicks the quest will be accepted.
SourceName: Akara;10012|Corpsefire;10025 - This npc or object starts each step. So for the first step the source always equals the quest giver. Because this quest has 3 steps, but the final step is a finish step so no source is needed. So in this quest we go from Akara to Corpsefire and back to Akara. Two sources, Akara and Corspefire.
SourceText: "The cave is located to the east southeast, near the edge of the valley. I am told an evil being named Corpsefire has taken up residence in the lower level somewhere. Kill him and put a stop to this evil.|" - here we need source text for each source. Text for each step is separated by | and in this case Corpsefire has no source text, but we must provide for it anyway, thus the | at the end of the string. This will be parsed as two entries. THe location of the cave followed by an empty string.
Step Type: 0|5 - These are the types of steps on this quest. 0 = Kill, 5 = InteractFinish This means our first task is to kill something and once that is done we need to go back to an npc or object and interact with it to finish the quest.
StepText: "Find the cave and kill Corpsefire.|Return to Akara for your reward." - This is the text shown in the quest log for each active step. Two steps, two strings seperated by |
StepItemTemplates: Not used here. This is the item template given to the player at the conclusion of a step.
AdvanceText: Not used for this quest. If the quest needed a whisper to advance the step it would go here.
TargetName: Corpsefire;10025|Akara;10012 - similar to sourcename this holds the target of each step in the format name;regionid. In this case we have to kill CorspeFire, that's target one, then return to Akara, that's target two.
TargetText: "|" - This is the text the target displays prior to advancing a step. If we had whisper steps then this might be something like: So you;re here to [kill] me? and kill would be the AdvanceText for this step. Must have text for each step so here we end up with two empty strings.
CollectItemTemplate: NULL - not used, this is the item that needs to be handed to someone to finish a step
MaxCount: 1 - players can only do this quest once.
MinLevel: 1 - players level 1 and above can do this quest
MaxLevel: 100 - any levle up to 100 can do this quest
RewardMoney: 0|0 - this is the money rewarded at the end of each step, and must include the final step. Here we give 0 money for killing Corpsefire and 0 for returning to Akara and finishing the quest. I have changed this so if no step rewards money you can leave this column null.
RewardXP: 0|0 - same as above, reward for each step including the final step.
OptionalRewardItemTemplates: NULL - this is not used, though I do use the field for one dataquest with a custom (scripted) quest step. I hope to support reward style quests at some point, but not yet.
FinalRewardItemTemplates: d2_xprp_stone - this is a list of items we give the player when the quest if finished. Here they get a nice Mythical item with a 25% bonus to XP and RP.
FinishText: "You have done it! You have my gratitude, please accept this for your efforts." - Text said when quest is completed
QuestDependency: NULL - not used here but this is a list of quest names (either scripted or another data quest) the user must have finished before being offered this quest.
ClassType: NULL - not used here but is the fully qualified name of a script that will be called prior to finishing each step.
AllowedClasses: NULL - not used here, this restricts the classes that can be offered this quest.
- Code: Select all
INSERT INTO `dataquest` (`ID`, `Name`, `StartType`, `StartName`, `StartRegionID`, `AcceptText`, `Description`, `SourceName`, `SourceText`, `StepType`, `StepText`, `StepItemTemplates`, `AdvanceText`, `TargetName`, `TargetText`, `CollectItemTemplate`, `MaxCount`, `MinLevel`, `MaxLevel`, `RewardMoney`, `RewardXP`, `OptionalRewardItemTemplates`, `FinalRewardItemTemplates`, `FinishText`, `QuestDependency`, `ClassType`, `AllowedClasses`) VALUES (23, 'The Den of Evil', 0, 'Akara', 10012, 'cave', 'Scouts have found a nearby [cave] filled with shadowy creatures and horrors from beyond the grave.', 'Akara;10012|Corpsefire;10025', 'The cave is located to the east southeast, near the edge of the valley. I am told an evil being named Corpsefire has taken up residence in the lower level somewhere. Kill him and put a stop to this evil.||', '0|5', 'Find the cave and kill Corpsefire.|Return to Akara for your reward.|', '', NULL, 'Corpsefire;10025|Akara;10012', '||', '||', 1, 1, 100, '0|0', '0|0', NULL, 'd2_xprp_stone', 'You have done it! You have my gratitude, please accept this for your efforts.', NULL, NULL, NULL);