Difference between revisions of "Quest Documentation"

From Legends of Aria Admin and Modding Wiki
Jump to: navigation, search
(Files)
(Template)
Line 54: Line 54:
  
 
===Template===
 
===Template===
 +
Below is a list of object variables that are important and not just standard in a npc template.
 
====Object Variables====
 
====Object Variables====
 +
{| class="wikitable"
 +
|-
 +
! Object Variable !! Type !! Description
 +
|-
 +
| Quests_WindowStyle || string || support for custom quest window look
 +
|-
 +
| Dialogs_Intro || string || the string that appears in the initial window when you first talk to the npc.
 +
|}
 
====Initializer====
 
====Initializer====
 +
file: scripts/quest_giver_initializer.lua<br>
 +
{| class="wikitable"
 +
|-
 +
! Initializer Variable !! Description
 +
|-
 +
| QuestsToOffer || A string list of table names from the quest_information.lua file
 +
|-
 +
| Equipment || General npc equipment initialization.
 +
|}
  
 
==Quest Table==
 
==Quest Table==
 
==Quest Objectives==
 
==Quest Objectives==
 
==Quest Rewards==
 
==Quest Rewards==

Revision as of 13:22, 20 June 2018

back to Project Phoenix#Quests

Files

File Name Description
scripts/quest_giver.lua contains all the functioning for the quest giver and handling of player interaction
scripts/quest_giver_initializer.lua initialization of the xml template data for the quest giver
scripts/quest_helpers Core functions for the quest system
scripts/quest_information Quest table definitions
scripts/quest_npc_dialog_window Quest dynamic window and quest log dynamic window
scripts/globals/include_custom_quests Setup for quest table for global usage

Functions

CustomQuests.Helpers.<FunctionName>(Args)

Function Name Arguments Description
AddSlayTask template,amount,objvarneeded,killname Adds a slay task to the quest table
AddHarvestTask template,amount,objvarneeded,collectname Adds a harvest task to the quest table
AddCraftTask template,amount,resourceneeded,collectname Adds a craft quest to the quest table
AddTameTask template,amount,objvarneeded,collectname Adds a tame quest to the quest table
CanGetQuest player,questgiver,questname Checks to see if the player can get the quest
HasQuest player,questname Checks to see if the player has the quest
GiveQuest player,questname Give the player a quest and toss it in the quest log
RemoveQuest player,questname Remove a quest by name from the player
IsQuestComplete player,questname Checks if the quest tasks are completed or not
CheckQuestObjectives player,object Checks to see if the player completed a part of the objective
CheckDelay player,quest Checks to see if the player an pick the quest up again (daily,hourly) or what other interval

Quest Giver

The quest system has a few limitations as of now but can be fixed either by me later when I get around to it, or feel free to do it yourself in your own methods

  1. You can only display 3 quest choices on any NPC due to user interface size.
  2. All quests can be repeated, you are given a Delay value.

Template

Below is a list of object variables that are important and not just standard in a npc template.

Object Variables

Object Variable Type Description
Quests_WindowStyle string support for custom quest window look
Dialogs_Intro string the string that appears in the initial window when you first talk to the npc.

Initializer

file: scripts/quest_giver_initializer.lua

Initializer Variable Description
QuestsToOffer A string list of table names from the quest_information.lua file
Equipment General npc equipment initialization.

Quest Table

Quest Objectives

Quest Rewards