Page 1 of 1

Mutliple Quest Steps

Posted: Sat Aug 30, 2008 9:27 pm
by Scatman
I was trying to add 3 step locations to 1 quest step like this

Code: Select all

AddQuestStepLocation(Quest, 1, "I still need to get a size 7 clunker. Perhaps Ebik lost it while getting a better view of the bay.", 7, 2, -117, 20, "I need to find the three items that were lost on this island. I should keep an eye out while I explore the colony.")
AddQuestStepLocation(Quest, 1, "I still need to get a copper-coated springer. It's possible Ebik could have lost it over the side of the ship.", -143, -15, 161, 20, "I need to find the three items that were lost on this island. I should keep an eye out while I explore the colony.")
AddQuestStepLocation(Quest, 1, "I still need to get a triangle spinner. Maybe Ebik was trying to run from something and dropped it?", -79, 5, -154, 20, "I need to find the three items that were lost on this island. I should keep an eye out while I explore the colony.")
AddQuestStepCompleteAction(Quest, 1, "step1_complete_foundItems")
So it requires the player to go to three locations to complete the first step. Is this possible? Because I crash world when I put this in, however, when I comment those 4 lines out I am able to receive the quest.

Posted: Sat Aug 30, 2008 9:42 pm
by John Adams
When I set up my initial Dead Soldier quest, I did it this way - assuming they were each a different "step":

Code: Select all

	AddQuestStepLocation(Quest, 1, "Found a soldier!", 114, -4, 156, 10, "TaskGroupText")
	AddQuestStepLocation(Quest, 2, "Found a soldier!", 141, -3, 150, 10, "TaskGroupText")
	AddQuestStepLocation(Quest, 3, "Found a soldier!", 130, -4, 183, 10, "TaskGroupText")
Can't promise it's right, because like everything else I start, I get side-tracked and never finished testing it.

Posted: Sat Aug 30, 2008 9:46 pm
by Scatman
Hmm maybe I am getting confused to what a "step" actually is. But I don't want to do anything unless all 3 locations have been found so wouldn't they be considered the same step? Otherwise you could finish one step and move onto another function.

Posted: Sun Aug 31, 2008 6:25 am
by LethalEncounter
Each step is any of the check boxes in your quest journal (besides task group text). All the steps in a task group must be completed before the task group is completed. Let me guess, you want a GetTaskGroupStep now? :P

Posted: Sun Aug 31, 2008 8:01 am
by Scatman
Ahh okay I guess I can keep an internal counter then when each step gets completed, incremement the counter by 1 and when counter is 3 then all 3 locations have been found and it's time to move on to the next part of the quest.
A GetTaskGroupStep would be awesome :)
*EDIT*
I don't even know if that would work though, keeping an internal counter, because I highly doubt the script stays open the whole time the person is doing the quest and may or may not log off then back on to finish it. :P

Posted: Sun Aug 31, 2008 10:38 am
by LethalEncounter
I added GetTaskGroupStep(Player, quest_id) that returns the lowest task group number that is not completed.
I also added a function that I know you wanted for a while: UpdateQuestTaskGroupDescription(Quest, step, description, display_bullets)
display_bullets is optional and assumes false (bullets are not displayed, only the updated task group description is)
Example:
function step3_complete_talkToHayl(Quest, QuestGiver, Player)
UpdateQuestStepDescription(Quest, 3, "I have won my match against one of the sparring partners.")
UpdateQuestTaskGroupDescription(Quest, 1, "I have learned everything I can from Trainer Hayl McGuinness")

AddQuestStepChat(Quest, 4, "I should tell Murrar that my training was successful.", "I should return to Murrar Shar to show that I am ready for my next challenege.", 2530047)
AddQuestStepCompleteAction(Quest, 4, "step4_complete_talkToMurrar")
end
screenshots:
http://eq2emulator.net/ScreenShots/QuestSystem26.jpg
http://eq2emulator.net/ScreenShots/QuestSystem27.jpg

Posted: Sun Aug 31, 2008 10:42 am
by Scatman
Wow, perfect =) Thanks LE!