Sunday, April 29, 2012

Guide - Quest Book

This is a guide on how to use the quest book.  Right off the bat, I want to explain that quests are EVENT controlled all this does is display the quests in the quest book.  That's a very important point as all quests are actually just a series of events put together to receive a prize at the end.  But the player doesn't need to know that what he wants to see is a spiffy display showing his current and completed quests.  With lots of hints about what to do next.  For that at least I have spent plenty of time building a reasonable interface.

Quests xml can be found in


to add xml files


First off though after saying all that above I thought it would by a nice idea to show how quests are listed as started and finished.  This is of course done through the event system with the quest command.

label = the label that is used by the quest book.
start = "true" -- show the quest under current quests
finish = "true" -- show the quest under completed quests

That was really tough right.  Now jumping right onto the quest lets talk about the top level tags.

Top Level Tags

label = "something" --- this is the label called by the event system to show the quest in the quest book
name = "Displayed Text" --- The text displayed in the quest book for the name.  See top image.
reward = "Displayed Text" --- The reward for completing the quest.  This is text only and is whatever you add.  Will not display items at this time.


Text Labels

These labels display the text for the start and the end of the quest.  You can have dozens of these if you want and they pull the text from TEXT  xmls.  So that way if you want to display an entire conversation from the text xmls you just keep adding textlabel with the label of the conversation in order.

textlabel = "text"  -- Always showed labels from the text xml
textlabelend = "text"  -- Only showed on completion labels from the text xmls



As the name imply hints guide the player to the next action they should take and then disappear upon successful action showing the next hint if you added on.  They are also pulled from the text xmls.  But use the evecheck system to decided if they should be displayed or not.  In the above example upon successfully going to the jewelry store the hint disappears.

hint label = "mainstreetvisitjewelryhint"  -- the text label to display for the hint can only be 1!       

You can have as many evechecks as you want.



Last up are statuses.  They  act as little check boxes when a part of a quest has been completed.  Giving feedback to the user and keeping a list of the remaining items to be completed.  They only read on the fly boolean variables and always only show if the boolean variable is set to true or false with a Y on N.

label    = "mainstvisitjewelry"     --- The boolean variable name from the one the fly system
name         = "Visit Jewlry Store" --- Displayed Text.


That is a lot of options to play with and works hand in hand with the event system to provide the player with the feedback they need.  Take advantage of it when making quests.


No comments:

Post a Comment